Add --enable-ubsan
[external/binutils.git] / gdb / ChangeLog
1 2018-10-03  Tom Tromey  <tom@tromey.com>
2
3         * README: Mention --enable-ubsan.
4         * NEWS: Mention --enable-ubsan.
5         * acinclude.m4: Include sanitize.m4.
6         * configure: Rebuild.
7         * configure.ac: Call AM_GDB_UBSAN.
8         * sanitize.m4: New file.
9
10 2018-10-03  Tom Tromey  <tom@tromey.com>
11
12         * expression.h (enum exp_opcode): Use uint8_t as base type.
13         * expprint.c (op_name): Handle invalid opcodes.
14
15 2018-10-03  Tom Tromey  <tom@tromey.com>
16
17         * parse.c (prefixify_expression): Add assert.
18         (parse_exp_in_context_1): Throw exception if the expression is
19         empty.
20
21 2018-10-03  Tom Tromey  <tom@tromey.com>
22
23         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
24
25 2018-10-03  Tom Tromey  <tom@tromey.com>
26
27         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
28
29 2018-10-03  Tom Tromey  <tom@tromey.com>
30
31         * dwarf2read.c (read_subrange_type): Make "negative_mask"
32         unsigned.
33
34 2018-10-03  Tom Tromey  <tom@tromey.com>
35
36         * findvar.c (extract_integer): Do work in an unsigned type.
37
38 2018-10-03  Tom Tromey  <tom@tromey.com>
39
40         * common/enum-flags.h (enum_flags::operator~): Add static assert.
41         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
42         base type.
43         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
44         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
45         type.
46         * c-lang.h (enum c_string_type_values): Use unsigned as base
47         type.
48         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
49
50 2018-10-03  Tom Tromey  <tom@tromey.com>
51
52         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
53         <~dwarf2_frame_state_reg_info>: Update.
54         <dwarf2_frame_state_reg_info>: Update.
55         <alloc_regs>: Add assertion.  Update.
56         <reg>: Now a std::vector.
57         <num_regs>: Remove.
58         <swap>: Update.
59         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
60         (execute_cfa_program_test, dwarf2_frame_cache): Update.
61
62 2018-10-03  Tom Tromey  <tom@tromey.com>
63
64         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
65
66 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
67
68         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
69
70 2018-10-02  Tom Tromey  <tom@tromey.com>
71
72         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
73
74 2018-10-02  John Darrington <john@darrington.wattle.id.au>
75
76         * NEWS: Mention changed commands.
77         * ser-uds.c: New file.
78         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
79         * configure: Regenerate.
80         * Makefile.in: Add new file.
81         * serial.c (serial_open): Check if filename is a socket
82           and lookup the appropriate interface accordingly.
83
84 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
85
86         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
87         define.
88         (AARCH64_EXTRA_MAGIC): Likewise.
89         (AARCH64_FPSIMD_MAGIC): Likewise.
90         (AARCH64_SVE_MAGIC): Likewise.
91         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
92         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
93         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
94         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
95         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
96         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
97         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
98         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
99         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
100         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
101         (read_aarch64_ctx): Add function.
102         (aarch64_linux_sigframe_init): Detect FP registers.
103
104 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
105
106         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
107         (AARCH64_D0_REGNUM): Likewise.
108         (AARCH64_S0_REGNUM): Likewise.
109         (AARCH64_H0_REGNUM): Likewise.
110         (AARCH64_B0_REGNUM): Likewise.
111         (AARCH64_SVE_V0_REGNUM): Likewise.
112         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
113         (AARCH64_D0_REGNUM): Likewise.
114         (AARCH64_S0_REGNUM): Likewise.
115         (AARCH64_H0_REGNUM): Likewise.
116         (AARCH64_B0_REGNUM): Likewise.
117         (AARCH64_SVE_V0_REGNUM): Likewise.
118
119 2018-10-01  Gary Benson <gbenson@redhat.com>
120
121         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
122         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
123         prfpregset_t instead of gdb_prfpregset_t.
124         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
125         * configure, config.in: Rebuild.
126
127 2018-10-01  Gary Benson <gbenson@redhat.com>
128
129         * common/gdb_proc_service.h: New file, factored out from...
130         * gdb_proc_service.h: Moved common code to the above file.
131         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
132
133 2018-10-01  Gary Benson <gbenson@redhat.com>
134
135         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
136         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
137
138 2018-10-01  Gary Benson <gbenson@redhat.com>
139
140         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
141         (AC_CHECK_HEADERS): Check for linux/elf.h.
142         * configure, config.in: Rebuild.
143         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
144         doesn't define elf_fpregset_t.
145
146 2018-10-01  Gary Benson <gbenson@redhat.com>
147
148         * gdb_proc_service.h: Whitespace change.
149
150 2018-10-01  Tom Tromey  <tom@tromey.com>
151
152         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
153         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
154         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
155
156 2018-10-01  Tom Tromey  <tom@tromey.com>
157
158         * README: Minor change.
159
160 2018-09-30  Pedro Alves  <palves@redhat.com>
161
162         * darwin-nat-info.c (darwin_debug_regions_recurse)
163         (info_mach_exceptions_command): Remove unused local variables.
164         * darwin-nat.c (darwin_decode_notify_message)
165         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
166         (darwin_stop_inferior, darwin_setup_exceptions)
167         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
168         (darwin_nat_target::attach, darwin_nat_target::detach)
169         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
170         local variables.
171         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
172         variables.
173
174 2018-09-29  Tom Tromey  <tom@tromey.com>
175
176         * README: Remove some leftover text.
177
178 2018-09-29  Tom Tromey  <tom@tromey.com>
179
180         * PROBLEMS: Rewrite.
181         * README: Update.
182
183 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
184
185         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
186         case with explicit breakpoint kind.
187         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
188         'additional_info' and related logic.
189         (riscv_debug_breakpoints): New variable.
190         (riscv_breakpoint_kind_from_pc): Use the length of the existing
191         instruction to determine the breakpoint kind.
192         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
193         flag.  Update description of 'set/show riscv
194         use-compressed-breakpoints' flag.
195
196 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
197
198         (NEWS): Mention changes to frame related commands.
199         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
200         (add_prefix_cmd_suppress_notification): New function.
201         (add_com_suppress_notification): Call
202         add_cmd_suppress_notification.
203         * command.h (add_cmd_suppress_notification): Declare.
204         (add_prefix_cmd_suppress_notification): Declare.
205         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
206         (parse_frame_specification): Moved from stack.c, with
207         simplification to handle a single argument.
208         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
209         switch to the selected frame.  Add a header comment.
210         * stack.c: Remove 'safe-ctype.h' include.
211         (find_frame_for_function): Add declaration.
212         (find_frame_for_address): New function.
213         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
214         (frame_selection_by_function_completer): New function.
215         (info_frame_command): Rename to...
216         (info_frame_command_core): ...this, and update parameter types.
217         (select_frame_command): Rename to...
218         (select_frame_command_core): ...this, and update parameter types.
219         (frame_command): Rename to...
220         (frame_command_core): ...this, and update parameter types.
221         (class frame_command_helper): New class to wrap implementations of
222         frame related sub-commands.
223         (frame_apply_cmd_list): New static global.
224         (frame_cmd_list): Make static.
225         (select_frame_cmd_list): New global for sub-commands.
226         (info_frame_cmd_list): New global for sub-commands.
227         (_initialize_stack): Register sub-commands for 'frame',
228         'select-frame', and 'info frame'.  Update 'frame apply' commands
229         to use frame_apply_cmd_list.  Move function local static
230         frame_apply_list to file static frame_apply_cmd_list for
231         consistency.
232         * stack.h (select_frame_command): Delete declarationn.
233         (select_frame_for_mi): Declare new function.
234
235 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
236
237         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
238         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
239         and NOP.
240
241 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
242
243         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
244
245 2018-09-26  Tom Tromey  <tom@tromey.com>
246
247         * valops.c (auto_abandon): Remove dead code.
248
249 2018-09-26  Tom Tromey  <tom@tromey.com>
250
251         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
252
253 2018-09-24  Tom Tromey  <tom@tromey.com>
254
255         * common/pathstuff.c (get_standard_cache_dir): Make
256         "xdg_cache_home" and "home" const.
257         * top.c (init_history): Make "tmpenv" const.
258         * main.c (get_init_files): Make "homedir" const.
259
260 2018-09-23  Tom Tromey  <tom@tromey.com>
261
262         PR python/18852:
263         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
264
265 2018-09-23  Tom Tromey  <tom@tromey.com>
266
267         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
268         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
269         * python/python-internal.h (gdbpy_handle_exception): Declare.
270         * python/py-utils.c (gdbpy_handle_exception): New function.
271
272 2018-09-23  Tom Tromey  <tom@tromey.com>
273
274         PR python/17284:
275         * python/py-type.c (typy_template_argument): Check for negative
276         argument number.
277
278 2018-09-23  Tom Tromey  <tom@tromey.com>
279
280         PR python/14062:
281         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
282
283 2018-09-23  Tom Tromey  <tom@tromey.com>
284
285         PR python/18170:
286         * python/py-value.c (valpy_int): Allow conversion from pointer
287         type.
288
289 2018-09-23  Tom Tromey  <tom@tromey.com>
290
291         PR python/20126:
292         * python/py-value.c (valpy_int): Respect type sign.
293
294 2018-09-23  Tom Tromey  <tom@tromey.com>
295
296         PR python/18352;
297         * python/py-value.c (valpy_float): Allow conversions from int or
298         char.
299         (valpy_int, valpy_long): Allow conversions from float.
300
301 2018-09-23  Tom Tromey  <tom@tromey.com>
302
303         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
304         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
305
306 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
307
308         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
309         __sighndlr.
310         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
311
312 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
313
314         * windows-nat.c (windows_nat_target::wait): Remove a spurious
315         target_terminal::ours().
316
317 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
318
319         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
320         of vl to ULONGEST.
321
322 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
323
324         * breakpoint.c (update_inserted_breakpoint_locations): Remove
325         redundant condition.
326
327 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
328
329         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
330
331         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
332         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
333         * sol-thread.c (ps_pdmodel): Don't guard definition.
334
335         * procfs.c: Fix formatting.
336
337         * procfs.c (sysset_t_alloc): Remove.
338         (create_procinfo): Use XNEW instead of sysset_t_alloc.
339         (procfs_debug_inferior): Likewise.
340         (procfs_set_exec_trap): Likewise.
341         (proc_set_traced_sysentry): Don't allocate argp dynamically.
342         (proc_set_traced_sysexit): Likewise.
343
344         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
345         (dead_procinfo): Likewise.
346         (proc_warn): Likewise.
347         (proc_error): Likewise.
348         (proc_get_LDT_entry): Likewise.
349         (do_attach): Likewise.
350         (procfs_target::pid_to_str): Likewise.
351         (iterate_over_mappings): Likewise.
352
353         * procfs.c (create_procinfo): Fix ARI warning.
354         (proc_get_status): Likewise.
355         (proc_stop_process): Likewise.
356         (proc_run_process): Likewise.
357         (proc_kill): Likewise.
358         (proc_get_LDT_entry): Likewise.
359         (procfs_find_LDT_entry): Likewise.
360         (proc_update_threads): Likewise.
361         (proc_iterate_over_threads): Likewise.
362         (do_attach): Likewise.
363         (procfs_xfer_memory): Likewise.
364         (invalidate_cache): Likewise.
365         (procfs_target::resume): Likewise.
366         (procfs_init_inferior): Likewise.
367         (procfs_set_exec_trap): Likewise.
368         (procfs_target::thread_alive): Likewise.
369         (procfs_target::pid_to_exec_file): Likewise.
370         (iterate_over_mappings): Likewise.
371         (procfs_target::make_corefile_notes): Likewise.
372         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
373
374         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
375         (procfs_find_LDT_entry): Likewise.
376         * sol-thread.c (ps_lgetLDT): Likewise.
377
378 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
379
380         PR tdep/17903
381         * procfs.c (procfs_target): Declare pid_to_exec_file.
382         (procfs_target::pid_to_exec_file): New.
383
384 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
385
386         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
387         renaming.
388         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
389         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
390
391 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
392
393         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
394         (supply_fpregset, fill_fpregset): Move ...
395         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
396         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
397         Remove references to ioctl-based procfs.
398         Include <sys/reg.h>.
399         Remove PR_MODEL_NATIVE guards.
400         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
401         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
402
403 2018-09-19  Xavier Roirand  <roirand@adacore.com>
404
405         PR gdb/20981:
406         * solib-darwin.c (darwin_get_dyld_bfd): New function.
407         (darwin_solib_get_all_image_info_addr_at_init): Update call.
408         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
409
410 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
411
412         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
413         (fbsd_print_sockaddr_in6): Likewise.
414
415 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
416             Chris January  <chris.january@arm.com>
417
418         * eval.c (skip_undetermined_arglist): Skip argument list helper.
419         (evaluate_subexp_standard): Return a dummy type when
420         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
421         OP_F77_UNDETERMINED_ARGLIST case.
422         * expression.h (enum noside): Update comment.
423
424 2018-09-19  George Vasick <george.vasick@oracle.com>
425
426         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
427
428 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
429             April Chin <april.chin@oracle.com>
430             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
431
432         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
433         uint_t lwpid_t.
434         (create_procinfo): Print pids in /proc without leading zeros.
435
436 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
437
438         * nios2-tdep.c (nios2_gcc_target_options): New.
439         (nios2_gdb_arch_init): Install new hook.
440
441 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
442
443         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
444         New file.
445         * update-gnulib.sh: Apply patch.
446         * configure: Re-generate.
447
448 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
449
450         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
451         description.  Make "info proc" command descriptions more
452         consistent.
453
454 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
455
456         * NEWS: Mention 'info proc files' command.
457
458 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
459
460         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
461         descriptors for IP_FILES and IP_ALL.
462
463 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
464
465         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
466         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
467         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
468         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
469         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
470         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
471         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
472         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
473         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
474         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
475         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
476         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
477         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
478         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
479         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
480         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
481         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
482         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
483         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
484         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
485         (struct fbsd_sockaddr_un): New types.
486         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
487         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
488         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
489         (fbsd_core_info_proc_files): New functions.
490         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
491         IP_ALL.
492         * fbsd-tdep.h (fbsd_info_proc_files_header)
493         (fbsd_info_proc_files_entry): New.
494
495 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
496
497         * defs.h (enum info_proc_what) [IP_FILES]: New value.
498         * infcmd.c (info_proc_cmd_files): New function.
499         (_initialize_infcmd): Register 'info proc files' command.
500
501 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
502
503         * gnulib/aclocal-m4-deps.mk: Re-generate.
504         * gnulib/aclocal.m4: Re-generate.
505         * gnulib/config.in: Re-generate.
506         * gnulib/configure: Re-generate.
507         * gnulib/import/Makefile.am: Re-generate.
508         * gnulib/import/Makefile.in: Re-generate.
509         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
510         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
511         * gnulib/import/arpa_inet.in.h: New file.
512         * gnulib/import/inet_ntop.c: New file.
513         * gnulib/import/m4/arpa_inet_h.m4: New file.
514         * gnulib/import/m4/inet_ntop.m4: New file.
515         * gnulib/import/m4/netinet_in_h.m4: New file.
516         * gnulib/import/m4/socklen.m4: New file.
517         * gnulib/import/m4/sockpfaf.m4: New file.
518         * gnulib/import/m4/stdalign.m4: New file.
519         * gnulib/import/m4/sys_uio_h.m4: New file.
520         * gnulib/import/netinet_in.in.h: New file.
521         * gnulib/import/stdalign.in.h: New file.
522         * gnulib/import/sys_socket.c: New file.
523         * gnulib/import/sys_socket.in.h: New file.
524         * gnulib/import/sys_uio.in.h: New file.
525         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
526         module.
527
528 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
529
530         * gnulib/aclocal-m4-deps.mk: New file.
531         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
532         deterministically.
533
534 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
535
536         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
537         KVE_PATH.
538
539 2018-09-18  Tom Tromey  <tom@tromey.com>
540
541         * compile/compile-object-load.c (struct
542         link_hash_table_cleanup_data): Add constructor and destructor.
543         Use DISABLE_COPY_AND_ASSIGN.
544         (~link_hash_table_cleanup_data): Rename from
545         link_hash_table_free.  Now a destructor.
546         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
547
548 2018-09-18  Tom Tromey  <tom@tromey.com>
549
550         * compile/compile-object-run.c (do_module_cleanup): Use delete.
551         * compile/compile-object-load.c (struct munmap_list): Move to
552         header file.
553         (munmap_list::add): Rename from munmap_list_add; rewrite.
554         (munmap_list::~munmap_list): Rename from munmap_list_free.
555         (munmap_listp_free_cleanup): Remove.
556         (compile_object_load): Update.
557         * compile/compile-object-load.h (struct munmap_list): Move from
558         compile-object-load.c.  Rewrite.
559
560 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
561
562         * aarch64-tdep.c (pass_in_v): Use register size.
563         (aarch64_extract_return_value): Likewise.
564         (aarch64_store_return_value): Likewise.
565
566 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
567
568         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
569         rlim_t.
570
571 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
572
573         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
574         Fix short help line.
575
576 2018-09-17  Tom Tromey  <tom@tromey.com>
577
578         PR python/20445:
579         * configure: Rebuild.
580         * configure.ac: Conditionally use -DNDEBUG for Python.
581
582 2018-09-17  Tom Tromey  <tom@tromey.com>
583
584         * configure: Rebuild.
585         * configure.ac: Use gmp as a library dependency when checking for
586         mpfr.
587
588 2018-09-17  Pedro Alves  <palves@redhat.com>
589
590         * python/py-inferior.c (find_inferior_object): Delete.
591
592 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
593
594         * compile/compile-cplus-types.c
595         (compile_cplus_instance::enter_scope): Don't use new_scope after
596         std::move.
597
598 2018-09-17  Tom Tromey  <tom@tromey.com>
599
600         * common/pathstuff.c (get_standard_cache_dir): Use
601         ~/Library/Caches on macOS.
602         * common/pathstuff.h (get_standard_cache_dir): Update comment.
603
604 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
605
606         PR python/23669
607         * breakpoint.c (commands_cmd_element): New.
608         (_initialize_breakpoint): Assign commands_cmd_element.
609         * breakpoint.h (commands_cmd_element): New.
610         * cli/cli-script.c (while_cmd_element, if_command,
611         define_cmd_element): New.
612         (command_name_equals): Remove.
613         (process_next_line): Compare commands by pointer, not by name.
614         (_initialize_cli_script): Assign the various cmd_list_element
615         variables.
616         * compile/compile.c (compile_cmd_element): New.
617         (_initialize_compile): Assign compile_cmd_element.
618         * compile/compile.h (compile_cmd_element): New.
619         * guile/guile.c (guile_cmd_element): New.
620         (install_gdb_commands): Assign guile_cmd_element.
621         * guile/guile.h (guile_cmd_element): New.
622         * python/python.c (python_cmd_element): New.
623         (_initialize_python): Assign python_cmd_element.
624         * python/python.h (python_cmd_element): New.
625         * tracepoint.c (while_stepping_cmd_element): New.
626         (_initialize_tracepoint): Assign while_stepping_cmd_element.
627         * tracepoint.h (while_stepping_cmd_element): New.
628
629 2018-09-17  Tom Tromey  <tom@tromey.com>
630
631         * infrun.c (save_infcall_suspend_state): Return
632         infcall_suspend_state_up.
633         (save_infcall_control_state): Return infcall_control_state_up.
634         * inferior.h (save_infcall_suspend_state)
635         (save_infcall_control_state): Declare later.  Return unique
636         pointers.
637
638 2018-09-17  Tom Tromey  <tom@tromey.com>
639
640         * infrun.c (struct stop_context): Declare constructor,
641         destructor, "changed" method.
642         (stop_context::stop_context): Rename from save_stop_context.
643         (stop_context::~stop_context): Rename from
644         release_stop_context_cleanup.
645         (normal_stop): Update.
646         (stop_context::changed): Rename from stop_context_changed.  Return
647         bool.
648
649 2018-09-17  Tom Tromey  <tom@tromey.com>
650
651         * inferior.h (struct infcall_suspend_state_deleter): New.
652         (infcall_suspend_state_up): New typedef.
653         (struct infcall_control_state_deleter): New.
654         (infcall_control_state_up): New typedef.
655         (make_cleanup_restore_infcall_suspend_state)
656         (make_cleanup_restore_infcall_control_state): Don't declare.
657         * infcall.c (call_function_by_hand_dummy): Update.
658         * infrun.c (do_restore_infcall_suspend_state_cleanup)
659         (make_cleanup_restore_infcall_suspend_state): Remove.
660         (do_restore_infcall_control_state_cleanup)
661         (make_cleanup_restore_infcall_control_state): Remove.
662
663 2018-09-17  Tom Tromey  <tom@tromey.com>
664
665         * gdbthread.h (struct thread_control_state): Add initializer.
666         (class thread_info) <control>: Remove initializer.
667         * inferior.h (struct inferior_control_state): Add initializer.
668         (class inferior) <control>: Remove initializer.
669         (exit_inferior_1): Update.
670         * infrun.c (struct infcall_control_state): Add constructors.
671         (save_infcall_control_state): Use new.
672         (restore_infcall_control_state, discard_infcall_control_state):
673         Use delete.
674
675 2018-09-17  Tom Tromey  <tom@tromey.com>
676
677         * infrun.c (struct infcall_suspend_state) <registers>: Now a
678         unique_ptr.
679         <siginfo_data>: Now a unique_xmalloc_ptr.
680         (save_infcall_suspend_state, restore_infcall_suspend_state)
681         (discard_infcall_suspend_state)
682         (get_infcall_suspend_state_regcache): Update.
683
684 2018-09-17  Tom Tromey  <tom@tromey.com>
685
686         * gdbthread.h (struct thread_suspend_state): Add initializers.
687         (class thread_info) <suspend>: Remove initializer.
688         * infrun.c (struct infcall_suspend_state): Add initializers.
689         (save_infcall_suspend_state): Use new.
690         (discard_infcall_suspend_state): Use delete.
691
692 2018-09-16  Tom Tromey  <tom@tromey.com>
693
694         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
695         Remove.
696         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
697         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
698         (py_varobj_iter_new): Likewise.
699         (py_varobj_get_iterator): Use gdbpy_ref.
700
701 2018-09-16  Tom Tromey  <tom@tromey.com>
702
703         * python/py-threadevent.c (py_get_event_thread): Simplify.
704         * python/py-inferior.c (infpy_thread_from_thread_handle):
705         Return immediately after calling thread_to_thread_object.  Use
706         Py_RETURN_NONE.
707         (thread_to_thread_object): Set the exception on a NULL return.
708
709 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
710
711         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
712
713 2018-09-16  Tom Tromey  <tom@tromey.com>
714
715         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
716         Remove.
717
718 2018-09-16  Tom Tromey  <tom@tromey.com>
719
720         * python/python-internal.h (thread_to_thread_object): Change
721         return type.
722         * python/py-inferior.c (thread_to_thread_object): Return a new
723         reference.
724         (infpy_thread_from_thread_handle): Update.
725         * python/py-infthread.c (gdbpy_selected_thread): Update.
726         * python/py-stopevent.c (create_stop_event_object): Update.
727         * python/py-threadevent.c (py_get_event_thread): Return a new
728         reference.
729         (py_get_event_thread): Update.
730         * python/py-event.h (py_get_event_thread): Change return type.
731         * python/py-continueevent.c (create_continue_event_object):
732         Update.
733
734 2018-09-16  Tom Tromey  <tom@tromey.com>
735
736         * python/py-progspace.c (pspy_get_objfiles): Update.
737         * python/python-internal.h (objfile_to_objfile_object): Change
738         return type.
739         * python/py-newobjfileevent.c (create_new_objfile_event_object):
740         Update.
741         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
742         Update.
743         * python/python.c (gdbpy_get_current_objfile): Update.
744         (gdbpy_objfiles): Update.
745         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
746         Update.
747         (objfile_to_objfile_object): Return a new reference.
748         * python/py-symtab.c (stpy_get_objfile): Update.
749         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
750         Update.
751
752 2018-09-16  Tom Tromey  <tom@tromey.com>
753
754         * python/py-inferior.c (infpy_get_progspace): Update.
755         * python/python-internal.h (pspace_to_pspace_object): Change
756         return type.
757         * python/py-newobjfileevent.c
758         (create_clear_objfiles_event_object): Update.
759         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
760         Update.
761         * python/python.c (gdbpy_get_current_progspace): Update.
762         (gdbpy_progspaces): Update.
763         * python/py-progspace.c (pspace_to_pspace_object): Return a new
764         reference.
765         * python/py-objfile.c (objfpy_get_progspace): Update.
766         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
767         Update.
768
769 2018-09-16  Tom Tromey  <tom@tromey.com>
770
771         * python/lib/gdb/__init__.py (current_progspace, objfiles)
772         (solib_name, block_for_pc, find_pc_line): New functions.
773         (execute_unwinders): Update.
774         * python/py-block.c (gdbpy_block_for_pc): Remove.
775         * python/py-inferior.c (infpy_get_progspace): New function.
776         (inferior_object_getset) <progspace>: Add.
777         * python/py-progspace.c (pspy_objfiles): Rewrite.
778         (pspy_solib_name, pspy_block_for_pc)
779         (pspy_find_pc_line, pspy_is_valid): New functions.
780         (progspace_object_methods): Add entries for solib_name,
781         block_for_pc, find_pc_line, is_valid.
782         * python/python-internal.h (gdbpy_block_for_pc)
783         (build_objfiles_list): Don't declare.
784         * python/python.c: Don't include solib.h.
785         (gdbpy_solib_name, gdbpy_find_pc_line)
786         (gdbpy_get_current_progspace, build_objfiles_list)
787         (gdbpy_objfiles): Remove.
788         (GdbMethods) <current_progspace, objfiles, block_for_pc,
789         solib_name, find_pc_line>: Remove entries.
790
791 2018-09-16  Tom Tromey  <tom@tromey.com>
792
793         * top.c (new_ui_command): Use GNU style for metasyntactic
794         variables.
795         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
796         variables.
797         * maint.c (maintenance_translate_address): Remove "<>" around
798         text.
799         * interps.c (interpreter_exec_cmd): Use GNU style for
800         metasyntactic variables.
801         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
802         metasyntactic variables.
803         * tracepoint.c (tfind_range_command): Use GNU style for
804         metasyntactic variables.
805         (tfind_outside_command): Likewise.
806         (_initialize_tracepoint): Likewise.
807         * remote.c (extended_remote_target::create_inferior): Use GNU
808         style for metasyntactic variables.
809         * sparc64-tdep.c (adi_examine_command): Use GNU style for
810         metasyntactic variables.
811         (adi_assign_command): Likewise.
812
813 2018-09-16  Tom Tromey  <tom@tromey.com>
814
815         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
816         metasyntactic variables.  Print message if no disassembler options
817         are available.
818
819 2018-09-15  Tom Tromey  <tom@tromey.com>
820
821         * infcmd.c (get_inferior_args): Return const char *.
822         * inferior.h (get_inferior_args): Return type now const.
823         * linux-tdep.c (linux_fill_prpsinfo): Update.
824         * procfs.c (procfs_target::make_corefile_notes): Update.
825
826 2018-09-07  Tom Tromey  <tom@tromey.com>
827
828         * python/python.c (execute_gdb_command): Call bpstat_do_actions
829         inside the TRY.
830
831 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
832
833         * nios2-tdep.c (nios2_type_align): New.
834         (nios2_gdb_arch_init): Install type_align hook.
835
836 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
837
838         * eval.c (fake_method::fake_method): Call xzalloc directly for a
839         type that is neither object file owned, nor gdbarch owned.
840         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
841         gdbarch is non-NULL.
842         (alloc_type_instance): Allocate non-objfile owned types on the
843         gdbarch obstack.
844         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
845         using TYPE_ALLOC to ensure memory is allocated on the correct
846         obstack.
847         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
848         obstack, or the gdbarch obstack.
849         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
850
851 2018-09-14  Tom Tromey  <tom@tromey.com>
852
853         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
854         block.
855
856 2018-09-14  Tom Tromey  <tom@tromey.com>
857
858         * nat/fork-inferior.c (get_startup_shell): Remove "static".
859
860 2018-09-13  Tom Tromey  <tom@tromey.com>
861
862         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
863         static.
864
865 2018-09-13  Tom Tromey  <tom@tromey.com>
866
867         * exec.c (try_open_exec_file): Use std::string.
868
869 2018-09-13  Tom Tromey  <tom@tromey.com>
870
871         * utils.h (gdb_bfd_errmsg): Return std::string.
872         * exec.c (exec_file_attach): Update.
873         * compile/compile-object-load.c (compile_object_load): Update.
874         * utils.c (gdb_bfd_errmsg): Return std::string.
875
876 2018-09-13  Tom Tromey  <tom@tromey.com>
877
878         * procfs.c (struct procinfo_deleter): New.
879         (procinfo_up): New typedef.
880         (do_destroy_procinfo_cleanup): Remove.
881         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
882
883 2018-09-13  Tom Tromey  <tom@tromey.com>
884
885         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
886
887 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
888 2018-09-13  Tom Tromey  <tom@tromey.com>
889
890         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
891         (pspy_get_objfiles): New function.
892         (progspace_object_methods): New.
893         (pspace_object_type): Add tp_methods callback.
894         * python/python-internal.h (build_objfiles_list): New
895         declaration.
896         * python/python.c (build_objfiles_list): New function.
897         (gdbpy_objfiles): Implement using build_objfiles_list.
898         * NEWS: Mention the Progspace.objfiles method.
899
900 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
901
902         * python/py-inferior.c (infpy_get_progspace): New function.
903         (inferior_object_getset): Add progspace property.
904         * NEWS: Mention the new property.
905
906 2018-09-13  Tom Tromey  <tom@tromey.com>
907
908         PR rust/23650:
909         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
910
911 2018-09-13  Tom Tromey  <tom@tromey.com>
912
913         PR rust/23626:
914         * rust-lang.c (rust_enum_variant): Now static.
915         (rust_empty_enum_p): New function.
916         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
917         Handle empty enum.
918
919 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
920
921         * python/py-inferior.c (infpy_repr): New.
922         (inferior_object_type): Register infpy_repr.
923         * python/py-objfile.c (objfpy_repr): New.
924         (objfile_object_type): Register objfpy_repr.
925
926 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
927
928         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
929
930 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
931
932         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
933         typo.
934
935 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
936
937         * common/common-utils.c: Don't include '<sys/stat.h>'.
938         (is_regular_file): Move to...
939         * common/filestuff.c (is_regular_file): ... here.
940         * common/common-utils.h (is_regular_file): Move to...
941         * common/filestuff.h (is_regular_file): ... here.
942
943 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
944
945         * skip.c (debug_skip): New variable.
946         (skiplist_entry::do_skip_file_p): Add debug output.
947         (skiplist_entry::do_skip_gfile_p): Likewise.
948         (skiplist_entry::skip_function_p): Likewise.
949         (_initialize_step_skip): Create debug command.
950         * NEWS: Mention set/show debug skip.
951
952 2018-09-11  Xavier Roirand  <roirand@adacore.com>
953
954         * darwin-nat.c (should_disable_startup_with_shell):
955         New function.
956         (darwin_nat_target::create_inferior): Add call.
957
958 2018-09-11  Xavier Roirand  <roirand@adacore.com>
959
960         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
961         inf_port, msg_state>: Initialize.
962         (struct darwin_thread_info) <signaled, single_step>: Change
963         type and initialize.
964         (struct darwin_thread_info) <event>: Initialize.
965
966 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
967
968         PR gdb/23555
969         PR gdb/23558
970         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
971         guesses.
972
973 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
974
975         Revert:
976         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
977
978         PR gdb/23555
979         PR gdb/23558
980         * gnulib/aclocal.m4: Regenerate.
981         * gnulib/config.in: Regenerate.
982         * gnulib/configure: Regenerate.
983         * gnulib/import/Makefile.am: Update.
984         * gnulib/import/Makefile.in: Update.
985         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
986         * gnulib/import/_Noreturn.h: ... this.
987         * gnulib/import/alloca.in.h: Update.
988         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
989         * gnulib/import/arg-nonnull.h: ... this.
990         * gnulib/import/assure.h: Update.
991         * gnulib/import/at-func.c: Update.
992         * gnulib/import/basename-lgpl.c: Update.
993         * gnulib/import/extra/snippet/c++defs.h: Rename to...
994         * gnulib/import/c++defs.h: ... this.
995         * gnulib/import/canonicalize-lgpl.c: Update.
996         * gnulib/import/cdefs.h: Update.
997         * gnulib/import/chdir-long.c: Update.
998         * gnulib/import/chdir-long.h: Update.
999         * gnulib/import/cloexec.c: Update.
1000         * gnulib/import/cloexec.h: Update.
1001         * gnulib/import/close.c: Update.
1002         * gnulib/import/closedir.c: Update.
1003         * gnulib/import/config.charset: Update.
1004         * gnulib/import/dirent-private.h: Update.
1005         * gnulib/import/dirent.in.h: Update.
1006         * gnulib/import/dirfd.c: Update.
1007         * gnulib/import/dirname-lgpl.c: Update.
1008         * gnulib/import/dirname.h: Update.
1009         * gnulib/import/dosname.h: Update.
1010         * gnulib/import/dup-safer-flag.c: Update.
1011         * gnulib/import/dup-safer.c: Update.
1012         * gnulib/import/dup.c: Update.
1013         * gnulib/import/dup2.c: Update.
1014         * gnulib/import/errno.in.h: Update.
1015         * gnulib/import/error.c: Update.
1016         * gnulib/import/error.h: Update.
1017         * gnulib/import/exitfail.c: Update.
1018         * gnulib/import/exitfail.h: Update.
1019         * gnulib/import/extra/update-copyright: Update.
1020         * gnulib/import/fchdir.c: Update.
1021         * gnulib/import/fcntl.c: Update.
1022         * gnulib/import/fcntl.in.h: Update.
1023         * gnulib/import/fd-hook.c: Update.
1024         * gnulib/import/fd-hook.h: Update.
1025         * gnulib/import/fd-safer-flag.c: Update.
1026         * gnulib/import/fd-safer.c: Update.
1027         * gnulib/import/fdopendir.c: Update.
1028         * gnulib/import/filename.h: Update.
1029         * gnulib/import/filenamecat-lgpl.c: Update.
1030         * gnulib/import/filenamecat.h: Update.
1031         * gnulib/import/flexmember.h: Update.
1032         * gnulib/import/float+.h: Update.
1033         * gnulib/import/float.c: Update.
1034         * gnulib/import/float.in.h: Update.
1035         * gnulib/import/fnmatch.c: Update.
1036         * gnulib/import/fnmatch.in.h: Update.
1037         * gnulib/import/fnmatch_loop.c: Update.
1038         * gnulib/import/fpucw.h: Update.
1039         * gnulib/import/frexp.c: Update.
1040         * gnulib/import/frexpl.c: Update.
1041         * gnulib/import/fstat.c: Update.
1042         * gnulib/import/fstatat.c: Update.
1043         * gnulib/import/getcwd-lgpl.c: Update.
1044         * gnulib/import/getcwd.c: Update.
1045         * gnulib/import/getdtablesize.c: Update.
1046         * gnulib/import/getlogin_r.c: Update.
1047         * gnulib/import/getprogname.c: Update.
1048         * gnulib/import/getprogname.h: Update.
1049         * gnulib/import/gettext.h: Update.
1050         * gnulib/import/gettimeofday.c: Update.
1051         * gnulib/import/glob-libc.h: Update.
1052         * gnulib/import/glob.c: Update.
1053         * gnulib/import/glob.in.h: Update.
1054         * gnulib/import/glob_internal.h: Update.
1055         * gnulib/import/glob_pattern_p.c: Update.
1056         * gnulib/import/globfree.c: Update.
1057         * gnulib/import/hard-locale.c: Update.
1058         * gnulib/import/hard-locale.h: Update.
1059         * gnulib/import/intprops.h: Update.
1060         * gnulib/import/inttypes.in.h: Update.
1061         * gnulib/import/isnan.c: Update.
1062         * gnulib/import/isnand-nolibm.h: Update.
1063         * gnulib/import/isnand.c: Update.
1064         * gnulib/import/isnanl-nolibm.h: Update.
1065         * gnulib/import/isnanl.c: Update.
1066         * gnulib/import/itold.c: Update.
1067         * gnulib/import/libc-config.h: Update.
1068         * gnulib/import/limits.in.h: Update.
1069         * gnulib/import/localcharset.c: Update.
1070         * gnulib/import/localcharset.h: Update.
1071         * gnulib/import/localtime-buffer.c: Update.
1072         * gnulib/import/localtime-buffer.h: Update.
1073         * gnulib/import/lstat.c: Update.
1074         * gnulib/import/m4/00gnulib.m4: Update.
1075         * gnulib/import/m4/__inline.m4: Update.
1076         * gnulib/import/m4/absolute-header.m4: Update.
1077         * gnulib/import/m4/alloca.m4: Update.
1078         * gnulib/import/m4/builtin-expect.m4: Update.
1079         * gnulib/import/m4/canonicalize.m4: Update.
1080         * gnulib/import/m4/chdir-long.m4: Update.
1081         * gnulib/import/m4/close.m4: Update.
1082         * gnulib/import/m4/closedir.m4: Update.
1083         * gnulib/import/m4/configmake.m4: Update.
1084         * gnulib/import/m4/d-ino.m4: Update.
1085         * gnulib/import/m4/d-type.m4: Update.
1086         * gnulib/import/m4/dirent_h.m4: Update.
1087         * gnulib/import/m4/dirfd.m4: Update.
1088         * gnulib/import/m4/dirname.m4: Update.
1089         * gnulib/import/m4/double-slash-root.m4: Update.
1090         * gnulib/import/m4/dup.m4: Update.
1091         * gnulib/import/m4/dup2.m4: Update.
1092         * gnulib/import/m4/eealloc.m4: Update.
1093         * gnulib/import/m4/environ.m4: Update.
1094         * gnulib/import/m4/errno_h.m4: Update.
1095         * gnulib/import/m4/error.m4: Update.
1096         * gnulib/import/m4/exponentd.m4: Update.
1097         * gnulib/import/m4/exponentl.m4: Update.
1098         * gnulib/import/m4/extensions.m4: Update.
1099         * gnulib/import/m4/extern-inline.m4: Update.
1100         * gnulib/import/m4/fchdir.m4: Update.
1101         * gnulib/import/m4/fcntl-o.m4: Update.
1102         * gnulib/import/m4/fcntl.m4: Update.
1103         * gnulib/import/m4/fcntl_h.m4: Update.
1104         * gnulib/import/m4/fdopendir.m4: Update.
1105         * gnulib/import/m4/filenamecat.m4: Update.
1106         * gnulib/import/m4/flexmember.m4: Update.
1107         * gnulib/import/m4/float_h.m4: Update.
1108         * gnulib/import/m4/fnmatch.m4: Update.
1109         * gnulib/import/m4/fnmatch_h.m4: Update.
1110         * gnulib/import/m4/fpieee.m4: Update.
1111         * gnulib/import/m4/frexp.m4: Update.
1112         * gnulib/import/m4/frexpl.m4: Update.
1113         * gnulib/import/m4/fstat.m4: Update.
1114         * gnulib/import/m4/fstatat.m4: Update.
1115         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1116         * gnulib/import/m4/getcwd-path-max.m4: Update.
1117         * gnulib/import/m4/getcwd.m4: Update.
1118         * gnulib/import/m4/getdtablesize.m4: Update.
1119         * gnulib/import/m4/getlogin.m4: Update.
1120         * gnulib/import/m4/getlogin_r.m4: Update.
1121         * gnulib/import/m4/getpagesize.m4: Update.
1122         * gnulib/import/m4/getprogname.m4: Update.
1123         * gnulib/import/m4/gettimeofday.m4: Update.
1124         * gnulib/import/m4/glibc21.m4: Update.
1125         * gnulib/import/m4/glob.m4: Update.
1126         * gnulib/import/m4/glob_h.m4: Update.
1127         * gnulib/import/m4/gnulib-cache.m4: Update.
1128         * gnulib/import/m4/gnulib-common.m4: Update.
1129         * gnulib/import/m4/gnulib-comp.m4: Update.
1130         * gnulib/import/m4/gnulib-tool.m4: Update.
1131         * gnulib/import/m4/hard-locale.m4: Update.
1132         * gnulib/import/m4/include_next.m4: Update.
1133         * gnulib/import/m4/inttypes-pri.m4: Update.
1134         * gnulib/import/m4/inttypes.m4: Update.
1135         * gnulib/import/m4/isnand.m4: Update.
1136         * gnulib/import/m4/isnanl.m4: Update.
1137         * gnulib/import/m4/largefile.m4: Update.
1138         * gnulib/import/m4/limits-h.m4: Update.
1139         * gnulib/import/m4/localcharset.m4: Update.
1140         * gnulib/import/m4/locale-fr.m4: Update.
1141         * gnulib/import/m4/locale-ja.m4: Update.
1142         * gnulib/import/m4/locale-zh.m4: Update.
1143         * gnulib/import/m4/localtime-buffer.m4: Update.
1144         * gnulib/import/m4/longlong.m4: Update.
1145         * gnulib/import/m4/lstat.m4: Update.
1146         * gnulib/import/m4/malloc.m4: Update.
1147         * gnulib/import/m4/malloca.m4: Update.
1148         * gnulib/import/m4/math_h.m4: Update.
1149         * gnulib/import/m4/mbrtowc.m4: Update.
1150         * gnulib/import/m4/mbsinit.m4: Update.
1151         * gnulib/import/m4/mbsrtowcs.m4: Update.
1152         * gnulib/import/m4/mbstate_t.m4: Update.
1153         * gnulib/import/m4/memchr.m4: Update.
1154         * gnulib/import/m4/memmem.m4: Update.
1155         * gnulib/import/m4/mempcpy.m4: Update.
1156         * gnulib/import/m4/memrchr.m4: Update.
1157         * gnulib/import/m4/mkdir.m4: Update.
1158         * gnulib/import/m4/mkstemp.m4: Update.
1159         * gnulib/import/m4/mmap-anon.m4: Update.
1160         * gnulib/import/m4/mode_t.m4: Update.
1161         * gnulib/import/m4/msvc-inval.m4: Update.
1162         * gnulib/import/m4/msvc-nothrow.m4: Update.
1163         * gnulib/import/m4/multiarch.m4: Update.
1164         * gnulib/import/m4/nocrash.m4: Update.
1165         * gnulib/import/m4/off_t.m4: Update.
1166         * gnulib/import/m4/onceonly.m4: Update.
1167         * gnulib/import/m4/open-cloexec.m4: Update.
1168         * gnulib/import/m4/open.m4: Update.
1169         * gnulib/import/m4/openat.m4: Update.
1170         * gnulib/import/m4/opendir.m4: Update.
1171         * gnulib/import/m4/pathmax.m4: Update.
1172         * gnulib/import/m4/rawmemchr.m4: Update.
1173         * gnulib/import/m4/readdir.m4: Update.
1174         * gnulib/import/m4/readlink.m4: Update.
1175         * gnulib/import/m4/realloc.m4: Update.
1176         * gnulib/import/m4/rename.m4: Update.
1177         * gnulib/import/m4/rewinddir.m4: Update.
1178         * gnulib/import/m4/rmdir.m4: Update.
1179         * gnulib/import/m4/save-cwd.m4: Update.
1180         * gnulib/import/m4/secure_getenv.m4: Update.
1181         * gnulib/import/m4/setenv.m4: Update.
1182         * gnulib/import/m4/signal_h.m4: Update.
1183         * gnulib/import/m4/ssize_t.m4: Update.
1184         * gnulib/import/m4/stat-time.m4: Update.
1185         * gnulib/import/m4/stat.m4: Update.
1186         * gnulib/import/m4/std-gnu11.m4: Update.
1187         * gnulib/import/m4/stdbool.m4: Update.
1188         * gnulib/import/m4/stddef_h.m4: Update.
1189         * gnulib/import/m4/stdint.m4: Update.
1190         * gnulib/import/m4/stdio_h.m4: Update.
1191         * gnulib/import/m4/stdlib_h.m4: Update.
1192         * gnulib/import/m4/strchrnul.m4: Update.
1193         * gnulib/import/m4/strdup.m4: Update.
1194         * gnulib/import/m4/strerror.m4: Update.
1195         * gnulib/import/m4/string_h.m4: Update.
1196         * gnulib/import/m4/strstr.m4: Update.
1197         * gnulib/import/m4/strtok_r.m4: Update.
1198         * gnulib/import/m4/sys_socket_h.m4: Update.
1199         * gnulib/import/m4/sys_stat_h.m4: Update.
1200         * gnulib/import/m4/sys_time_h.m4: Update.
1201         * gnulib/import/m4/sys_types_h.m4: Update.
1202         * gnulib/import/m4/tempname.m4: Update.
1203         * gnulib/import/m4/time_h.m4: Update.
1204         * gnulib/import/m4/unistd-safer.m4: Update.
1205         * gnulib/import/m4/unistd_h.m4: Update.
1206         * gnulib/import/m4/warn-on-use.m4: Update.
1207         * gnulib/import/m4/wchar_h.m4: Update.
1208         * gnulib/import/m4/wchar_t.m4: Update.
1209         * gnulib/import/m4/wctype_h.m4: Update.
1210         * gnulib/import/m4/wint_t.m4: Update.
1211         * gnulib/import/malloc.c: Update.
1212         * gnulib/import/malloc/scratch_buffer.h: Update.
1213         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1214         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1215         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1216         * gnulib/import/malloca.c: Update.
1217         * gnulib/import/malloca.h: Update.
1218         * gnulib/import/malloca.valgrind: Update.
1219         * gnulib/import/math.in.h: Update.
1220         * gnulib/import/mbrtowc.c: Update.
1221         * gnulib/import/mbsinit.c: Update.
1222         * gnulib/import/mbsrtowcs-impl.h: Update.
1223         * gnulib/import/mbsrtowcs-state.c: Update.
1224         * gnulib/import/mbsrtowcs.c: Update.
1225         * gnulib/import/memchr.c: Update.
1226         * gnulib/import/memmem.c: Update.
1227         * gnulib/import/mempcpy.c: Update.
1228         * gnulib/import/memrchr.c: Update.
1229         * gnulib/import/mkdir.c: Update.
1230         * gnulib/import/mkstemp.c: Update.
1231         * gnulib/import/msvc-inval.c: Update.
1232         * gnulib/import/msvc-inval.h: Update.
1233         * gnulib/import/msvc-nothrow.c: Update.
1234         * gnulib/import/msvc-nothrow.h: Update.
1235         * gnulib/import/open.c: Update.
1236         * gnulib/import/openat-die.c: Update.
1237         * gnulib/import/openat-priv.h: Update.
1238         * gnulib/import/openat-proc.c: Update.
1239         * gnulib/import/openat.c: Update.
1240         * gnulib/import/openat.h: Update.
1241         * gnulib/import/opendir.c: Update.
1242         * gnulib/import/pathmax.h: Update.
1243         * gnulib/import/pipe-safer.c: Update.
1244         * gnulib/import/rawmemchr.c: Update.
1245         * gnulib/import/readdir.c: Update.
1246         * gnulib/import/readlink.c: Update.
1247         * gnulib/import/realloc.c: Update.
1248         * gnulib/import/ref-add.sin: Update.
1249         * gnulib/import/ref-del.sin: Update.
1250         * gnulib/import/rename.c: Update.
1251         * gnulib/import/rewinddir.c: Update.
1252         * gnulib/import/rmdir.c: Update.
1253         * gnulib/import/same-inode.h: Update.
1254         * gnulib/import/save-cwd.c: Update.
1255         * gnulib/import/save-cwd.h: Update.
1256         * gnulib/import/scratch_buffer.h: Update.
1257         * gnulib/import/secure_getenv.c: Update.
1258         * gnulib/import/setenv.c: Update.
1259         * gnulib/import/signal.in.h: Update.
1260         * gnulib/import/stat-time.c: Update.
1261         * gnulib/import/stat-time.h: Update.
1262         * gnulib/import/stat-w32.c: Update.
1263         * gnulib/import/stat-w32.h: Update.
1264         * gnulib/import/stat.c: Update.
1265         * gnulib/import/stdbool.in.h: Update.
1266         * gnulib/import/stddef.in.h: Update.
1267         * gnulib/import/stdint.in.h: Update.
1268         * gnulib/import/stdio.in.h: Update.
1269         * gnulib/import/stdlib.in.h: Update.
1270         * gnulib/import/str-two-way.h: Update.
1271         * gnulib/import/strchrnul.c: Update.
1272         * gnulib/import/strdup.c: Update.
1273         * gnulib/import/streq.h: Update.
1274         * gnulib/import/strerror-override.c: Update.
1275         * gnulib/import/strerror-override.h: Update.
1276         * gnulib/import/strerror.c: Update.
1277         * gnulib/import/string.in.h: Update.
1278         * gnulib/import/stripslash.c: Update.
1279         * gnulib/import/strnlen1.c: Update.
1280         * gnulib/import/strnlen1.h: Update.
1281         * gnulib/import/strstr.c: Update.
1282         * gnulib/import/strtok_r.c: Update.
1283         * gnulib/import/sys_stat.in.h: Update.
1284         * gnulib/import/sys_time.in.h: Update.
1285         * gnulib/import/sys_types.in.h: Update.
1286         * gnulib/import/tempname.c: Update.
1287         * gnulib/import/tempname.h: Update.
1288         * gnulib/import/time.in.h: Update.
1289         * gnulib/import/unistd--.h: Update.
1290         * gnulib/import/unistd-safer.h: Update.
1291         * gnulib/import/unistd.in.h: Update.
1292         * gnulib/import/unsetenv.c: Update.
1293         * gnulib/import/verify.h: Update.
1294         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1295         * gnulib/import/wchar.in.h: Update.
1296         * gnulib/import/wctype.in.h: Update.
1297         * gnulib/import/xalloc-oversized.h: Update.
1298         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1299         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1300
1301 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1302
1303         * record-btrace.c (get_thread_current_frame): Remove
1304         old_inferior_ptid.
1305
1306 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1307
1308         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1309         with check_tag to 1 if and only if the type is tagged and the
1310         component being searched cannot been found in the current
1311         view. Otherwise, always call ada_to_fixed_type with
1312         check_tag to 0.
1313
1314 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1315
1316         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1317         declaration.
1318         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1319         * ada-varobj.c (ada_varobj_get_number_of_children,
1320         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1321
1322 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1323
1324         * ada-valprint.c (ada_value_print): Use type instead of
1325         enclosing type.
1326
1327 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1328
1329         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1330         an array of access to unconstrained array.
1331
1332 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1333
1334         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1335         (ada_check_typedef): Use it.
1336
1337 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1338
1339         * ada-varobj.c (ada_varobj_describe_struct_child)
1340         (ada_varobj_describe_child): Handle union case like struct one.
1341
1342 2018-09-10  Tom Tromey  <tom@tromey.com>
1343
1344         PR python/18380:
1345         * python/python.c (_initialize_python): Make example in "python"
1346         help work in Python 3.
1347
1348 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1349
1350         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1351         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1352         $(EXEEXT) to the script, as it is not a program.
1353
1354 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1355
1356         * python/py-prettyprint.c (pretty_print_one_value): Return
1357         gdbpy_ref<>.
1358         (print_string_repr): Adjust.
1359         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1360         * python/python-internal.h (apply_varobj_pretty_printer): Return
1361         gdbpy_ref<>.
1362         * varobj.c (varobj_value_get_print_value): Adjust.
1363
1364 2018-09-08  Tom Tromey  <tom@tromey.com>
1365
1366         PR python/16047:
1367         * python/py-prettyprint.c (pretty_print_one_value): Check for
1368         to_string method.
1369
1370 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1371
1372         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1373         replace_operator_with_call.
1374
1375 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1376
1377         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1378
1379 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1380
1381         * ada-typeprint.c (print_range): Print the bounds using TYPE
1382         rather than its TYPE_TARGET_TYPE.
1383
1384 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1385
1386         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1387         call to ada_to_fixed_value_create.
1388
1389 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1390
1391         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1392
1393 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1394
1395         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1396         by calls to error.
1397
1398 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1399
1400         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1401         Move update of loop variable "fi".
1402
1403 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1404
1405         * ada-lang.c (value_assign_to_component): In the case of
1406         big-endian targets, extract the bits of the given VAL
1407         using an src_offset of zero if container is not a scalar.
1408
1409 2018-09-06  Simon Ser  <contact@emersion.fr>
1410
1411         PR gdb/23105
1412         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1413         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1414         * fbsd-tdep.c (fbsd_make_note_desc): New.
1415         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1416         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1417         * target.h (enum target_object) Add FreeBSD-specific
1418         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1419
1420 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1421
1422         * compile/compile-c.h (generate_c_for_variable_locations):
1423         Change reference to pointer.
1424         * compile/compile-c-support.c (compile_program) <compute>:
1425         Likewise.
1426         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1427         (generate_c_for_for_one_variable): Likewise
1428         (generate_c_for_variable_locations): Likewise
1429         * compile/compile-c-types.c (compile_c_instance::convert_type):
1430         Likewise
1431         * compile/compile-cplus-symbols.c (convert_one_symbol):
1432         std::move the scope passed to enter_scope.
1433         * compile/compile-cplus-types.c
1434         (compile_cplus_instance::enter_scope): Make parameter
1435         rvalue-reference.
1436         (compile_cplus_instance::new_scope): Change reference to
1437         pointer.
1438         (compile_cplus_instance::convert_type): Likewise
1439         (compile_cplus_convert_typedef): std::move the scope passed to
1440         enter_scope.
1441         (compile_cplus_convert_struct_or_union): Likewise.
1442         (compile_cplus_convert_enum): Likewise.
1443         (compile_cplus_convert_namespace): Likewise.
1444         * compile/compile-cplus.h (compile_cplus_instance)
1445         <enter_scope>: Make parameter rvalue-reference.
1446         * compile/compile-internal.h (compile_instance)
1447         <get_cached_type>: Likewise
1448         * compile/compile-loc2c.c (push): Likewise
1449         (pushf): Likewise
1450         (unary): Likewise
1451         (binary): Likewise
1452         (print_label): Likewise
1453         (pushf_register_address): Likewise
1454         (pushf_register): Likewise
1455         (do_compile_dwarf_expr_to_c): Likewise
1456         (compile_dwarf_expr_to_c): Likewise
1457         (compile_dwarf_bounds_to_c): Likewise
1458         * compile/compile.c (compile_instance::get_cached_type):
1459         Likewise
1460         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1461         (compile_dwarf_bounds_to_c): Likewise
1462         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1463         (dwarf2_compile_property_to_c): Likewise
1464         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1465         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1466         Likewise
1467
1468 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1469
1470         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1471         * tui/tui-data.c (init_content_element): Don't initialize it.
1472
1473 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1474
1475         * tui/tui-data.h (struct tui_win_info)
1476         <detail::opaque>: Remove.
1477         * tui/tui-data.c (init_win_info): Remove assignment.
1478
1479 2018-09-05  Tom Tromey  <tom@tromey.com>
1480
1481         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1482         -Wformat-nonliteral.
1483         * target-float.c (host_float_ops<T>::to_string)
1484         (host_float_ops<T>::from_string): Use
1485         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1486         * configure: Rebuild.
1487
1488 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1489
1490         * printcmd.c (printf_c_string): Use
1491         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1492         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1493
1494 2018-09-05  Tom Tromey  <tom@tromey.com>
1495
1496         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1497
1498 2018-09-05  Tom de Vries  <tdevries@suse.de>
1499
1500         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1501         with resolve_abstract_p == true.
1502         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1503         defaulting to false. Propagate resolve_abstract_p to
1504         dwarf2_fetch_die_loc_sect_off.
1505         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1506         parameter, defaulting to false.
1507         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1508         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1509         parameter.
1510         * dwarf2read.h (struct die_info): Forward-declare.
1511         (die_info_ptr): New typedef.
1512         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1513
1514 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1515
1516         GDB 8.2 released.
1517
1518 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1519             Pedro Alves  <palves@redhat.com>
1520
1521         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1522         "aclocal-m4-deps.mk".  Include file here.
1523         $(srcdir)/aclocal.m4: Add "configure.ac".
1524         * gnulib/aclocal-m4-deps.mk: New file.
1525         * gnulib/update-gnulib.sh: Automatically update
1526         "aclocal-m4-deps.mk".
1527
1528 2018-09-04  Tom Tromey  <tom@tromey.com>
1529
1530         * configure: Rebuild.
1531         * configure.ac: Remove multi-ice code.
1532
1533 2018-09-04  Tom Tromey  <tom@tromey.com>
1534
1535         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1536         (ada-exp.o): Update.
1537
1538 2018-09-04  Tom Tromey  <tom@tromey.com>
1539
1540         * Makefile.in (printcmd.o, target-float.o): Remove.
1541         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1542
1543 2018-09-04  Tom Tromey  <tom@tromey.com>
1544
1545         * gnulib/Makefile.in: Remove obsolete comment.
1546         * Makefile.in: Remove obsolete comment.
1547
1548 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1549
1550         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1551         line with '+'.
1552
1553 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1554
1555         * riscv-tdep.c: Add 'prologue-value.h' include.
1556         (struct riscv_unwind_cache): New struct.
1557         (riscv_debug_unwinder): New global.
1558         (riscv_scan_prologue): Update arguments, capture register details
1559         from prologue scan.
1560         (riscv_skip_prologue): Reformat arguments line, move end of
1561         prologue calculation into riscv_scan_prologue.
1562         (riscv_frame_cache): Update return type, create
1563         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1564         details.
1565         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1566         (riscv_frame_prev_register): Use the trad_frame within the
1567         riscv_unwind_cache.
1568         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1569         flag.
1570
1571 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1572
1573         * trad-frame.h (trad_frame_set_realreg): Declare.
1574         (trad_frame_set_addr): Declare.
1575         * trad-frame.c (trad_frame_set_realreg): Define new function.
1576         (trad_frame_set_addr): Define new function.
1577         (trad_frame_set_reg_realreg): Use new function.
1578         (trad_frame_set_reg_addr): Use new function.
1579
1580 2018-09-01  Keith Seitz  <keiths@redhat.com>
1581
1582         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1583         pulongest instead of "%lld".
1584         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1585         ATTRIBUTE_UNUSED.
1586
1587 2018-08-31  Tom Tromey  <tom@tromey.com>
1588
1589         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1590         variant part type.
1591
1592 2018-08-31  Pedro Alves  <palves@redhat.com>
1593
1594         * gdbarch.h: Regenerate.
1595
1596 2018-08-31  Pedro Alves  <palves@redhat.com>
1597
1598         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1599         * target.h (Hardware watchpoint interfaces): Describe
1600         continuable/steppable/non-steppable watchpoints.
1601         * gdbarch.h, gdbarch.c: Regenerate.
1602
1603 2018-08-31  Pedro Alves  <palves@redhat.com>
1604
1605         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1606         Delete.
1607         * s390-linux-nat.c
1608         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1609         * target.h (target_ops::have_continuable_watchpoint): Delete.
1610         (target_have_continuable_watchpoint): Delete.
1611         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1612         * target-delegates.c: Regenerate.
1613
1614 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1615
1616         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1617         the files present in "gnulib/import/m4/".
1618
1619 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1620
1621         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1622         c.sw, c.swsp, and c.sdsp.
1623
1624 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1625
1626         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1627         (riscv_read_misa_reg): Don't cache value read into inferior data.
1628         (riscv_new_inferior_data): Delete.
1629         (riscv_inferior_data_cleanup): Delete.
1630         (riscv_inferior_data): Delete.
1631         (riscv_invalidate_inferior_data): Delete.
1632         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1633
1634 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1635
1636         * compile/compile-cplus-types.c
1637         (compile_cplus_instance::leave_scope): Take the address of scope
1638         object.
1639         (compile_cplus_instance::convert_qualified_base): Compare quals
1640         to 0.
1641
1642 2018-08-30  Keith Seitz  <keiths@redhat.com>
1643
1644         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1645         Use "%s" and host_address_to_string instead of "%p" in printf.
1646
1647 2018-08-29  Keith Seitz  <keiths@redhat.com>
1648
1649         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1650         and compile-cplus-types.c.
1651         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1652         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1653         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1654         Declare.
1655         * compile/compile-c-support.c: Include compile-cplus.h.
1656         (load_libcompile): Templatize.
1657         (get_compile_context): "New" function.
1658         (c_get_compile_context): Use get_compile_context.
1659         (cplus_get_compile_context): New function.
1660         (cplus_push_user_expression, cplus_pop_user_expression)
1661         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1662         (cplus_compute_program): Define new structs/functions.
1663         * compile/compile-cplus-symmbols.c: New file.
1664         * compile/compile-cplus-types.c: New file.
1665         * compile/compile-cplus.h: New file.
1666         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1667         Declare.
1668         * compile/compile-object-load.c (get_out_value_type): Use
1669         strncmp_iw when comparing symbol names.
1670         (compile_object_load): Add mst_bss and mst_data.
1671         * compile/compile.c (_initialize_compile): Remove
1672         -Wno-implicit-function-declaration from `compile_args'.
1673         * compile/gcc-cp-plugin.h: New file.
1674         * NEWS: Mention C++ compile support and new debug options.
1675
1676 2018-08-29  Keith Seitz  <keiths@redhat.com>
1677
1678         * linespec.c (collect_info::add_symbol): Make virtual.
1679         (struct symbol_searcher_collect_info): New struct.
1680         (symbol_searcher::find_all_symbols): New method.
1681         * symtab.h (class symbol_searcher): New class.
1682
1683 2018-08-29  Keith Seitz  <keiths@redhat.com>
1684
1685         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1686         Change to vector of block_symbol.  Update all users.
1687         (struct collect_info) <symbols>: Likewise.
1688         (collect_info::add_symbol): Take block_symbol as argument.
1689         Update all callers.
1690         (decode_compound_collector) <m_symbols>: Change type to vector
1691         of block_symbol.  Update all users.
1692         (decode_compound_collector::operator ()): Change parameter type
1693         to block_symbol.
1694         (find_method, find_function_symbols, find_linespec_symbols)
1695         (find_label_symbols_in_block, find_label_symbols): Change symbol
1696         vectors to block_symbol vectors.
1697         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1698         block_symbol.
1699
1700 2018-08-29  Keith Seitz  <keiths@redhat.com>
1701
1702         * linespec.c (symbolp): Remove typedef and VEC definitions.
1703         (bound_minimal_symbol_d): Likewise.
1704
1705 2018-08-29  Keith Seitz  <keiths@redhat.com>
1706
1707         * linespec.c (decode_compound_collector::decode_compound_collector):
1708         Remove initialization for `m_symtabs'.
1709         (decode_compound_collector::release_symbols): Change return type
1710         to std::vector.  Update all callers.
1711         (class decode_compound_collector) <m_symbols>: Change type to
1712         std::vector.
1713         (lookup_prefix_sym): Change return type to std::vector.  Update all
1714         callers.
1715         (compare_symbols): Remove.
1716         (std_compare_symbols): Rename to `compare_symbols'.
1717         (find_method): Change `sym_classes' parameter to std::vector.
1718         Update all callers.  Use std::sort to sort sym_classes.
1719         (find_linespec_symbols): Remove cleanup.
1720
1721 2018-08-29  Keith Seitz  <keiths@redhat.com>
1722
1723         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1724         std::vector.  Update all users.
1725         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1726         (struct collect_info) <minimal_symbols>: Likewise.
1727         (compare_msymbols): Return bool.  Change parameters to const
1728         bound_minimal_symbol references.
1729         (find_method, find_function_symbols, find_linespec_symbols): Change
1730         `minsyms' parameter to std::vector.  Update all callers.
1731
1732 2018-08-29  Keith Seitz  <keiths@redhat.com>
1733
1734         * linespec.c (struct linespec) <label_symbols>: Change type to
1735         std::vector.  Update all users.
1736         (find_label_symbols_in_block): Change `result' parameter to
1737         std::vector.  Update all callers.
1738         (find_label_symbols): Return std::vector.  Update all callers.
1739
1740 2018-08-29  Keith Seitz  <keiths@redhat.com>
1741
1742         * linespec.c (struct linespec) <function_symbols>: Change type to
1743         std::vector.  Update all users.
1744         (struct collect_info) <function_symbols>: Likewise.
1745         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1746         (std_compare_symbols): New function.
1747         (find_method, find_function_symbols, find_linespec_symbols)
1748         (find_label_symbols_in_block): Change `symbols' parameter to
1749         std::vector.  Update all callers.
1750         (find_label_symbols): Likewise for `function_symbols' and
1751         `label_funcs_ret'.
1752
1753 2018-08-29  Keith Seitz  <keiths@redhat.com>
1754
1755         * linespec.c (symtab_vector_up): Define.
1756         (struct linespec) <file_symtabs>: Change type to std::vector *.
1757         Update all uses.
1758         (struct collect_info) <file_symtabs>: Likewise.
1759         (collect_symtabs_from_filename): Return symtab_vector_up.
1760         Update all callers.
1761         (decode_objc): Remove cleanup.
1762         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1763         (symtab_collector::release_symtabs): Return symtab_vector_up.
1764         Update all callers.
1765         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1766         Update all users.
1767         (collect_symtabs_from_filename, symtabs_from_filename): Return
1768         symtab_vector_up.  Update all callers.
1769
1770 2018-08-29  Tom Tromey  <tom@tromey.com>
1771
1772         * csky-tdep.c (csky_analyze_prologue): Use
1773         core_addr_to_string_nz.
1774
1775 2018-08-29  Tom Tromey  <tom@tromey.com>
1776
1777         * windows-nat.c (struct xlate_exception) <them>: Change type to
1778         DWORD.
1779         (xlate): Fix formatting.  Remove last entry.
1780         (struct xlate_exception, xlate): Comment out.
1781         (windows_nat_target::resume): Use ranged for.
1782
1783 2018-08-29  Jim Wilson  <jimw@sifive.com>
1784
1785         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1786         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1787         of NT_PRFPREG.
1788         (riscv_linux_nat_target::store_registers): Likewise.
1789
1790 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1791
1792         PR gdb/23555
1793         PR gdb/23558
1794         * gnulib/aclocal.m4: Regenerate.
1795         * gnulib/config.in: Regenerate.
1796         * gnulib/configure: Regenerate.
1797         * gnulib/import/Makefile.am: Update.
1798         * gnulib/import/Makefile.in: Update.
1799         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1800         * gnulib/import/_Noreturn.h: ... this.
1801         * gnulib/import/alloca.in.h: Update.
1802         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1803         * gnulib/import/arg-nonnull.h: ... this.
1804         * gnulib/import/assure.h: Update.
1805         * gnulib/import/at-func.c: Update.
1806         * gnulib/import/basename-lgpl.c: Update.
1807         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1808         * gnulib/import/c++defs.h: ... this.
1809         * gnulib/import/canonicalize-lgpl.c: Update.
1810         * gnulib/import/cdefs.h: Update.
1811         * gnulib/import/chdir-long.c: Update.
1812         * gnulib/import/chdir-long.h: Update.
1813         * gnulib/import/cloexec.c: Update.
1814         * gnulib/import/cloexec.h: Update.
1815         * gnulib/import/close.c: Update.
1816         * gnulib/import/closedir.c: Update.
1817         * gnulib/import/config.charset: Update.
1818         * gnulib/import/dirent-private.h: Update.
1819         * gnulib/import/dirent.in.h: Update.
1820         * gnulib/import/dirfd.c: Update.
1821         * gnulib/import/dirname-lgpl.c: Update.
1822         * gnulib/import/dirname.h: Update.
1823         * gnulib/import/dosname.h: Update.
1824         * gnulib/import/dup-safer-flag.c: Update.
1825         * gnulib/import/dup-safer.c: Update.
1826         * gnulib/import/dup.c: Update.
1827         * gnulib/import/dup2.c: Update.
1828         * gnulib/import/errno.in.h: Update.
1829         * gnulib/import/error.c: Update.
1830         * gnulib/import/error.h: Update.
1831         * gnulib/import/exitfail.c: Update.
1832         * gnulib/import/exitfail.h: Update.
1833         * gnulib/import/extra/update-copyright: Update.
1834         * gnulib/import/fchdir.c: Update.
1835         * gnulib/import/fcntl.c: Update.
1836         * gnulib/import/fcntl.in.h: Update.
1837         * gnulib/import/fd-hook.c: Update.
1838         * gnulib/import/fd-hook.h: Update.
1839         * gnulib/import/fd-safer-flag.c: Update.
1840         * gnulib/import/fd-safer.c: Update.
1841         * gnulib/import/fdopendir.c: Update.
1842         * gnulib/import/filename.h: Update.
1843         * gnulib/import/filenamecat-lgpl.c: Update.
1844         * gnulib/import/filenamecat.h: Update.
1845         * gnulib/import/flexmember.h: Update.
1846         * gnulib/import/float+.h: Update.
1847         * gnulib/import/float.c: Update.
1848         * gnulib/import/float.in.h: Update.
1849         * gnulib/import/fnmatch.c: Update.
1850         * gnulib/import/fnmatch.in.h: Update.
1851         * gnulib/import/fnmatch_loop.c: Update.
1852         * gnulib/import/fpucw.h: Update.
1853         * gnulib/import/frexp.c: Update.
1854         * gnulib/import/frexpl.c: Update.
1855         * gnulib/import/fstat.c: Update.
1856         * gnulib/import/fstatat.c: Update.
1857         * gnulib/import/getcwd-lgpl.c: Update.
1858         * gnulib/import/getcwd.c: Update.
1859         * gnulib/import/getdtablesize.c: Update.
1860         * gnulib/import/getlogin_r.c: Update.
1861         * gnulib/import/getprogname.c: Update.
1862         * gnulib/import/getprogname.h: Update.
1863         * gnulib/import/gettext.h: Update.
1864         * gnulib/import/gettimeofday.c: Update.
1865         * gnulib/import/glob-libc.h: Update.
1866         * gnulib/import/glob.c: Update.
1867         * gnulib/import/glob.in.h: Update.
1868         * gnulib/import/glob_internal.h: Update.
1869         * gnulib/import/glob_pattern_p.c: Update.
1870         * gnulib/import/globfree.c: Update.
1871         * gnulib/import/hard-locale.c: Update.
1872         * gnulib/import/hard-locale.h: Update.
1873         * gnulib/import/intprops.h: Update.
1874         * gnulib/import/inttypes.in.h: Update.
1875         * gnulib/import/isnan.c: Update.
1876         * gnulib/import/isnand-nolibm.h: Update.
1877         * gnulib/import/isnand.c: Update.
1878         * gnulib/import/isnanl-nolibm.h: Update.
1879         * gnulib/import/isnanl.c: Update.
1880         * gnulib/import/itold.c: Update.
1881         * gnulib/import/libc-config.h: Update.
1882         * gnulib/import/limits.in.h: Update.
1883         * gnulib/import/localcharset.c: Update.
1884         * gnulib/import/localcharset.h: Update.
1885         * gnulib/import/localtime-buffer.c: Update.
1886         * gnulib/import/localtime-buffer.h: Update.
1887         * gnulib/import/lstat.c: Update.
1888         * gnulib/import/m4/00gnulib.m4: Update.
1889         * gnulib/import/m4/__inline.m4: Update.
1890         * gnulib/import/m4/absolute-header.m4: Update.
1891         * gnulib/import/m4/alloca.m4: Update.
1892         * gnulib/import/m4/builtin-expect.m4: Update.
1893         * gnulib/import/m4/canonicalize.m4: Update.
1894         * gnulib/import/m4/chdir-long.m4: Update.
1895         * gnulib/import/m4/close.m4: Update.
1896         * gnulib/import/m4/closedir.m4: Update.
1897         * gnulib/import/m4/configmake.m4: Update.
1898         * gnulib/import/m4/d-ino.m4: Update.
1899         * gnulib/import/m4/d-type.m4: Update.
1900         * gnulib/import/m4/dirent_h.m4: Update.
1901         * gnulib/import/m4/dirfd.m4: Update.
1902         * gnulib/import/m4/dirname.m4: Update.
1903         * gnulib/import/m4/double-slash-root.m4: Update.
1904         * gnulib/import/m4/dup.m4: Update.
1905         * gnulib/import/m4/dup2.m4: Update.
1906         * gnulib/import/m4/eealloc.m4: Update.
1907         * gnulib/import/m4/environ.m4: Update.
1908         * gnulib/import/m4/errno_h.m4: Update.
1909         * gnulib/import/m4/error.m4: Update.
1910         * gnulib/import/m4/exponentd.m4: Update.
1911         * gnulib/import/m4/exponentl.m4: Update.
1912         * gnulib/import/m4/extensions.m4: Update.
1913         * gnulib/import/m4/extern-inline.m4: Update.
1914         * gnulib/import/m4/fchdir.m4: Update.
1915         * gnulib/import/m4/fcntl-o.m4: Update.
1916         * gnulib/import/m4/fcntl.m4: Update.
1917         * gnulib/import/m4/fcntl_h.m4: Update.
1918         * gnulib/import/m4/fdopendir.m4: Update.
1919         * gnulib/import/m4/filenamecat.m4: Update.
1920         * gnulib/import/m4/flexmember.m4: Update.
1921         * gnulib/import/m4/float_h.m4: Update.
1922         * gnulib/import/m4/fnmatch.m4: Update.
1923         * gnulib/import/m4/fnmatch_h.m4: Update.
1924         * gnulib/import/m4/fpieee.m4: Update.
1925         * gnulib/import/m4/frexp.m4: Update.
1926         * gnulib/import/m4/frexpl.m4: Update.
1927         * gnulib/import/m4/fstat.m4: Update.
1928         * gnulib/import/m4/fstatat.m4: Update.
1929         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1930         * gnulib/import/m4/getcwd-path-max.m4: Update.
1931         * gnulib/import/m4/getcwd.m4: Update.
1932         * gnulib/import/m4/getdtablesize.m4: Update.
1933         * gnulib/import/m4/getlogin.m4: Update.
1934         * gnulib/import/m4/getlogin_r.m4: Update.
1935         * gnulib/import/m4/getpagesize.m4: Update.
1936         * gnulib/import/m4/getprogname.m4: Update.
1937         * gnulib/import/m4/gettimeofday.m4: Update.
1938         * gnulib/import/m4/glibc21.m4: Update.
1939         * gnulib/import/m4/glob.m4: Update.
1940         * gnulib/import/m4/glob_h.m4: Update.
1941         * gnulib/import/m4/gnulib-cache.m4: Update.
1942         * gnulib/import/m4/gnulib-common.m4: Update.
1943         * gnulib/import/m4/gnulib-comp.m4: Update.
1944         * gnulib/import/m4/gnulib-tool.m4: Update.
1945         * gnulib/import/m4/hard-locale.m4: Update.
1946         * gnulib/import/m4/include_next.m4: Update.
1947         * gnulib/import/m4/inttypes-pri.m4: Update.
1948         * gnulib/import/m4/inttypes.m4: Update.
1949         * gnulib/import/m4/isnand.m4: Update.
1950         * gnulib/import/m4/isnanl.m4: Update.
1951         * gnulib/import/m4/largefile.m4: Update.
1952         * gnulib/import/m4/limits-h.m4: Update.
1953         * gnulib/import/m4/localcharset.m4: Update.
1954         * gnulib/import/m4/locale-fr.m4: Update.
1955         * gnulib/import/m4/locale-ja.m4: Update.
1956         * gnulib/import/m4/locale-zh.m4: Update.
1957         * gnulib/import/m4/localtime-buffer.m4: Update.
1958         * gnulib/import/m4/longlong.m4: Update.
1959         * gnulib/import/m4/lstat.m4: Update.
1960         * gnulib/import/m4/malloc.m4: Update.
1961         * gnulib/import/m4/malloca.m4: Update.
1962         * gnulib/import/m4/math_h.m4: Update.
1963         * gnulib/import/m4/mbrtowc.m4: Update.
1964         * gnulib/import/m4/mbsinit.m4: Update.
1965         * gnulib/import/m4/mbsrtowcs.m4: Update.
1966         * gnulib/import/m4/mbstate_t.m4: Update.
1967         * gnulib/import/m4/memchr.m4: Update.
1968         * gnulib/import/m4/memmem.m4: Update.
1969         * gnulib/import/m4/mempcpy.m4: Update.
1970         * gnulib/import/m4/memrchr.m4: Update.
1971         * gnulib/import/m4/mkdir.m4: Update.
1972         * gnulib/import/m4/mkstemp.m4: Update.
1973         * gnulib/import/m4/mmap-anon.m4: Update.
1974         * gnulib/import/m4/mode_t.m4: Update.
1975         * gnulib/import/m4/msvc-inval.m4: Update.
1976         * gnulib/import/m4/msvc-nothrow.m4: Update.
1977         * gnulib/import/m4/multiarch.m4: Update.
1978         * gnulib/import/m4/nocrash.m4: Update.
1979         * gnulib/import/m4/off_t.m4: Update.
1980         * gnulib/import/m4/onceonly.m4: Update.
1981         * gnulib/import/m4/open-cloexec.m4: Update.
1982         * gnulib/import/m4/open.m4: Update.
1983         * gnulib/import/m4/openat.m4: Update.
1984         * gnulib/import/m4/opendir.m4: Update.
1985         * gnulib/import/m4/pathmax.m4: Update.
1986         * gnulib/import/m4/rawmemchr.m4: Update.
1987         * gnulib/import/m4/readdir.m4: Update.
1988         * gnulib/import/m4/readlink.m4: Update.
1989         * gnulib/import/m4/realloc.m4: Update.
1990         * gnulib/import/m4/rename.m4: Update.
1991         * gnulib/import/m4/rewinddir.m4: Update.
1992         * gnulib/import/m4/rmdir.m4: Update.
1993         * gnulib/import/m4/save-cwd.m4: Update.
1994         * gnulib/import/m4/secure_getenv.m4: Update.
1995         * gnulib/import/m4/setenv.m4: Update.
1996         * gnulib/import/m4/signal_h.m4: Update.
1997         * gnulib/import/m4/ssize_t.m4: Update.
1998         * gnulib/import/m4/stat-time.m4: Update.
1999         * gnulib/import/m4/stat.m4: Update.
2000         * gnulib/import/m4/std-gnu11.m4: Update.
2001         * gnulib/import/m4/stdbool.m4: Update.
2002         * gnulib/import/m4/stddef_h.m4: Update.
2003         * gnulib/import/m4/stdint.m4: Update.
2004         * gnulib/import/m4/stdio_h.m4: Update.
2005         * gnulib/import/m4/stdlib_h.m4: Update.
2006         * gnulib/import/m4/strchrnul.m4: Update.
2007         * gnulib/import/m4/strdup.m4: Update.
2008         * gnulib/import/m4/strerror.m4: Update.
2009         * gnulib/import/m4/string_h.m4: Update.
2010         * gnulib/import/m4/strstr.m4: Update.
2011         * gnulib/import/m4/strtok_r.m4: Update.
2012         * gnulib/import/m4/sys_socket_h.m4: Update.
2013         * gnulib/import/m4/sys_stat_h.m4: Update.
2014         * gnulib/import/m4/sys_time_h.m4: Update.
2015         * gnulib/import/m4/sys_types_h.m4: Update.
2016         * gnulib/import/m4/tempname.m4: Update.
2017         * gnulib/import/m4/time_h.m4: Update.
2018         * gnulib/import/m4/unistd-safer.m4: Update.
2019         * gnulib/import/m4/unistd_h.m4: Update.
2020         * gnulib/import/m4/warn-on-use.m4: Update.
2021         * gnulib/import/m4/wchar_h.m4: Update.
2022         * gnulib/import/m4/wchar_t.m4: Update.
2023         * gnulib/import/m4/wctype_h.m4: Update.
2024         * gnulib/import/m4/wint_t.m4: Update.
2025         * gnulib/import/malloc.c: Update.
2026         * gnulib/import/malloc/scratch_buffer.h: Update.
2027         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2028         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2029         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2030         * gnulib/import/malloca.c: Update.
2031         * gnulib/import/malloca.h: Update.
2032         * gnulib/import/malloca.valgrind: Update.
2033         * gnulib/import/math.in.h: Update.
2034         * gnulib/import/mbrtowc.c: Update.
2035         * gnulib/import/mbsinit.c: Update.
2036         * gnulib/import/mbsrtowcs-impl.h: Update.
2037         * gnulib/import/mbsrtowcs-state.c: Update.
2038         * gnulib/import/mbsrtowcs.c: Update.
2039         * gnulib/import/memchr.c: Update.
2040         * gnulib/import/memmem.c: Update.
2041         * gnulib/import/mempcpy.c: Update.
2042         * gnulib/import/memrchr.c: Update.
2043         * gnulib/import/mkdir.c: Update.
2044         * gnulib/import/mkstemp.c: Update.
2045         * gnulib/import/msvc-inval.c: Update.
2046         * gnulib/import/msvc-inval.h: Update.
2047         * gnulib/import/msvc-nothrow.c: Update.
2048         * gnulib/import/msvc-nothrow.h: Update.
2049         * gnulib/import/open.c: Update.
2050         * gnulib/import/openat-die.c: Update.
2051         * gnulib/import/openat-priv.h: Update.
2052         * gnulib/import/openat-proc.c: Update.
2053         * gnulib/import/openat.c: Update.
2054         * gnulib/import/openat.h: Update.
2055         * gnulib/import/opendir.c: Update.
2056         * gnulib/import/pathmax.h: Update.
2057         * gnulib/import/pipe-safer.c: Update.
2058         * gnulib/import/rawmemchr.c: Update.
2059         * gnulib/import/readdir.c: Update.
2060         * gnulib/import/readlink.c: Update.
2061         * gnulib/import/realloc.c: Update.
2062         * gnulib/import/ref-add.sin: Update.
2063         * gnulib/import/ref-del.sin: Update.
2064         * gnulib/import/rename.c: Update.
2065         * gnulib/import/rewinddir.c: Update.
2066         * gnulib/import/rmdir.c: Update.
2067         * gnulib/import/same-inode.h: Update.
2068         * gnulib/import/save-cwd.c: Update.
2069         * gnulib/import/save-cwd.h: Update.
2070         * gnulib/import/scratch_buffer.h: Update.
2071         * gnulib/import/secure_getenv.c: Update.
2072         * gnulib/import/setenv.c: Update.
2073         * gnulib/import/signal.in.h: Update.
2074         * gnulib/import/stat-time.c: Update.
2075         * gnulib/import/stat-time.h: Update.
2076         * gnulib/import/stat-w32.c: Update.
2077         * gnulib/import/stat-w32.h: Update.
2078         * gnulib/import/stat.c: Update.
2079         * gnulib/import/stdbool.in.h: Update.
2080         * gnulib/import/stddef.in.h: Update.
2081         * gnulib/import/stdint.in.h: Update.
2082         * gnulib/import/stdio.in.h: Update.
2083         * gnulib/import/stdlib.in.h: Update.
2084         * gnulib/import/str-two-way.h: Update.
2085         * gnulib/import/strchrnul.c: Update.
2086         * gnulib/import/strdup.c: Update.
2087         * gnulib/import/streq.h: Update.
2088         * gnulib/import/strerror-override.c: Update.
2089         * gnulib/import/strerror-override.h: Update.
2090         * gnulib/import/strerror.c: Update.
2091         * gnulib/import/string.in.h: Update.
2092         * gnulib/import/stripslash.c: Update.
2093         * gnulib/import/strnlen1.c: Update.
2094         * gnulib/import/strnlen1.h: Update.
2095         * gnulib/import/strstr.c: Update.
2096         * gnulib/import/strtok_r.c: Update.
2097         * gnulib/import/sys_stat.in.h: Update.
2098         * gnulib/import/sys_time.in.h: Update.
2099         * gnulib/import/sys_types.in.h: Update.
2100         * gnulib/import/tempname.c: Update.
2101         * gnulib/import/tempname.h: Update.
2102         * gnulib/import/time.in.h: Update.
2103         * gnulib/import/unistd--.h: Update.
2104         * gnulib/import/unistd-safer.h: Update.
2105         * gnulib/import/unistd.in.h: Update.
2106         * gnulib/import/unsetenv.c: Update.
2107         * gnulib/import/verify.h: Update.
2108         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2109         * gnulib/import/wchar.in.h: Update.
2110         * gnulib/import/wctype.in.h: Update.
2111         * gnulib/import/xalloc-oversized.h: Update.
2112         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2113         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2114
2115 2018-08-16  Gary Benson <gbenson@redhat.com>
2116
2117         PR gdb/13000:
2118         * gdb/main.c (captured_main_1): Exit with nonzero status
2119         in batch mode if the last command to be executed failed.
2120         * NEWS: Mention the above.
2121
2122 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2123
2124         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2125         end of warning message.
2126
2127 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2128
2129         PR gdb/22943:
2130         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2131         (aarch64_extract_return_value): Use
2132         aapcs_is_vfp_call_or_return_candidate.
2133         (aarch64_return_in_memory): Likewise.
2134         (aarch64_store_return_value): Likewise.
2135
2136 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2137
2138         * aarch64-tdep.c
2139         (aapcs_is_vfp_call_or_return_candidate): Make static
2140         (pass_in_v_or_stack): Remove function.
2141         (pass_in_v_vfp_candidate): New function.
2142         (aarch64_push_dummy_call): Check for float register candidates.
2143
2144 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2145
2146         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2147         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2148         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2149
2150 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2151
2152         PR build/23399
2153         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2154         (struct ipa_sym_addresses): Rename to...
2155         (struct ipa_sym_addresses_common): ... this.
2156         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2157
2158 2018-08-28  Tom Tromey  <tom@tromey.com>
2159
2160         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2161         (token_fifo): Now a std::vector.
2162         (yylex, c_parse): Update.
2163         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2164         (token_fifo): Now a std::vector.
2165         (yylex, d_parse): Update.
2166         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2167         (token_fifo): Now a std::vector.
2168         (yylex, go_parse): Update.
2169
2170 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2171
2172         * parser-defs.h (struct type_stack) <elements>: Change type to
2173         std::vector<union type_stack_elt>.
2174         <depth, size>: Remove.
2175         * parse.c (parse_exp_in_context_1): Adjust.
2176         (type_stack_reserve): Remove.
2177         (check_type_stack_depth): Remove.
2178         (insert_into_type_stack): Adjust to std::vector.
2179         (insert_type): Likewise.
2180         (push_type): Likewise.
2181         (push_type_int): Likewise.
2182         (insert_type_address_space): Likewise.
2183         (pop_type): Likewise.
2184         (pop_type_int): Likewise.
2185         (pop_typelist): Likewise.
2186         (pop_type_stack): Likewise.
2187         (append_type_stack): Likewise.
2188         (push_type_stack): Likewise.
2189         (get_type_stack): Likewise.
2190         (type_stack_cleanup): Likewise.
2191         (push_typelist): Likewise.
2192         (follow_types): Likewise.
2193         (_initialize_parse): Likewise.
2194
2195 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2196
2197         * NEWS: Mention csky target.
2198
2199 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2200             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2201             Don Breazeal  <donb@codesourcery.com>
2202
2203         * csky-linux-tdep.c: New file.
2204         * csky-tdep.c: Likewise.
2205         * csky-tdep.h: Likewise.
2206         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2207         csky-tdep.o.
2208         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2209         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2210         * configure.tgt: Add csky support.
2211
2212 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2213
2214         * python/py-framefilter.c (py_print_frame): Print frame architecture
2215         when printing on an MI output.
2216
2217 2018-08-27  Tom Tromey  <tom@tromey.com>
2218
2219         PR build/23087:
2220         * configure: Rebuild.
2221         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2222
2223 2018-08-27  Tom Tromey  <tom@tromey.com>
2224
2225         * aarch64-linux-tdep.c
2226         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2227         casts to int.
2228
2229 2018-08-27  Tom Tromey  <tom@tromey.com>
2230
2231         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2232         unsigned.
2233         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2234         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2235         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2236         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2237         unsigned.
2238
2239 2018-08-27  Tom Tromey  <tom@tromey.com>
2240
2241         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2242         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2243
2244 2018-08-27  Tom Tromey  <tom@tromey.com>
2245
2246         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2247         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2248         ULONGEST_MAX.
2249         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2250         ULONGEST_MAX.
2251         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2252         ULONGEST_MAX.
2253         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2254         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2255         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2256         ULONGEST_MAX.
2257         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2258         (ppc64_linux_sigaction_tramp_frame)
2259         (ppc32_linux_sighandler_tramp_frame)
2260         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2261         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2262         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2263         * mn10300-linux-tdep.c (am33_linux_sigframe)
2264         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2265         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2266         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2267         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2268         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2269         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2270         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2271         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2272         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2273         * microblaze-linux-tdep.c
2274         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2275         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2276         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2277         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2278         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2279         * common/common-types.h (ULONGEST_MAX): New define.
2280         (CORE_ADDR_MAX): Fix formatting.
2281         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2282         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2283         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2284         (arm_linux_rt_sigreturn_tramp_frame)
2285         (arm_eabi_linux_sigreturn_tramp_frame)
2286         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2287         (thumb2_eabi_linux_sigreturn_tramp_frame)
2288         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2289         (arm_linux_restart_syscall_tramp_frame)
2290         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2291         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2292         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2293         ULONGEST_MAX.
2294         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2295
2296 2018-08-27  Tom Tromey  <tom@tromey.com>
2297
2298         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2299         CORE_ADDR_MAX.
2300         * mips-tdep.c (mips_deal_with_atomic_sequence)
2301         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2302         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2303         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2304         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2305         CORE_ADDR_MAX.
2306         * aarch64-tdep.c (aarch64_software_single_step): Use
2307         CORE_ADDR_MAX.
2308
2309 2018-08-27  Tom Tromey  <tom@tromey.com>
2310
2311         * linespec.c (complete_linespec_component): Add cast to "char".
2312         * completer.c (completion_tracker::build_completion_result): Add
2313         cast to "char".
2314
2315 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2316
2317         * solist.h (struct solist, struct target_so_ops): Fix
2318         indentation.
2319
2320 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2321
2322         * ada-tasks.c (ada_task_info_s): Remove typedef.
2323         (DEF_VEC_O(ada_task_info_s)): Remove.
2324         (struct ada_tasks_inferior_data): Initialize fields.
2325         <task_list>: Make an std::vector.
2326         (get_ada_tasks_inferior_data): Allocate with new.
2327         (ada_get_task_number): Adjust.
2328         (get_task_number_from_id): Likewise.
2329         (valid_task_id): Likewise.
2330         (ada_get_task_info_from_ptid): Likewise.
2331         (iterate_over_live_ada_tasks): Likewise.
2332         (add_ada_task): Likewise.
2333         (read_known_tasks): Likewise.
2334         (ada_build_task_list): Likewise.
2335         (print_ada_task_info): Likewise.
2336         (info_task): Likewise.
2337         (task_command_1): Likewise.
2338
2339 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2340
2341         * ada-lang.c (add_angle_brackets): Return std::string.
2342
2343 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2344
2345         * python/py-threadevent.c (py_get_event_thread): Initialize
2346         pythread.
2347
2348 2018-08-24  Pedro Alves  <palves@redhat.com>
2349
2350         * python/py-bpevent.c (create_breakpoint_event_object): Use
2351         copy-initialization.
2352         * python/py-continueevent.c (emit_continue_event): Use
2353         copy-initialization.
2354         * python/py-exitedevent.c (create_exited_event_object): Return a
2355         gdbpy_ref<>.
2356         (emit_exited_event): Use copy-initialization.
2357         * python/py-inferior.c (python_new_inferior)
2358         (python_inferior_deleted, add_thread_object): Use
2359         copy-initialization.
2360         * python/py-infevents.c (create_inferior_call_event_object)
2361         (create_register_changed_event_object)
2362         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2363         (emit_inferior_call_event, emit_memory_changed_event)
2364         (emit_register_changed_event): Use copy-initialization.
2365         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2366         Return a gdbpy_ref<>.
2367         (emit_new_objfile_event): Use copy-initialization.
2368         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2369         (emit_clear_objfiles_event): Use copy-initialization.
2370         * python/py-signalevent.c (create_signal_event_object): Use
2371         copy-initialization.
2372         * python/py-threadevent.c (create_thread_event_object): Use
2373         copy-initialization.
2374
2375 2018-08-24  Pedro Alves  <palves@redhat.com>
2376             Simon Marchi  <simon.marchi@ericsson.com>
2377
2378         PR gdb/23379
2379         * python/py-continueevent.c: Include "gdbthread.h".
2380         (create_continue_event_object): Add intro comment.  Add 'ptid'
2381         parameter.  Use it to find thread to pass to
2382         create_thread_event_object.
2383         (emit_continue_event): Pass PTID down to
2384         create_continue_event_object.
2385         * python/py-event.h (py_get_event_thread): Declare.
2386         (create_thread_event_object): Remove default from 'thread'
2387         parameter.
2388         * python/py-stopevent.c (create_stop_event_object): Use
2389         py_get_event_thread.
2390         * python/py-threadevent.c (get_event_thread): Rename to ...
2391         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2392         and use it to find the thread.
2393         (create_thread_event_object): Assert that THREAD isn't null.
2394         Don't find the event thread here.
2395
2396 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2397
2398         * block.h (blockrange, blockranges): New struct declarations.
2399         (struct block): Add new field named `ranges'.
2400         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2401         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2402         macros for accessing ranges in struct block.
2403         (make_blockranges): New declaration.
2404         block.c (make_blockranges): New function.
2405         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2406         for block.
2407         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2408         * blockframe.c (cache_pc_function_block): New static global.
2409         (clear_pc_function_cache): Clear cache_pc_function_block.
2410         (find_pc_partial_function): Move comment to symtab.h.  Add
2411         support for non-contiguous blocks.
2412         * cli/cli-cmds.c (block.h): Include.
2413         (print_disassembly): Handle printing of non-contiguous blocks.
2414         (disassemble_current_function): Likewise.
2415         (disassemble_command): Likewise.
2416
2417         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2418         BLOCK_START.
2419         * blockframe.c (get_pc_function_start): Likewise.
2420         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2421         (gcc_symbol_address): Likewise.
2422         * compile/compile-object-run.c (compile_object_run): Likewise.
2423         * compile/compile.c (get_expr_block_and_pc): Likewise.
2424         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2425         (func_addr_to_tail_call_list): Likewise.
2426         * findvar.c (default_read_var_value): Likewise.
2427         * inline-frame.c (inline_frame_this_id): Likewise.
2428         (skip-inline_frames): Likewise.
2429         * infcmd.c (until_next_command): Likewise.
2430         * linespec.c (convert_linespec_to_sals): Likewise.
2431         * parse.c (parse_exp_in_context_1): Likewise.
2432         * printcmd.c (build_address_symbolic): likewise.
2433         (info_address_command): Likewise.
2434         symtab.c (find_function_start_sal): Likewise.
2435         (skip_prologue_sal): Likewise.
2436         (find_function_alias_target): Likewise.
2437         (find_gnu_ifunc): Likewise.
2438         * stack.c (find_frame_funname): Likewise.
2439         * symtab.c (fixup_symbol_section): Likewise.
2440         (find_function_start_sal): Likewise.
2441         (skip_prologue_sal): Likewsie.
2442         (find_function_alias_target): Likewise.
2443         (find_gnu_ifunc): Likewise.
2444         * tracepoint.c (info_scope_command): Likewise.
2445         * value.c (value_fn_field): Likewise.
2446
2447         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2448         in place of find_pc_partial_function.
2449         * blockframe.c (find_function_entry_range_from_pc): New function.
2450         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2451         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2452         for each range in a block.
2453
2454
2455 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2456
2457         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2458         incrementation.
2459
2460 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2461
2462         * solib-svr4.c (read_program_headers_from_bfd): Return
2463         gdb::optional<gdb::byte_vector>.
2464         (svr4_exec_displacement): Adjust.
2465
2466 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2467
2468         * solib-svr4.c (read_program_header): Return
2469         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2470         (find_program_interpreter): Return
2471         gdb::optional<gdb::byte_vector>.
2472         (scan_dyntag_auxv): Adjust.
2473         (enable_break): Adjust.
2474         (svr4_exec_displacement): Adjust.
2475
2476 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2477
2478         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2479         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2480
2481 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2482
2483         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2484         string_vprintf.
2485         * guile/scm-utils.c (gdbscm_printf): Likewise.
2486         * serial.c (serial_printf): Likewise.
2487         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2488
2489 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2490
2491         * stack.c (print_frame): Print frame architecture when printing on
2492         an MI output.
2493         * NEWS: Mention new "arch" attribute in frame output.
2494
2495 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2496
2497         * arch/aarch64.h (aarch64_regnum): Update comment.
2498
2499 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2500
2501         * NEWS: Add SVE to 8.2 section.
2502
2503 2018-08-21  Pedro Alves  <palves@redhat.com>
2504
2505         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2506         out from gdbscm_parse_function_args.
2507         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2508         gdbscm_parse_function_args_1.
2509
2510 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2511
2512         PR gdb/17816
2513         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2514         operator.
2515
2516 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2517
2518         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2519
2520 2018-08-19  Michael Spang  <spang@google.com>
2521
2522         PR gdb/11786
2523         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2524         for PT_TLS segments.
2525
2526 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2527
2528         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2529         dwarf_variable_value.
2530         * dwarf2-frame.c (class dwarf_expr_executor):
2531         Add override for dwarf_variable_value.
2532         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2533         (class symbol_needs_eval_context): Likewise.
2534         (indirect_synthetic_pointer): Add forward declaration.
2535         (sect_variable_value): New function.
2536         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2537         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2538         for DW_OP_GNU_variable_value.
2539
2540 2018-08-16  Tom Tromey  <tom@tromey.com>
2541
2542         * top.c (read_command_file): Update.
2543         (command_line_input): Remove "repeat" argument.
2544         * ada-lang.c (get_selections): Update.
2545         * linespec.c (decode_line_2): Update.
2546         * defs.h (command_line_input): Remove argument.
2547         * cli/cli-script.c (read_next_line): Update.
2548         * python/py-gdb-readline.c: Update.
2549
2550 2018-08-17  Tom Tromey  <tom@tromey.com>
2551
2552         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2553         command_line_input.
2554
2555 2018-08-15  Tom Tromey  <tom@tromey.com>
2556
2557         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2558
2559 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2560
2561         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2562         If used, use find_pc_partial_function to find address range
2563         to disassemble.
2564         * mi/mi-main.c (mi_cmd_list_features): Report
2565         "data-disassemble-a-option" feature.
2566         * NEWS: Mention new -data-disassemble option -a.
2567
2568 2018-08-13  Tom Tromey  <tom@tromey.com>
2569
2570         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2571
2572 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2573
2574         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2575         (aarch64_linux_collect_sve_regset): Likewise.
2576         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2577         * regcache.h (regcache_map_entry_size): New function.
2578
2579 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2580
2581         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2582         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2583         (SVE_HEADER_VL_LENGTH): Likewise.
2584         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2585         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2586         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2587         (SVE_HEADER_SIZE_OFFSET): Likewise.
2588         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2589         (SVE_HEADER_VL_OFFSET): Likewise.
2590         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2591         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2592         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2593         (SVE_HEADER_SIZE): Likewise.
2594         (aarch64_linux_core_read_vq): Add function.
2595         (aarch64_linux_core_read_description): Check for SVE section.
2596
2597 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2598
2599         * aarch64-fbsd-tdep.c
2600         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2601         collect_size.
2602         * aarch64-linux-tdep.c
2603         (aarch64_linux_iterate_over_regset_sections): Likewise.
2604         * alpha-linux-tdep.c
2605         (alpha_linux_iterate_over_regset_sections):
2606         * alpha-nbsd-tdep.c
2607         (alphanbsd_iterate_over_regset_sections): Likewise.
2608         * amd64-fbsd-tdep.c
2609         (amd64fbsd_iterate_over_regset_sections): Likewise.
2610         * amd64-linux-tdep.c
2611         (amd64_linux_iterate_over_regset_sections): Likewise.
2612         * arm-bsd-tdep.c
2613         (armbsd_iterate_over_regset_sections): Likewise.
2614         * arm-fbsd-tdep.c
2615         (arm_fbsd_iterate_over_regset_sections): Likewise.
2616         * arm-linux-tdep.c
2617         (arm_linux_iterate_over_regset_sections): Likewise.
2618         * corelow.c (get_core_registers_cb): Likewise.
2619         (core_target::fetch_registers): Likewise.
2620         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2621         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2622         * gdbarch.h (void): Regenerate.
2623         * gdbarch.sh: Add supply_size and collect_size.
2624         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2625         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2626         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2627         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2628         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2629         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2630         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2631         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2632         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2633         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2634         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2635         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2636         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2637         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2638         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2639         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2640         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2641         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2642         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2643         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2644         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2645         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2646         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2647         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2648         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2649         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2650         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2651         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2652         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2653         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2654
2655 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2656
2657         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2658         with string_printf.
2659
2660 2018-08-10  Keith Seitz  <keiths@redhat.com>
2661
2662         * compile/compile-c-support.c (add_code_header, add_code_footer):
2663         Move into policy class.
2664         (c_push_user_expression, pop_user_expression_nop)
2665         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2666         (compile_program): New host class.
2667         (c_compile_program): New typedef.
2668         (c_compute_porgram): Use c_compile_program.
2669
2670 2018-08-10  Keith Seitz  <keiths@redhat.com>
2671
2672         * compile/compile-internal.h (compile_instance::~compile_instance):
2673         Remove calls to htab_delete.
2674         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2675         * compile.c (compile_instance::compile_instance): Initialize
2676         htab unique pointers.
2677         (compile_instance::get_cached_type, compile_instance::insert_type)
2678         (compile_instance::error_symbol_once): Update for unique_ptr.
2679
2680 2018-08-10  Keith Seitz  <keiths@redhat.com>
2681
2682         * compile/compile-c-symbols.c (struct symbol_error)
2683         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2684         (compile_instance::insert_symbol_error)
2685         (compile_instance::error_symbol_once): Move to ...
2686         * compile/compile.c: ... here.
2687
2688 2018-08-10  Keith Seitz  <keiths@redhat.com>
2689
2690         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2691         instead of `new_compile_instance'.
2692         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2693         Update description.
2694         If the symbol error map is not initialized, create it.
2695         (generate_c_for_for_one_symbol): Do not check/initialize
2696         the symbol error map.
2697         * compile/compile-c-types.c (compile_c_instance): Make a class.
2698         Update all callers.
2699         (compile_instance::compile_instance): Initialize the type cache.
2700         (get_cached_type): New function.
2701         (insert_type): Update description.
2702         (compile_c_instance::m_default_cflags): Define.
2703         (convert_type): Update description.  Use get_cached_type.
2704         (delete_instance): Moved to destructor.
2705         (new_compile_instance): Moved to constructor.
2706         * compile/compile-c.h (compile_c_instance): Make class inheriting
2707         from compile_instance.
2708         <base>: Remove field.
2709         <type_map, symbol_err_map>: Move to base class.
2710         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2711         * compile/compile-internal.h (compile_instance): Make class.
2712         <type_map_t, symbol_err_map_t>: Define.
2713         <fe>: Rename to `m_gcc_fe'.
2714         <scope, block, gcc_target_options>: Add `m_' prefix.
2715         <m_type_map, m_symbol_err_map>: New fields, moved from
2716         compile_c_instance.
2717         <destroy>: Remove.
2718         (convert_type, new_compile_instance): Remove.
2719         * compile/compile.c (cleanup_compile_instance): Remove.
2720         (compile_to_object): Use unique_ptr to eliminate cleanups.
2721         (compile_instance::set_print_callback, compile_instance::version)
2722         (compile_instance::set_verbose)
2723         (compile_instance::set_driver_filename)
2724         (compile_instance::set_triplet_regexp)
2725         (compile_instance::set_arguments)
2726         (compile_instance::set_source_file)
2727         (compile_instance::compile): Define.
2728
2729 2018-08-10  Keith Seitz  <keiths@redhat.com>
2730
2731         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2732         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2733         gcc-c-fe.def to define C plugin.
2734         (delete_instance): Delete `c_plugin'.
2735         (new_compile_instance): Initialize `c_plugin'.
2736         * compile/compile-c.h: Include gcc_c_plugin.h.
2737         (struct compile_c_instance) <c_plugin>: New member.
2738         * gcc-c-plugin.h: New file.
2739         Update all callers with API change.
2740
2741 2018-08-10  Keith Seitz  <keiths@redhat.com>
2742
2743         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2744         (HFILES_NO_SRCDIR): ... to here.
2745         Add compile-internal.h and compile-c.h.
2746         * compile/compile-c-support.c: Include compile-c.h.
2747         * compile/compile-c-symbols.c: Include compile-c.h.
2748         (generate_c_for_variable_locations): Update comment.
2749         * compile/compile-c-types.c: Include compile-c.h.
2750         * compile/compile-c.h: New file -- moved C language declarations
2751         from other files here.
2752         * compile/compile-internal.h: Do not include hashtab.h or
2753         common/enum-flags.h.
2754         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2755         (gcc_convert_symbol, gcc_symbol_address)
2756         (generate_c_for_variable_locations, c_get_mode_for_size)
2757         (c_get_range_decl_name): Definitions moved to compile-c.h.
2758         * compile/compile-loc2c.c: Include compile-c.h.
2759
2760 2018-08-10  Keith Seitz  <keiths@redhat.com>
2761
2762         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2763         (c_symbol_substitution_name): ... this.
2764         Update all callers.
2765
2766 2018-08-10  Keith Seitz  <keiths@redhat.com>
2767
2768         * compile/compile-c-support.c (c_compute_program): Use
2769         unique_xmalloc_ptr to eliminate cleanup.
2770         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2771         Return a unique_xmalloc_ptr and eliminate cleanup.
2772         * compile/compile-internal.h (generate_c_for_variable_locations):
2773         Return unique_xmalloc_ptr and update description.
2774
2775 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2776
2777         * corelow.c (core_target::get_core_register_section): Rename
2778         min_size to section_min_size.
2779
2780 2018-08-09  Jim Wilson  <jimw@sifive.com>
2781
2782         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2783         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2784         * NEWS: Mention new GNU/Linux RISC-V target.
2785         * configure.host: Add riscv*-*-linux*.
2786         * configure.nat: Add riscv*.
2787         * configure.tgt: Add riscv*-*-linux*.
2788         * riscv-linux-nat.c: New file.
2789         * riscv-linux-tdep.c: New file.
2790
2791 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2792
2793         * infrun.c (resume): Make static, add forward declaration.
2794         (proceed): Update header comment.
2795         * infrun.h (resume): Delete declaration.
2796
2797 2018-08-09  Tom Tromey  <tom@tromey.com>
2798
2799         * riscv-tdep.h: Minor formatting fixes.
2800
2801 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2802
2803         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2804         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2805         (test_mkdir_recursive): Likewise.
2806         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2807
2808 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2809
2810         * valarith.c (value_subscripted_rvalue): If an array is not in
2811         memory, and we don't know the upper bound, then we can't know that
2812         the requested element exists or not.
2813
2814 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2815
2816         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2817         (target_options_to_string): Add comment.
2818
2819 2018-08-08  Tom Tromey  <tom@tromey.com>
2820
2821         * unittests/scoped_mmap-selftests.c: Check result of "write".
2822
2823 2018-08-08  Jim Wilson  <jimw@sifive.com>
2824
2825         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2826         (decode_register_index_short): New.
2827         (decode_j_type_insn, decode_cj_type_insn): New.
2828         (decode_b_type_insn, decode_cb_type_insn): New.
2829         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2830         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2831         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2832         is_c_sw_insn instead of is_sw_insn.
2833         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2834         (riscv_software_single_step): New.
2835         * riscv-tdep.h (riscv_software_single_step): Declare.
2836
2837         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2838         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2839
2840 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2841
2842         PR gdb/18050:
2843         * target.c (dispose_inferior): Don't dispose of inferiors that are
2844         already killed.
2845
2846 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2847
2848         * remote.c (remote_target::download_tracepoint): Change char* to
2849         const char*.
2850
2851 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2852
2853         * target.h (target_options_to_string): Return an std::string.
2854         * target.c (str_comma_list_concat_elem): Return void, use
2855         std::string.
2856         (do_option): Likewise.
2857         (target_options_to_string): Return an std::string.
2858         * linux-nat.c (linux_nat_target::wait): Adjust.
2859         * target-debug.h (target_debug_print_options): Adjust.
2860
2861 2018-08-07  Tom Tromey  <tom@tromey.com>
2862
2863         * Makefile.in (CPPFLAGS): New variable.
2864         (INTERNAL_CPPFLAGS): Use it.
2865
2866 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2867
2868         * NEWS: Mention the index cache.
2869
2870 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2871
2872         * common/pathstuff.h (get_standard_cache_dir): New.
2873         * common/pathstuff.c (get_standard_cache_dir): New.
2874         * build-id.h (build_id_to_string): New.
2875         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2876         DEBUG_STR_SUFFIX): Move to here.
2877         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2878         DEBUG_STR_SUFFIX): Move from there.
2879         (write_psymtabs_to_index): Make non-static, add basename
2880         parameter.  Write to temporary files, rename when done.
2881         (save_gdb_index_command): Adjust call to
2882         write_psymtabs_to_index.
2883         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2884         field.
2885         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2886         (get_gdb_index_contents_from_cache): New.
2887         (get_gdb_index_contents_from_cache_dwz): New.
2888         (dwarf2_initialize_objfile): Read index from cache.
2889         (dwarf2_build_psymtabs): Save to index.
2890         * dwarf-index-cache.h: New file.
2891         * dwarf-index-cache.c: New file.
2892         * dwarf-index-write.h: New file.
2893
2894 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2895
2896         * gnulib/aclocal.m4: Re-generate.
2897         * gnulib/config.in: Re-generate.
2898         * gnulib/configure: Re-generate.
2899         * gnulib/import/Makefile.am: Re-generate.
2900         * gnulib/import/Makefile.in: Re-generate.
2901         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2902         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2903         * gnulib/import/m4/mkdir.m4: New file.
2904         * gnulib/import/mkdir.c: New file.
2905         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2906         module.
2907
2908 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2909
2910         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2911         * common/scoped_mmap.c: New file.
2912         * common/scoped_mmap.h (destroy): New method.
2913         (~scoped_mmap, reset): Use destroy.
2914         (scoped_mmap): New move constructor.
2915         (mmap_file): New declaration.
2916         * unittests/scoped_mmap-selftests.c (test_normal,
2917         test_invalid_filename, run_tests): New functions.
2918         (_initialize_scoped_mmap_selftests): Register selftest.
2919
2920 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2921
2922         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2923         (read_gdb_index_from_buffer): ... this.  Remove section
2924         parameter, add buffer parameter.
2925         (get_gdb_index_contents_ftype,
2926         get_gdb_index_contents_dwz_ftype): New typedefs.
2927         (dwarf2_read_gdb_index): Add callback parameters to get the
2928         index contents.
2929         (get_gdb_index_contents_from_section): New.
2930         (dwarf2_initialize_objfile): Update call to
2931         dwarf2_read_gdb_index.
2932
2933 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2934
2935         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2936         (gdb_open_cloexec): Likewise.
2937         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2938         (commandline_from_pid): Likewise.
2939         (linux_xfer_osdata_threads): Likewise.
2940         (linux_xfer_osdata_fds): Likewise.
2941         * ada-lang.c (is_package_name): Likewise.
2942         * auxv.c (procfs_xfer_auxv): Likewise.
2943         * breakpoint.c (print_one_breakpoint_location): Use
2944         uiout::field_fmt.
2945         (print_one_catch_solib): Use string_printf.
2946         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2947         (add_pe_forwarded_sym): Likewise.
2948         * dwarf2read.c (create_type_unit_group): Likewise.
2949         (build_error_marker_type): Likewise.
2950         * infcall.c (get_function_name): Likewise.
2951         * valprint.c (print_converted_chars_to_obstack): Likewise.
2952         * xtensa-tdep.c (xtensa_register_type): Likewise.
2953
2954 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2955
2956         * remote.c (remote_target::download_tracepoint): Fix format
2957         string errors.
2958
2959 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2960
2961         * tracefile.c: Include common/byte-vector.h.
2962         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2963         with trace_regblock_size if needed.  Update uses of buf.
2964
2965 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2966
2967         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2968         std::vector<unsigned char>.
2969         * tracepoint.c (collection_list::collection_list): Remove
2970         m_regs_mask initializer from initializer list.  Resize
2971         m_regs_mask using the largest remote register number.
2972         (collection_list::add_remote_register): Remove size check on
2973         m_regs_mask.  Use at to access element.
2974         (collection_list::stringify): Change type of temp_buf to
2975         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2976         stringify the register mask.  Use pack_hex_byte for the register
2977         mask.
2978
2979 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2980
2981         * tracepoint.h (class collection_list) <add_register>: Remove.
2982         <add_remote_register, add_ax_registers, add_local_register>:
2983         Declare.
2984         <add_memrange>: Add scope parameter.
2985         * tracepoint.c (encode_actions_1): Likewise.
2986         (collection_list::add_register): Rename to ...
2987         (collection_list::add_remote_register): ... this.  Update
2988         comment.
2989         (collection_list::add_ax_registers, add_local_register): New
2990         methods.
2991         (collection_list::add_memrange): Add scope parameter.  Call
2992         add_local_register instead of add_register.
2993         (finalize_tracepoint_aexpr): New function.
2994         (collection_list::collect_symbol): Update calls to add_memrange.
2995         Call add_local_register instead of add_register.  Call
2996         add_ax_registers.  Call finalize_tracepoint_aexpr.
2997         (encode_actions_1): Get remote regnos for $reg action.  Call
2998         add_remote_register, add_ax_registers, and add_local_register.
2999         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3000         (validate_actionline): Call finalize_tracepoint_aexpr.
3001
3002 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3003
3004         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3005         Replace array buf with gdb::char_vector buf, of size
3006         get_remote_packet_size ().  Replace references to buf and
3007         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3008         and xsnprintf with snprintf.  Raise errors if the buffer is too
3009         small.
3010
3011 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3012
3013         * remote.c (remote_target::download_tracepoint): Fix the has_more
3014         predicate in the QTDP action list iteration.
3015
3016 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3017
3018         * remote.c (remote_target::download_tracepoint): Fix indentation
3019         in for block.
3020
3021 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3022
3023         * proc-api.c (_initialize_proc_api): Remove c, unused.
3024         * procfs.c (procfs_init_inferior): Remove signals, unused.
3025         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3026         unused.
3027
3028 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3029             Andrew Burgess  <andrew.burgess@embecosm.com>
3030
3031         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3032         'W_STOPCODE (0)' as this could be ambiguous.
3033
3034 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3035
3036         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3037         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3038         "ai_socktype").
3039
3040 2018-08-02  Tom Tromey  <tom@tromey.com>
3041
3042         PR symtab/16842.
3043         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3044         symbols.
3045         (process_structure_scope): Likewise.
3046
3047 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3048
3049         PR gdb/22629:
3050         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3051         kill inferior.
3052
3053 2018-08-02  Tom Tromey  <tom@tromey.com>
3054
3055         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3056         (darwin_suspend_inferior, darwin_resume_inferior)
3057         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3058         (darwin_check_new_threads): Check result of get_darwin_inferior.
3059
3060 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3061
3062         GDB 8.1.1 released.
3063
3064 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3065
3066         * varobj.c (varobj_get_path_expr_parent): Report an error if
3067         parent is a dynamic varobj.
3068
3069 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3070
3071         * gnulib/aclocal.m4: Re-generate.
3072         * gnulib/config.in: Re-generate.
3073         * gnulib/configure: Re-generate.
3074         * gnulib/import/Makefile.in: Re-generate.
3075         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3076         * gnulib/import/m4/onceonly.m4: Re-generate.
3077
3078 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3079
3080         * target-descriptions.c (struct xml_test_tdesc): New.
3081         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3082         (record_xml_tdesc): Update.
3083         (maintenance_check_xml_descriptions): Update.
3084         * target-descriptions.h (record_xml_tdesc): Update comment.
3085
3086 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3087
3088         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3089         checking array bounds are defined.
3090
3091 2018-07-30  Tom Tromey  <tom@tromey.com>
3092
3093         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3094         irreflexivity violation.
3095
3096 2018-07-30  Tom Tromey  <tom@tromey.com>
3097
3098         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3099         * value.c (unpack_long): Remove lint code.
3100         * valops.c (value_ind): Remove lint code.
3101         * valarith.c (value_x_binop, value_x_unop, value_equal)
3102         (value_pos): Remove lint code.
3103
3104 2018-07-28  Tom de Vries  <tdevries@suse.de>
3105
3106         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3107         with undefined upper bound as <optimized out>.
3108
3109 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3110
3111         * gcore.in: Rename variable "name" to "prefix".  Expand
3112         "usage" text.
3113
3114 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3115
3116         * windows-nat.c (windows_nat_target::create_inferior): Update to
3117         call close() in global namespace.
3118
3119 2018-07-26  Tom Tromey  <tom@tromey.com>
3120
3121         * dwarf-index-write.c (add_address_entry): Don't add objfile
3122         offsets.
3123         * dbxread.c (find_stab_function): Rename from
3124         find_stab_function_addr.  Return a bound_minimal_symbol.
3125         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3126         Don't add objfile offsets.
3127         (end_psymtab): Use raw_text_low, raw_text_high,
3128         MSYMBOL_VALUE_RAW_ADDRESS.
3129         (read_ofile_symtab): Update.
3130         (process_one_symbol): Update.
3131         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3132         offsets.
3133         (dw2_relocate): Remove.
3134         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3135         searching addrmap.
3136         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3137         Update.
3138         (process_psymtab_comp_unit_reader, add_partial_symbol)
3139         (add_partial_subprogram, dwarf2_ranges_read): Update.
3140         (load_partial_dies): Update.
3141         (add_address_entry): Don't add objfile offsets.
3142         (dwarf2_build_include_psymtabs): Update.
3143         (create_addrmap_from_aranges): Don't add objfile offsets.
3144         (dw2_find_pc_sect_compunit_symtab): Update.
3145         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3146         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3147         Update.
3148         (parse_partial_symbols): Don't add objfile offsets.  Use
3149         raw_text_low, raw_text_high.  Update.
3150         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3151         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3152         or call 'relocate' quick function.  Clear psymbol_map.
3153         * psympriv.h (struct partial_symbol) <address>: Add section
3154         offset.
3155         <set_unrelocated_address>: Rename from set_address.
3156         <raw_text_low, raw_text_high>: New methods.
3157         <text_low, text_high>: Add objfile parameter.
3158         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3159         set_unrelocated_address.
3160         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3161         (find_pc_psymbol): Update.
3162         (fixup_psymbol_section, relocate_psymtabs): Remove.
3163         (dump_psymtab, psym_functions): Update.
3164         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3165         parameter.
3166         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3167         (start_psymtab_common): Update.
3168         * symfile-debug.c (debug_qf_relocate): Remove.
3169         (debug_sym_quick_functions): Update.
3170         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3171         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3172         Update.
3173
3174 2018-07-26  Tom Tromey  <tromey@redhat.com>
3175
3176         * dbxread.c (end_psymtab): Use text_high_valid and
3177         text_low_valid.
3178         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3179         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3180         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3181         Update comment.
3182         <text_low_valid, text_high_valid>: New fields.
3183         <set_text_low, set_text_high>: Update.
3184         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3185
3186 2018-07-26  Tom Tromey  <tom@tromey.com>
3187
3188         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3189         Update.
3190         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3191         textlow and texthigh fields.
3192         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3193         Update.
3194         * mdebugread.c (parse_lines, parse_partial_symbols)
3195         (psymtab_to_symtab_1): Update.
3196         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3197         Rename fields.  Update comment.  Now private.
3198         <text_low, text_high, set_text_low, set_text_high>: New methods.
3199         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3200         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3201         (start_psymtab_common, maintenance_info_psymtabs)
3202         (maintenance_check_psymtabs): Update.
3203         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3204         texthigh fields.
3205         (scan_xcoff_symtab): Update.
3206
3207 2018-07-26  Tom Tromey  <tromey@redhat.com>
3208
3209         * psympriv.h (struct partial_symbol) <unrelocated_address,
3210         address, set_address>: New methods.
3211         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3212         (fixup_psymbol_section, relocate_psymtabs): Update.
3213         (print_partial_symbols): Add 'objfile' parameter.  Update.
3214         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3215         Update.
3216
3217 2018-07-26  Tom Tromey  <tom@tromey.com>
3218
3219         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3220         (debug_names::write_psymbols): Update.
3221         * psympriv.h (struct partial_symbol): Derive from
3222         general_symbol_info.
3223         <obj_section>: New method.
3224         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3225         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3226         (find_pc_sect_psymbol, fixup_psymbol_section)
3227         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3228         (print_partial_symbols, recursively_search_psymtabs)
3229         (compare_psymbols, psymbol_hash, psymbol_compare)
3230         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3231         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3232
3233 2018-07-26  Tom Tromey  <tromey@redhat.com>
3234
3235         * dbxread.c (end_psymtab): Remove dead code.
3236
3237 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3238
3239         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3240         DWARF unwinders are disabled.
3241         * dwarf2-frame.c: Add dwarf2read.h include.
3242         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3243         disabled.
3244         (dwarf2_frame_unwinders_enabled_p): Define.
3245         (show_dwarf_unwinders_enabled_p): New function.
3246         (_initialize_dwarf2_frame): Register switch to control DWARF
3247         unwinder use.
3248         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3249         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3250         (show_dwarf_cmdlist): Remove static keyword.
3251         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3252         (show_dwarf_cmdlist): Declare.
3253         * NEWS: Document new feature.
3254
3255 2018-07-26  Tom de Vries  <tdevries@suse.de>
3256
3257         PR breakpoints/23366
3258         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3259
3260 2018-07-26  Tom de Vries  <tdevries@suse.de>
3261
3262         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3263         DW_AT_count can't be translated to a dynamic prop.
3264
3265 2018-07-25  Tom de Vries  <tdevries@suse.de>
3266
3267         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3268         try/catch.
3269
3270 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3271
3272         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3273
3274 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3275
3276         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3277
3278 2018-07-24  Keith Seitz  <keiths@redhat.comt
3279
3280         PR symtab/23010
3281         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3282         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3283         instead of add_symbol_to_list.
3284         (read_file_scope): Call prepare_one_comp_unit before reading
3285         any other DIEs.
3286
3287 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3288
3289         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3290
3291 2018-07-24  Tom Tromey  <tom@tromey.com>
3292
3293         * utils.c (malloc, realloc, free): Don't declare.
3294         * configure, config.in: Rebuild.
3295         * configure.ac: Don't check for declarations of free, malloc, or
3296         realloc.
3297
3298 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3299
3300         * aarch64-linux-nat.c
3301         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3302         variable.
3303         * arm-linux-nat.c (fetch_regs): Likewise.
3304         (store_regs): Likewise.
3305         (fetch_vfp_regs): Likewise.
3306         (store_vfp_regs): Likewise.
3307         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3308         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3309         (arm_linux_nat_target::insert_watchpoint): Likewise.
3310         (arm_linux_nat_target::remove_watchpoint): Likewise.
3311         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3312         Likewise.
3313         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3314         Likewise.
3315         * ppc-linux-nat.c (fetch_register): Likewise.
3316         (fetch_all_gp_regs): Likewise.
3317         (fetch_ppc_registers): Likewise.
3318         (store_all_gp_regs): Likewise.
3319         (store_ppc_registers): Likewise.
3320         (hwdebug_insert_point): Likewise.
3321         (can_use_watchpoint_cond_accel): Likewise.
3322         * remote-sim.c (gdb_os_write_stdout): Likewise.
3323
3324 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3325             Tom Tromey  <tom@tromey.com>
3326
3327         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3328         test for it.
3329         * configure: Rebuild.
3330
3331 2018-07-22  Tom Tromey  <tom@tromey.com>
3332
3333         * regformats/regdat.sh: Define xmltarget_${name} inside
3334         #ifndef IN_PROCESS_AGENT.
3335
3336 2018-07-22  Tom Tromey  <tom@tromey.com>
3337
3338         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3339
3340 2018-07-22  Tom Tromey  <tom@tromey.com>
3341
3342         * symfile.c (reread_symbols): Notify iter, not objfile.
3343
3344 2018-07-22  Tom Tromey  <tom@tromey.com>
3345
3346         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3347         Use arch_ops.
3348         (ravenscar_thread_target::prepare_to_store): Likewise.
3349
3350 2018-07-22  Tom Tromey  <tom@tromey.com>
3351
3352         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3353         unused variable.  Call value_fetch_lazy when needed.
3354         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3355         Remove unused variable.  Call value_fetch_lazy when needed.
3356
3357 2018-07-22  Tom Tromey  <tom@tromey.com>
3358
3359         * m32c-tdep.c (mark_dma): Return void.
3360         (make_regs): Remove unused declarations.
3361
3362 2018-07-22  Tom Tromey  <tom@tromey.com>
3363
3364         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3365         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3366         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3367         bkscm_get_valid_block_smob_arg_unsafe for effect.
3368
3369 2018-07-22  Tom Tromey  <tom@tromey.com>
3370
3371         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3372         value_type.
3373
3374 2018-07-22  Tom Tromey  <tom@tromey.com>
3375
3376         * windows-nat.c (saved_context): Conditionally define.
3377         * remote.c (remote_target::remote_btrace_maybe_reopen):
3378         Conditionally declare "warned".
3379         * inflow.c (sigquit_ours): Conditionally define.
3380         (new_tty): Move "tty" declaration inside #if.
3381         * guile/guile.c (guile_datadir): Conditionally define.
3382         * charset.c (set_be_le_names): Move some declarations inside #if.
3383         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3384         #if.
3385         (parse_xml_btrace_conf): Likewise.
3386
3387 2018-07-22  Tom Tromey  <tom@tromey.com>
3388
3389         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3390
3391 2018-07-22  Tom Tromey  <tom@tromey.com>
3392
3393         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3394         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3395         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3396         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3397         * stack.c (frame_apply_level_command): Remove unused variable.
3398         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3399         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3400         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3401         unused variable.
3402         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3403         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3404         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3405         variable.
3406         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3407         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3408         variable.
3409         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3410         Remove unused variable.
3411         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3412         variable.
3413         * common/tdesc.c (print_xml_feature::visit): Remove unused
3414         variable.
3415         * compile/compile-object-load.c (store_regs): Remove unused
3416         variables.
3417         * complaints.c (clear_complaints): Remove unused variable.
3418         * corelow.c (core_target_open): Remove unused variable.
3419         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3420         variable.
3421         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3422         variable.
3423         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3424         variable.
3425         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3426         variable.
3427         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3428         variable.
3429         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3430         variable.
3431         * ia64-tdep.c (examine_prologue): Remove unused variable.
3432         * infcall.c (run_inferior_call): Remove unused variable.
3433         * inferior.c (exit_inferior): Remove unused variable.
3434         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3435         * linespec.c (decode_line_2): Remove unused variable.
3436         * linux-nat.c (super_close): Remove.
3437         * linux-tdep.c (linux_info_proc): Remove unused variable.
3438         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3439         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3440         Remove unused variable.
3441         * parse.c (find_minsym_type_and_address): Remove unused variable.
3442         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3443         variable.
3444         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3445         variable.
3446         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3447         variables.
3448         * record-btrace.c (record_btrace_target::store_registers): Remove
3449         unused variable.
3450         (cmd_show_record_btrace_cpu): Remove unused variable.
3451         * riscv-tdep.c (riscv_register_reggroup_p)
3452         (riscv_push_dummy_call, riscv_return_value): Remove unused
3453         variable.
3454         * rust-exp.y (literal): Remove unused variable.
3455         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3456         unused variable.
3457         <STRUCTOP_ANONYMOUS>: Likewise.
3458         * s390-linux-tdep.c (s390_linux_init_abi_31)
3459         (s390_linux_init_abi_64): Remove unused variable.
3460         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3461         (file_select_thread, net_windows_open, _initialize_ser_windows):
3462         Remove unused variables.
3463         * symtab.c (find_pc_sect_line): Remove unused variable.
3464         * target-memory.c (compute_garbled_blocks): Remove unused
3465         variable.
3466         (target_write_memory_blocks): Remove unused variable.
3467         * target.c (target_stack::unpush): Remove unused variables.
3468         * tracepoint.c (start_tracing, all_tracepoint_actions)
3469         (merge_uploaded_trace_state_variables)
3470         (print_one_static_tracepoint_marker): Remove unused variable.
3471         * unittests/basic_string_view/element_access/char/1.cc (test01):
3472         Remove unused variable.
3473         * windows-nat.c (windows_continue, windows_add_all_dlls)
3474         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3475         Remove unused variables.
3476
3477 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3478
3479         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3480         attr_profile in HAVE_ELF.
3481         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3482         HAVE_ELF.
3483
3484 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3485
3486         * frame.c (frame_register_unwind): Change parameter name.
3487         (frame_unwind_register): Likewise.
3488         (frame_unwind_register_value): Likewise.
3489         (frame_unwind_register_signed): Likewise.
3490         (frame_unwind_register_unsigned): Likewise.
3491         * frame.h (frame_register_unwind): Likewise.
3492         (frame_unwind_register): Likewise.
3493         (frame_unwind_register_value): Likewise.
3494         (frame_unwind_register_signed): Likewise.
3495         (frame_unwind_register_unsigned): Likewise.
3496         (frame_unwind_arch): Likewise.
3497
3498 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3499
3500         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3501         ISA maintenance.
3502
3503 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3504
3505         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3506         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3507         hand.
3508
3509 2018-07-20  Keith Seitz  <keiths@redhat.com>
3510
3511         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3512         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3513         m_compunit_symtab, m_language>: Add "m_" prefix.
3514         Update all uses.
3515         * buildsym.c: Update all uses.
3516
3517 2018-07-20  Tom Tromey  <tom@tromey.com>
3518
3519         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3520         * buildsym.h (record_line_ftype): Remove typedef.
3521
3522 2018-07-20  Tom Tromey  <tom@tromey.com>
3523
3524         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3525         (end_expandable_symtab): Likewise.
3526         (end_symtab_get_static_block): Likewise.
3527         (end_symtab_from_static_block): Likewise.
3528         * buildsym-legacy.c (augment_type_symtab): Remove.
3529         (end_expandable_symtab): Remove.
3530         (end_symtab_get_static_block): Remove.
3531         (end_symtab_from_static_block): Remove.
3532
3533 2018-07-20  Tom Tromey  <tom@tromey.com>
3534
3535         * dwarf2read.c: Include buildsym.h.
3536         (struct dwarf2_cu) <builder>: New method.
3537         (fixup_go_packaging): Update.
3538         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3539         use scoped_free_pendings.
3540         (using_directives): Add "cu" parameter, remove "language".
3541         (read_import_statement, setup_type_unit_groups, )
3542         (read_func_scope, read_lexical_block_scope)
3543         (dwarf2_record_block_ranges, read_namespace): Update.
3544         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3545         (lnp_state_machine::handle_end_sequence): Update.
3546         (class lnp_state_machine) <m_cu>: New member.
3547         <m_record_line_callback>: Remove.
3548         <m_currently_recording_lines>: New member.
3549         (lnp_state_machine::handle_set_file): Update.
3550         (noop_record_line): Remove.
3551         (dwarf_record_line_p): Add cu parameter.
3552         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3553         (lnp_state_machine::record_line)
3554         (lnp_state_machine::lnp_state_machine)
3555         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3556         (dwarf_decode_lines): Update.
3557         (dwarf2_start_subfile): Add cu parameter.
3558         (dwarf2_start_symtab, new_symbol): Update.
3559         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3560         Remove dwarf2_per_objfile parameter.
3561         (dwarf_decode_macros): Update.
3562
3563 2018-07-20  Tom Tromey  <tom@tromey.com>
3564
3565         * stabsread.c (define_symbol): Update.
3566         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3567         * dwarf2read.c (new_symbol): Update.
3568         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3569         * cp-namespace.c: Include buildsym.h.
3570         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3571         * buildsym-legacy.c (get_buildsym_compunit): New function.
3572
3573 2018-07-20  Tom Tromey  <tom@tromey.com>
3574
3575         * xcoffread.c: Include buildsym-legacy.h.
3576         * windows-nat.c: Include buildsym-legacy.h.
3577         * stabsread.c: Include buildsym-legacy.h.
3578         * mdebugread.c: Include buildsym-legacy.h.
3579         * buildsym-legacy.h: New file.
3580         * buildsym-legacy.c: New file, from buildsym.c.
3581         * go32-nat.c: Include buildsym-legacy.h.
3582         * dwarf2read.c: Include buildsym-legacy.h.
3583         * dbxread.c: Include buildsym-legacy.h.
3584         * cp-namespace.c: Include buildsym-legacy.h.
3585         * coffread.c: Include buildsym-legacy.h.
3586         * buildsym.h: Move some contents to buildsym-legacy.h.
3587         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3588         buildsym-legacy.c.
3589         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3590
3591 2018-07-20  Tom Tromey  <tom@tromey.com>
3592
3593         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3594         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3595         (buildsym_compunit::buildsym_compunit)
3596         (buildsym_compunit::~buildsym_compunit)
3597         (buildsym_compunit::get_macro_table): Define.
3598
3599 2018-07-20  Tom Tromey  <tom@tromey.com>
3600
3601         * buildsym.c (reset_symtab_globals): Remove.
3602         (buildsym_compunit::end_symtab_from_static_block): Update.
3603         (buildsym_compunit::augment_type_symtab): Update.
3604         (end_symtab_from_static_block): Call free_buildsym_compunit.
3605         (augment_type_symtab, end_symtab, end_expandable_symtab):
3606         Likewise.
3607
3608 2018-07-20  Tom Tromey  <tom@tromey.com>
3609
3610         * arch-utils.c: Do not include buildsym.h.
3611         * mipsread.c: Do not include buildsym.h.
3612         * machoread.c: Do not include buildsym.h.
3613         * elfread.c: Do not include buildsym.h.
3614
3615 2018-07-20  Tom Tromey  <tom@tromey.com>
3616
3617         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3618         initialization.
3619         (buildsym_compunit): Add new constructor.
3620         (struct buildsym_compunit) <get_last_source_file, finish_block,
3621         record_block_range, start_subfile, patch_subfile_names,
3622         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3623         set_last_source_start_addr, get_last_source_start_addr,
3624         get_local_using_directives, set_local_using_directives,
3625         get_global_using_directives, outermost_context_p,
3626         get_current_context_stack, get_context_stack_depth,
3627         get_current_subfile, get_local_symbols, get_file_symbols,
3628         get_global_symbols, record_debugformat, record_producer,
3629         push_context, pop_context, end_symtab_get_static_block,
3630         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3631         New public methods.
3632         <record_pending_block, finish_block_internal, make_blockvector,
3633         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3634         private methods.
3635         Update all users.
3636
3637 2018-05-22  Tom Tromey  <tom@tromey.com>
3638
3639         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3640         parameter.
3641         (finish_block_internal): Update.
3642
3643 2018-07-20  Tom Tromey  <tom@tromey.com>
3644
3645         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3646         parameter.
3647         (finish_block_internal): Update.
3648
3649 2018-07-20  Tom Tromey  <tom@tromey.com>
3650
3651         * buildsym.h (EXTERN): Don't define or undef.
3652         * buildsym.c (EXTERN): Don't define.
3653
3654 2018-07-20  Tom Tromey  <tom@tromey.com>
3655
3656         * buildsym.c: Remove TODO comment.
3657
3658 2018-07-20  Tom Tromey  <tom@tromey.com>
3659
3660         * coffread.c (coff_symtab_read): Update.
3661         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3662         (xcoff_new_init): Update.
3663         * mipsread.c (mipscoff_new_init): Update.
3664         * mdebugread.c (mdebug_build_psymtabs): Update.
3665         * elfread.c (elf_new_init): Update.
3666         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3667         Update.
3668         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3669         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3670         (stabsect_build_psymtabs): Update.
3671         * buildsym.h (buildsym_init): Don't declare.
3672         * buildsym.c: Update comment.
3673         (prepare_for_building): Remove.
3674         (start_symtab, restart_symtab): Update.
3675         (reset_symtab_globals): Update comment.
3676         (buildsym_init): Remove.
3677
3678 2018-07-20  Tom Tromey  <tom@tromey.com>
3679
3680         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3681         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3682         (read_enum_type, common_block_start, common_block_end)
3683         (cleanup_undefined_types_1, finish_global_stabs): Update.
3684         * mdebugread.c (psymtab_to_symtab_1): Update.
3685         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3686         (read_lexical_block_scope, new_symbol): Update.
3687         * dbxread.c (process_one_symbol): Update.
3688         * coffread.c (coff_symtab_read, process_coff_symbol)
3689         (coff_read_enum_type): Update.
3690         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3691         declare.
3692         (get_local_symbols, get_file_symbols, get_global_symbols): New
3693         functions.
3694         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3695         m_global_symbols.
3696         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3697         (~scoped_free_pendings): Update.
3698         (finish_block, prepare_for_building, reset_symtab_globals)
3699         (end_symtab_get_static_block, end_symtab_with_blockvector)
3700         (augment_type_symtab, push_context): Update.
3701         (get_local_symbols, get_file_symbols, get_global_symbols): New
3702         functions.
3703         (buildsym_init): Update.
3704
3705 2018-07-20  Tom Tromey  <tom@tromey.com>
3706
3707         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3708         (process_full_type_unit): Likewise.
3709         (dwarf2_start_symtab): Set list_in_scope.
3710
3711 2018-07-20  Tom Tromey  <tom@tromey.com>
3712
3713         * dwarf2read.c (process_psymtab_comp_unit_reader)
3714         (build_type_psymtabs_reader): Do not set list_in_scope.
3715
3716 2018-07-20  Tom Tromey  <tom@tromey.com>
3717
3718         * buildsym.c (free_pendings): Remove.
3719         (add_symbol_to_list, scoped_free_pendings)
3720         (finish_block_internal, buildsym_init): Update.
3721
3722 2018-07-20  Tom Tromey  <tom@tromey.com>
3723
3724         * xcoffread.c (read_xcoff_symtab): Update.
3725         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3726         Update.
3727         * dbxread.c (process_one_symbol): Update.
3728         * coffread.c (coff_symtab_read): Update.
3729         * buildsym.h (finish_block): Update.
3730         * buildsym.c (finish_block): Remove "listhead" argument.
3731         (end_symtab_get_static_block): Update.
3732
3733 2018-07-20  Tom Tromey  <tom@tromey.com>
3734
3735         * buildsym.h (class scoped_free_pendings): Remove constructor.
3736         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3737         method.
3738         <m_pending_block_obstack, m_pending_blocks>: New members.
3739         (pending_block_obstack, pending_blocks): Remove.
3740         (scoped_free_pendings::scoped_free_pendings): Default.
3741         (~scoped_free_pendings): Update.
3742         (free_pending_blocks): Remove.
3743         (finish_block_internal, record_pending_block, make_blockvector)
3744         (end_symtab_get_static_block, augment_type_symtab, push_context)
3745         (buildsym_init): Update.
3746
3747 2018-07-20  Tom Tromey  <tom@tromey.com>
3748
3749         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3750         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3751         members.
3752         (pending_addrmap, pending_addrmap_obstack)
3753         (pending_addrmap_interesting): Remove.
3754         (scoped_free_pendings, record_block_range, make_blockvector)
3755         (prepare_for_building, reset_symtab_globals, buildsym_init):
3756         Update.
3757
3758 2018-07-20  Tom Tromey  <tom@tromey.com>
3759
3760         * xcoffread.c (process_linenos): Update.
3761         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3762         * mdebugread.c (psymtab_to_symtab_1): Update.
3763         * dwarf2read.c (setup_type_unit_groups)
3764         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3765         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3766         * dbxread.c (process_one_symbol): Update.
3767         * coffread.c (coff_symtab_read, enter_linenos)
3768         (process_coff_symbol): Update.
3769         * buildsym.h (current_subfile): Don't declare.
3770         (get_current_subfile): Declare.
3771         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3772         member.
3773         (start_subfile, free_buildsym_compunit, push_subfile)
3774         (prepare_for_building, start_symtab): Update.
3775         (get_current_subfile): New function.
3776
3777 2018-07-20  Tom Tromey  <tom@tromey.com>
3778
3779         * coffread.c (coff_symtab_read): Update.
3780         * xcoffread.c (read_xcoff_symtab): Update.
3781         * dwarf2read.c (new_symbol): Update.
3782         (read_func_scope, read_lexical_block_scope): Update.
3783         * dbxread.c (process_one_symbol): Update.
3784         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3785         (outermost_context_p): Remove macro.
3786         (outermost_context_p, get_current_context_stack)
3787         (get_context_stack_depth): Declare.
3788         (pop_context): Return struct context_stack.
3789         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3790         member.
3791         (context_stack_size): Remove.
3792         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3793         (prepare_for_building, end_symtab_get_static_block)
3794         (augment_type_symtab, push_context): Update.
3795         (pop_context): Return struct context_stack.
3796         (outermost_context_p, get_current_context_stack)
3797         (get_context_stack_depth): New functions.
3798         (buildsym_init): Update.
3799
3800 2018-07-20  Tom Tromey  <tom@tromey.com>
3801
3802         * rust-exp.y: Now a pure parser.  Update all rules.
3803         (%union): Move earlier.
3804         (current_parser, work_obstack): Remove globals.
3805         (rust_parser, ~rust_parser): Update.
3806         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3807         lex_character, lex_number, lex_string, lex_identifier,
3808         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3809         convert_name, convert_params_to_expression,
3810         convert_ast_to_expression, ast_basic_type, ast_operation,
3811         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3812         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3813         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3814         ast_array_type, ast_slice_type, ast_reference_type,
3815         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3816         (rust_parse): Update.
3817         (rustyyerror, rustyylex): Add parser parameter.
3818         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3819         (rust_lex_stringish_test, rust_lex_test_sequence)
3820         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3821         (rust_lex_test_push_back, rust_lex_tests): Update.
3822
3823 2018-07-19  Pedro Alves  <palves@redhat.com>
3824
3825         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3826         gdb::unique_xmalloc_ptr.
3827         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3828         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3829         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3830         copy-initialization.
3831         * guile/scm-pretty-print.c (ppscm_print_children): Use
3832         gdb::unique_xmalloc_ptr instead of cleanups.
3833         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3834         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3835         gdb::unique_xmalloc_ptr.
3836         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3837         Adjust to use gdb::unique_xmalloc_ptr.
3838         * guile/scm-utils.c (extract_arg): Adjust.
3839         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3840         gdb::unique_xmalloc_ptr instead of a cleanup.
3841
3842 2018-07-19  Tom Tromey  <tom@tromey.com>
3843
3844         * utils.c (do_value_free_to_mark)
3845         (make_cleanup_value_free_to_mark): Remove.
3846         * utils.h (make_cleanup_value_free_to_mark): Remove.
3847
3848 2018-07-19  Pedro Alves  <palves@redhat.com>
3849
3850         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3851         forwarding reference.
3852
3853 2018-07-18  Pedro Alves  <palves@redhat.com>
3854
3855         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3856         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3857         cleanup.
3858
3859 2018-07-18  Pedro Alves  <palves@redhat.com>
3860
3861         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3862         exceptions.
3863         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3864         (gdbscm_wrap): New.
3865         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3866         directly instead of a cleanup.
3867         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3868         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3869         (vlscm_binop_gdbthrow): New, factored out from ...
3870         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3871         (vlscm_rich_compare): Use gdbscm_wrap.
3872         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3873         instead of a cleanup.
3874         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3875         cleanup.
3876         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3877         Use xfree directly instead of a cleanup.
3878         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3879         Adjust to use gdbscm_wrap and scoped_value_mark.
3880         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3881         (gdbscm_value_address, gdbscm_value_dereference)
3882         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3883         scoped_value_mark.
3884         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3885         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3886         scoped_value_mark.
3887         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3888         gdbscm_wrap and scoped_value_mark.
3889         (gdbscm_value_to_string): Use xfree directly instead of a
3890         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3891         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3892         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3893         scoped_value_mark.
3894         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3895         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3896         scoped_value_mark.
3897         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3898         gdbscm_wrap.
3899
3900 2018-07-18  Tom de Vries  <tdevries@suse.de>
3901
3902         * findvar.c (default_read_var_value): Also resolve dynamic type for
3903         LOC_OPTIMIZED_OUT vars.
3904
3905 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3906
3907         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3908         decoding.
3909
3910 2018-07-17  Tom Tromey  <tom@tromey.com>
3911
3912         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3913         (compute_enum_list, pascm_set_param_value_x)
3914         (gdbscm_parameter_value): Update.
3915         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3916         (gdbscm_scm_to_host_string): Update.
3917         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3918         Update.
3919         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3920         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3921         * guile/scm-string.c (gdbscm_scm_to_string): Return
3922         unique_xmalloc_ptr.
3923         (gdbscm_scm_to_host_string): Likewise.
3924
3925 2018-07-17  Tom Tromey  <tom@tromey.com>
3926
3927         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3928         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3929         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3930         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3931         unique_xmalloc_ptr.
3932
3933 2018-07-17  Tom Tromey  <tom@tromey.com>
3934
3935         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3936         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3937         Update.
3938         * guile/scm-cmd.c (cmdscm_function): Update.
3939         * guile/scm-pretty-print.c
3940         (ppscm_print_exception_unless_memory_error): Update.
3941         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3942         Return unique_xmalloc_ptr.
3943
3944 2018-07-17  Tom Tromey  <tom@tromey.com>
3945
3946         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3947         Use string_printf.
3948
3949 2018-07-17  Jim Wilson  <jimw@sifive.com>
3950
3951         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3952         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3953         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3954         unecessary braces after EF_RISCV_RVC test.  Delete call to
3955         set_gdbarch_decr_pc_after_break.
3956
3957         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3958         RISCV_LAST_FP_REGNUM + 1.
3959         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3960
3961 2018-07-17  Tom Tromey  <tom@tromey.com>
3962
3963         * configure.ac: Remove --disable-gdbcli.
3964         * configure: Rebuild.
3965         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3966         (SUBDIR_CLI_CFLAGS): Remove.
3967         (SFILES): Use SUBDIR_CLI_SRCS.
3968         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3969
3970 2018-07-17  Tom Tromey  <tom@tromey.com>
3971
3972         PR gdb/18624:
3973         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3974
3975 2018-07-16  Jim Wilson  <jimw@sifive.com>
3976
3977         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3978
3979 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3980
3981         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3982         variable.
3983         (libunwind_frame_sniffer): Likewise.
3984         (libunwind_frame_prev_register): Likewise.
3985         (libunwind_sigtramp_frame_sniffer): Likewise.
3986         * ia64-tdep.c (ia64_access_reg): Likewise.
3987         (ia64_access_rse_reg): Likewise.
3988         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3989         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3990
3991 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3992
3993         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3994
3995 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3996
3997         * remote-sim.c (gdbsim_target::close,
3998         gdbsim_target::mourn_inferior): Remove unused variables.
3999
4000 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4001
4002         * ia64-tdep.c (ktab_buf): New global.
4003         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4004         (get_kernel_table): Adjust.
4005
4006 2018-07-16  Tom Tromey  <tom@tromey.com>
4007
4008         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4009         * dwarf2read.c (using_directives, new_symbol): Use
4010         outermost_context_p.
4011         * dbxread.c (process_one_symbol): Use outermost_context_p.
4012         * coffread.c (coff_symtab_read): Use outermost_context_p.
4013
4014 2018-07-16  Tom Tromey  <tom@tromey.com>
4015
4016         * dwarf2read.c (using_directives, read_func_scope)
4017         (read_lexical_block_scope): Update.
4018         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4019         * buildsym.h (local_using_directives, global_using_directives):
4020         Don't declare.
4021         (get_local_using_directives, set_local_using_directives)
4022         (get_global_using_directives): Declare.
4023         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4024         m_global_using_directives>: New members.
4025         (finish_block_internal, prepare_for_building)
4026         (reset_symtab_globals, end_symtab_get_static_block)
4027         (push_context): Update.
4028         (get_local_using_directives, set_local_using_directives)
4029         (get_global_using_directives): New functions.
4030         (buildsym_init): Update.
4031
4032 2018-07-16  Tom Tromey  <tom@tromey.com>
4033
4034         * xcoffread.c (xcoff_initial_scan): Don't call
4035         free_pending_blocks.
4036         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4037         * buildsym.h (class scoped_free_pendings): Add constructor.
4038         (free_pending_blocks): Don't declare.
4039         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4040         (free_pending_blocks): Now static.
4041
4042 2018-07-16  Tom Tromey  <tom@tromey.com>
4043
4044         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4045         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4046         member.
4047         (struct subfile_stack): Remove.
4048         (subfile_stack): Remove.
4049         (push_subfile, pop_subfile, buildsym_init): Update.
4050
4051 2018-07-16  Tom Tromey  <tom@tromey.com>
4052
4053         * buildsym.c (push_subfile): Use gdb_assert.
4054         (pop_subfile): Use gdb_assert.
4055
4056 2018-07-16  Tom Tromey  <tom@tromey.com>
4057
4058         * buildsym.h (merge_symbol_lists): Remove.
4059         * buildsym.c (merge_symbol_lists): Remove.
4060
4061 2018-07-16  Tom Tromey  <tom@tromey.com>
4062
4063         * stabsread.c (scan_file_globals): Update comment.
4064         * stabsread.h (scan_file_globals): Move from buildsym.h.
4065         * buildsym.h (scan_file_globals): Move to stabsread.h.
4066
4067 2018-07-16  Tom Tromey  <tom@tromey.com>
4068
4069         * xcoffread.c (xcoff_new_init): Update.
4070         * mipsread.c (mipscoff_new_init): Update.
4071         * mdebugread.c (mdebug_build_psymtabs): Update.
4072         * elfread.c (elf_new_init): Update.
4073         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4074         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4075         * buildsym.h (buildsym_new_init): Don't declare.
4076         * buildsym.c (buildsym_new_init): Remove.
4077
4078 2018-07-16  Tom Tromey  <tom@tromey.com>
4079
4080         * stabsread.h (within_function): Move from buildsym.h.
4081         * stabsread.c (start_stabs): Clear within_function.
4082         * coffread.c (coff_start_symtab): Clear within_function.
4083         * buildsym.h (within_function): Move to stabsread.h.
4084         * buildsym.c (prepare_for_building): Update.
4085
4086 2018-07-16  Tom Tromey  <tom@tromey.com>
4087
4088         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4089         * dwarf2read.c (dwarf2_start_symtab): Don't set
4090         processing_gcc_compilation.
4091         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4092
4093 2018-07-16  Tom Tromey  <tom@tromey.com>
4094
4095         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4096         (next_symbol_text_func): Move from buildsym.h.
4097         * stabsread.c (hashname): Move from buildsym.c.
4098         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4099         (next_symbol_text_func, hashname): Move to stabsread.h.
4100         * buildsym.c: Don't include bcache.h
4101         (hashname): Move to stasbread.c.
4102
4103 2018-07-16  Tom Tromey  <tom@tromey.com>
4104
4105         * buildsym.h (context_stack_size): Don't declare.
4106         * buildsym.c (context_stack_size): New global.
4107
4108 2018-07-16  Tom Tromey  <tom@tromey.com>
4109
4110         * dbxread.c (processing_acc_compilation): New global.
4111         * buildsym.h (processing_acc_compilation): Don't declare.
4112
4113 2018-07-16  Tom Tromey  <tom@tromey.com>
4114
4115         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4116         * dbxread.c (read_ofile_symtab): Update.
4117         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4118         * buildsym.h (last_source_start_addr): Remove.
4119         (set_last_source_start_addr, get_last_source_start_addr):
4120         Declare.
4121         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4122         parameter.
4123         (struct buildsym_compunit) <m_last_source_start_addr>: New
4124         member.
4125         (prepare_for_building): Remove start_addr parameter.
4126         (start_symtab, restart_symtab, end_symtab_get_static_block)
4127         (end_symtab_with_blockvector): Update.
4128         (set_last_source_start_addr, get_last_source_start_addr): New
4129         functions.
4130
4131 2018-07-16  Tom Tromey  <tom@tromey.com>
4132
4133         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4134         member.
4135         (have_line_numbers): Remove.
4136         (record_line, prepare_for_building, end_symtab_get_static_block)
4137         (augment_type_symtab): Update.
4138
4139 2018-07-16  Tom Tromey  <tom@tromey.com>
4140
4141         * buildsym.c (~buildsym_compunit): Free the macro table.
4142         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4143         methods.
4144         <m_pending_macros>: New member.
4145         (pending_macros): Remove.
4146         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4147         (reset_symtab_globals, end_symtab_get_static_block)
4148         (end_symtab_with_blockvector, augment_type_symtab)
4149         (buildsym_init): Update.
4150
4151 2018-07-16  Tom Tromey  <tom@tromey.com>
4152
4153         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4154         parameter.
4155         (buildsym_compunit::set_last_source_file): New method.
4156         <m_last_source_file>: New member.
4157         (prepare_for_building): Remove "name" parameter.
4158         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4159         (last_source_file): Remove.
4160         (set_last_source_file, get_last_source_file): Update.
4161
4162 2018-07-16  Tom Tromey  <tom@tromey.com>
4163
4164         * buildsym.c (prepare_for_building): Add assert.
4165
4166 2018-07-16  Tom Tromey  <tom@tromey.com>
4167
4168         * buildsym.c (~buildsym_compunit): Update.
4169         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4170         (start_subfile, patch_subfile_names)
4171         (end_symtab_with_blockvector): Update.
4172
4173 2018-07-16  Tom Tromey  <tom@tromey.com>
4174
4175         * buildsym.c (struct buildsym_compunit): Add constructor,
4176         destructor, initializers.
4177         (start_buildsym_compunit): Remove.
4178         (free_buildsym_compunit): Use "delete".
4179         (start_symtab, restart_symtab): Use "new".
4180
4181 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4182
4183         * symfile.c (set_objfile_default_section_offset): Remove struct
4184         keyword.
4185
4186 2018-07-14  Stafford Horne  <shorne@gmail.com>
4187
4188         * (Responsible Maintainers): Add myself as or1k maintainer.
4189
4190 2018-07-13  Tom Tromey  <tom@tromey.com>
4191
4192         * symfile.c (set_objfile_default_section_offset): Use extra braces
4193         around initializer.
4194
4195 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4196
4197         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4198         non-branching basr.
4199
4200 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4201
4202         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4203         unittests/cli-utils-selftests.c
4204         * unittests/cli-utils-selftests.c: New file.
4205
4206 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4207
4208         * NEWS: Mention new commands. Mention change to 'thread apply'.
4209
4210 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4211
4212         * thread.c (thr_try_catch_cmd): New function.
4213         (thread_apply_all_command): Handle qcs flags.
4214         (thread_apply_command): Handle qcs flags.
4215         (taas_command): New function.
4216         (tfaas_command): New function.
4217         (_initialize_thread): Update to setup the new commands 'taas
4218         and 'tfaas'. Change doc string for 'thread apply'.
4219
4220 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4221
4222         * stack.c: (trailing_outermost_frame): New function, mostly
4223         extracted from backtrace_command_1.
4224         (leading_innermost_frame): New function.
4225         (backtrace_command_1): Update to call trailing_outermost_frame.
4226         (frame_apply_command_count): New function.
4227         (frame_apply_level_command): New function.
4228         (frame_apply_all_command): New function.
4229         (frame_apply_command): New function.
4230         (faas_command): New function.
4231         (frame_cmd_list): New variable.
4232         (_initialize_stack): Update to setup the new commands 'frame apply'
4233         and 'faas'.
4234
4235 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4236
4237         * cli-utils.c (number_or_range_parser::get_number): Only handle
4238         numbers or convenience var as numbers.
4239         (parse_flags): New function.
4240         (parse_flags_qcs): New function.
4241         (number_or_range_parser::finished): Ensure parsing end is detected
4242         before end of string.
4243         * cli-utils.h (parse_flags): New function.
4244         (parse_flags_qcs): New function.
4245         (number_or_range_parser): Remove m_finished bool.
4246         (number_or_range_parser::skip_range): Set m_in_range to false.
4247
4248 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4249
4250         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4251         on Windows.
4252
4253 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4254             Jan Kratochvil  <jan.kratochvil@redhat.com>
4255             Paul Fertser  <fercerpav@gmail.com>
4256             Tsutomu Seki  <sekiriki@gmail.com>
4257             Pedro Alves  <palves@redhat.com>
4258
4259         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4260         'unittests/parse-connection-spec-selftests.c'.
4261         (COMMON_SFILES): Add 'common/netstuff.c'.
4262         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4263         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4264         * common/netstuff.c: New file.
4265         * common/netstuff.h: New file.
4266         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4267         (wait_for_connect): Update comment.  New parameter
4268         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4269         Use 'sock' directly instead of 'scb->fd'.
4270         (try_connect): New function, with code from 'net_open'.
4271         (net_open): Rewrite main loop to deal with multiple
4272         sockets/addresses.  Handle IPv6-style hostnames; implement
4273         support for IPv6 connections.
4274         * unittests/parse-connection-spec-selftests.c: New file.
4275
4276 2018-07-11  Pedro Alves  <palves@redhat.com>
4277
4278         PR gdb/23377
4279         * remote.c (remote_target::remote_detach_pid): Call
4280         set_current_process.
4281
4282 2018-07-11  Pedro Alves  <palves@redhat.com>
4283
4284         * h8300-tdep.c (h8300_gdbarch_init): Remove
4285         set_gdbarch_ecoff_reg_to_regnum calls.
4286
4287 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4288
4289         PR c++/23373
4290         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4291         offsets/sizes for static members of a class/struct.
4292
4293 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4294
4295         * target-descriptions.c (tdesc_register_bitsize): Rename.
4296         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4297         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4298         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4299
4300 2018-07-10  Tom Tromey  <tom@tromey.com>
4301
4302         * breakpoint.c (moribund_locations): Now static and a
4303         std::vector.
4304         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4305         (build_bpstat_chain, update_global_location_list)
4306         (breakpoint_retire_moribund): Update.
4307         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4308         VEC.
4309
4310 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4311
4312         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4313         (riscv_register_reggroup_p): Use new function, remove unneeded
4314         parenthesis.
4315         (riscv_push_dummy_call): Extend assert to compare against xlen or
4316         flen based on register type.
4317
4318 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4319
4320         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4321
4322 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4323
4324         * remote.c (show_hardware_watchpoint_limit): New function.
4325         (show_hardware_watchpoint_length_limit): New function.
4326         (show_hardware_breakpoint_limit): New function.
4327         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4328         where appropriate, update help text.
4329
4330 2018-07-09  Tom Tromey  <tom@tromey.com>
4331
4332         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4333         (CLIBS): Don't mention NAT_CLIBS.
4334
4335 2018-07-09  Tom Tromey  <tom@tromey.com>
4336
4337         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4338         (LIBGDB_OBS, clean mostlyclean): Update.
4339         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4340
4341 2018-07-09  Tom Tromey  <tom@tromey.com>
4342
4343         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4344         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4345         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4346
4347 2018-07-09  Tom Tromey  <tom@tromey.com>
4348
4349         * Makefile.in (ALLDEPFILES): Remove exec.c.
4350         (COMMON_OBS): Remove exec.o.
4351         (COMMON_SFILES): Add exec.c.
4352
4353 2018-07-09  Tom Tromey  <tom@tromey.com>
4354
4355         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4356
4357 2018-07-09  Tom Tromey  <tom@tromey.com>
4358
4359         * Makefile.in (clean mostlyclean): Remove stamp-version.
4360         (version.c): Depend on stamp-version.
4361         (stamp-version): New rule, from version.c rule.
4362
4363 2018-07-09  Tom Tromey  <tom@tromey.com>
4364
4365         * Makefile.in (init.c): Depend on stamp-init.
4366         (stamp-init): New rule, from init.c rule.
4367         (clean mostlyclean): Remove stamp-init.
4368
4369 2018-07-09  Tom Tromey  <tom@tromey.com>
4370
4371         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4372         SUBDIR_GCC_COMPILE_SRCS.
4373
4374 2018-07-09  Tom Tromey  <tom@tromey.com>
4375
4376         * Makefile.in (init.c): Remove some unused sed rules.
4377
4378 2018-07-09  Tom Tromey  <tom@tromey.com>
4379
4380         * Makefile.in (TSOBS): Remove.
4381         (INIT_FILES): Update.
4382         (LIBGDB_OBS): Update.
4383         (COMMON_SFILES): Add inflow.c.
4384         (SFILES): Remove inflow.c.
4385
4386 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4387
4388         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4389
4390 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4391
4392         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4393         get_saveloc_name, is_signal_frame_name, step_name,
4394         init_remote_name, create_addr_space_name,
4395         destroy_addr_space_name, search_unwind_table_name,
4396         find_dyn_list_name): Constify.
4397
4398 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4399
4400         * darwin-nat.c (darwin_pthread_kill): New function.
4401         (darwin_resume_thread): Use darwin_pthread_kill.
4402
4403 2018-07-05  Tom de Vries  <tdevries@suse.de>
4404
4405         * macroexp.c (macro_buffer) <operator=>: New member function.
4406
4407 2018-07-04  Tom Tromey  <tom@tromey.com>
4408
4409         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4410
4411 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4412
4413         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4414         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4415         * maint.c: Likewise.
4416         * top.c: Likewise.
4417
4418 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4419
4420         * NEWS: Create a new section for the next release branch.
4421         Rename the section of the current branch, now that it has
4422         been cut.
4423
4424 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4425
4426         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4427         * version.in: Bump version to 8.2.50.DATE-git.
4428
4429 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4430             Pedro Alves  <palves@redhat.com>
4431
4432         * linux-nat.c (linux_init_ptrace): Rename to ...
4433         (linux_init_ptrace_procfs): ... this.  Call
4434         linux_proc_init_warnings.
4435         (linux_nat_target::post_attach)
4436         (linux_nat_target::post_startup_inferior): Adjust.
4437         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4438         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4439
4440 2018-07-04  Tom de Vries  <tdevries@suse.de>
4441
4442         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4443         check ...
4444         (read_comp_unit_head): ... here.
4445
4446 2018-07-03  Tom Tromey  <tom@tromey.com>
4447
4448         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4449         (stop_tracing, tstatus_command)
4450         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4451         (print_one_static_tracepoint_marker): Update.
4452         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4453         std::vector.
4454         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4455         VEC.
4456         (all_tracepoints, static_tracepoints_here): Return std::vector.
4457
4458 2018-07-03  Tom Tromey  <tom@tromey.com>
4459
4460         * common/ptid.c (ptid_equal): Remove.
4461         * common/ptid.h (ptid_equal): Don't declare.
4462         * ada-tasks.c: Update.
4463         * breakpoint.c: Update.
4464         * common/agent.c: Update.
4465         * corelow.c: Update.
4466         * darwin-nat-info.c: Update.
4467         * darwin-nat.c: Update.
4468         * dcache.c: Update.
4469         * dtrace-probe.c: Update.
4470         * dummy-frame.c: Update.
4471         * fbsd-nat.c: Update.
4472         * frame.c: Update.
4473         * gdbthread.h: Update.
4474         * gnu-nat.c: Update.
4475         * go32-nat.c: Update.
4476         * inf-loop.c: Update.
4477         * inf-ptrace.c: Update.
4478         * infcall.c: Update.
4479         * infcmd.c: Update.
4480         * inflow.c: Update.
4481         * infrun.c: Update.
4482         * linux-fork.c: Update.
4483         * linux-nat.c: Update.
4484         * linux-thread-db.c: Update.
4485         * mi/mi-cmd-var.c: Update.
4486         * mi/mi-interp.c: Update.
4487         * mi/mi-main.c: Update.
4488         * nto-procfs.c: Update.
4489         * ppc-linux-tdep.c: Update.
4490         * procfs.c: Update.
4491         * python/py-inferior.c: Update.
4492         * python/py-record-btrace.c: Update.
4493         * python/py-record.c: Update.
4494         * ravenscar-thread.c: Update.
4495         * regcache.c: Update.
4496         * remote-sim.c: Update.
4497         * remote.c: Update.
4498         * sol-thread.c: Update.
4499         * solib.c: Update.
4500         * target.c: Update.
4501         * tui/tui-stack.c: Update.
4502         * varobj.c: Update.
4503         * windows-nat.c: Update.
4504         * windows-tdep.c: Update.
4505
4506 2018-07-03  Tom Tromey  <tom@tromey.com>
4507
4508         * common/ptid.c (ptid_match): Remove.
4509         * common/ptid.h (ptid_match): Don't declare.
4510         * fbsd-nat.c: Update.
4511         * infcmd.c: Update.
4512         * infrun.c: Update.
4513         * linux-nat.c: Update.
4514         * record-btrace.c: Update.
4515         * regcache.c: Update.
4516         * remote.c: Update.
4517
4518 2018-07-03  Tom Tromey  <tom@tromey.com>
4519
4520         * common/ptid.c (ptid_tid_p): Remove.
4521         * common/ptid.h (ptid_tid_p): Don't declare.
4522         * sol-thread.c: Update.
4523
4524 2018-07-03  Tom Tromey  <tom@tromey.com>
4525
4526         * common/ptid.c (ptid_lwp_p): Remove.
4527         * common/ptid.h (ptid_lwp_p): Don't declare.
4528         * fbsd-nat.c: Update.
4529         * linux-nat.c: Update.
4530         * nat/linux-procfs.c: Update.
4531         * nat/x86-linux-dregs.c: Update.
4532         * sol-thread.c: Update.
4533
4534 2018-07-03  Tom Tromey  <tom@tromey.com>
4535
4536         * common/ptid.c (ptid_is_pid): Remove.
4537         * common/ptid.h (ptid_is_pid): Don't declare.
4538         * infrun.c: Update.
4539         * linux-nat.c: Update.
4540         * mi/mi-interp.c: Update.
4541         * remote.c: Update.
4542         * thread.c: Update.
4543
4544 2018-07-03  Tom Tromey  <tom@tromey.com>
4545
4546         * common/ptid.c (ptid_get_tid): Remove.
4547         * common/ptid.h (ptid_get_tid): Don't declare.
4548         * ada-tasks.c: Update.
4549         * aix-thread.c: Update.
4550         * bsd-uthread.c: Update.
4551         * darwin-nat.c: Update.
4552         * fbsd-nat.c: Update.
4553         * i386-darwin-nat.c: Update.
4554         * infrun.c: Update.
4555         * linux-tdep.c: Update.
4556         * nto-procfs.c: Update.
4557         * ppc-ravenscar-thread.c: Update.
4558         * python/py-infthread.c: Update.
4559         * ravenscar-thread.c: Update.
4560         * sol-thread.c: Update.
4561         * sparc-ravenscar-thread.c: Update.
4562         * windows-nat.c: Update.
4563
4564 2018-07-03  Tom Tromey  <tom@tromey.com>
4565
4566         * common/ptid.c (ptid_get_lwp): Remove.
4567         * common/ptid.h (ptid_get_lwp): Don't declare.
4568         * aarch64-linux-nat.c: Update.
4569         * ada-tasks.c: Update.
4570         * aix-thread.c: Update.
4571         * amd64-linux-nat.c: Update.
4572         * arm-linux-nat.c: Update.
4573         * corelow.c: Update.
4574         * fbsd-nat.c: Update.
4575         * fbsd-tdep.c: Update.
4576         * gnu-nat.c: Update.
4577         * i386-cygwin-tdep.c: Update.
4578         * i386-gnu-nat.c: Update.
4579         * i386-linux-nat.c: Update.
4580         * ia64-linux-nat.c: Update.
4581         * inf-ptrace.c: Update.
4582         * infrun.c: Update.
4583         * linux-fork.c: Update.
4584         * linux-nat.c: Update.
4585         * linux-tdep.c: Update.
4586         * linux-thread-db.c: Update.
4587         * mips-linux-nat.c: Update.
4588         * nat/aarch64-linux-hw-point.c: Update.
4589         * nat/aarch64-linux.c: Update.
4590         * nat/linux-btrace.c: Update.
4591         * nat/linux-osdata.c: Update.
4592         * nat/linux-procfs.c: Update.
4593         * nat/x86-linux-dregs.c: Update.
4594         * obsd-nat.c: Update.
4595         * ppc-fbsd-nat.c: Update.
4596         * ppc-linux-nat.c: Update.
4597         * procfs.c: Update.
4598         * python/py-infthread.c: Update.
4599         * ravenscar-thread.c: Update.
4600         * remote.c: Update.
4601         * s390-linux-nat.c: Update.
4602         * sol-thread.c: Update.
4603         * sol2-tdep.c: Update.
4604         * spu-linux-nat.c: Update.
4605         * x86-linux-nat.c: Update.
4606         * xtensa-linux-nat.c: Update.
4607
4608 2018-07-03  Tom Tromey  <tom@tromey.com>
4609
4610         * common/ptid.c (ptid_get_pid): Remove.
4611         * common/ptid.h (ptid_get_pid): Don't declare.
4612         * aarch64-linux-nat.c: Update.
4613         * ada-lang.c: Update.
4614         * aix-thread.c: Update.
4615         * alpha-bsd-nat.c: Update.
4616         * amd64-fbsd-nat.c: Update.
4617         * amd64-linux-nat.c: Update.
4618         * arm-linux-nat.c: Update.
4619         * arm-nbsd-nat.c: Update.
4620         * auxv.c: Update.
4621         * break-catch-syscall.c: Update.
4622         * breakpoint.c: Update.
4623         * bsd-uthread.c: Update.
4624         * corelow.c: Update.
4625         * ctf.c: Update.
4626         * darwin-nat.c: Update.
4627         * fbsd-nat.c: Update.
4628         * fbsd-tdep.c: Update.
4629         * gcore.c: Update.
4630         * gnu-nat.c: Update.
4631         * hppa-nbsd-nat.c: Update.
4632         * hppa-obsd-nat.c: Update.
4633         * i386-fbsd-nat.c: Update.
4634         * ia64-linux-nat.c: Update.
4635         * inf-ptrace.c: Update.
4636         * infcmd.c: Update.
4637         * inferior.c: Update.
4638         * inferior.h: Update.
4639         * inflow.c: Update.
4640         * infrun.c: Update.
4641         * linux-fork.c: Update.
4642         * linux-nat.c: Update.
4643         * linux-tdep.c: Update.
4644         * linux-thread-db.c: Update.
4645         * m68k-bsd-nat.c: Update.
4646         * mi/mi-interp.c: Update.
4647         * mi/mi-main.c: Update.
4648         * mips-linux-nat.c: Update.
4649         * mips-nbsd-nat.c: Update.
4650         * mips64-obsd-nat.c: Update.
4651         * nat/aarch64-linux-hw-point.c: Update.
4652         * nat/aarch64-linux.c: Update.
4653         * nat/linux-btrace.c: Update.
4654         * nat/linux-osdata.c: Update.
4655         * nat/linux-procfs.c: Update.
4656         * nat/x86-linux-dregs.c: Update.
4657         * nto-procfs.c: Update.
4658         * obsd-nat.c: Update.
4659         * ppc-linux-nat.c: Update.
4660         * ppc-nbsd-nat.c: Update.
4661         * ppc-obsd-nat.c: Update.
4662         * proc-service.c: Update.
4663         * procfs.c: Update.
4664         * python/py-inferior.c: Update.
4665         * python/py-infthread.c: Update.
4666         * ravenscar-thread.c: Update.
4667         * record.c: Update.
4668         * remote-sim.c: Update.
4669         * remote.c: Update.
4670         * rs6000-nat.c: Update.
4671         * s390-linux-nat.c: Update.
4672         * sh-nbsd-nat.c: Update.
4673         * sol-thread.c: Update.
4674         * sparc-nat.c: Update.
4675         * sparc64-tdep.c: Update.
4676         * spu-linux-nat.c: Update.
4677         * spu-tdep.c: Update.
4678         * target-debug.h: Update.
4679         * target.c: Update.
4680         * thread.c: Update.
4681         * tid-parse.c: Update.
4682         * tracefile-tfile.c: Update.
4683         * vax-bsd-nat.c: Update.
4684         * windows-nat.c: Update.
4685         * x86-linux-nat.c: Update.
4686         * x86-nat.c: Update.
4687
4688 2018-07-03  Tom Tromey  <tom@tromey.com>
4689
4690         * common/ptid.c (pid_to_ptid): Remove.
4691         * common/ptid.h (pid_to_ptid): Don't declare.
4692         * aix-thread.c: Update.
4693         * arm-linux-nat.c: Update.
4694         * common/ptid.c: Update.
4695         * common/ptid.h: Update.
4696         * corelow.c: Update.
4697         * ctf.c: Update.
4698         * darwin-nat.c: Update.
4699         * fbsd-nat.c: Update.
4700         * fork-child.c: Update.
4701         * gnu-nat.c: Update.
4702         * go32-nat.c: Update.
4703         * inf-ptrace.c: Update.
4704         * infcmd.c: Update.
4705         * inferior.c: Update.
4706         * infrun.c: Update.
4707         * linux-fork.c: Update.
4708         * linux-nat.c: Update.
4709         * nat/aarch64-linux-hw-point.c: Update.
4710         * nat/fork-inferior.c: Update.
4711         * nat/x86-linux-dregs.c: Update.
4712         * nto-procfs.c: Update.
4713         * obsd-nat.c: Update.
4714         * procfs.c: Update.
4715         * progspace.c: Update.
4716         * remote.c: Update.
4717         * rs6000-nat.c: Update.
4718         * s390-linux-nat.c: Update.
4719         * sol-thread.c: Update.
4720         * spu-linux-nat.c: Update.
4721         * target.c: Update.
4722         * top.c: Update.
4723         * tracefile-tfile.c: Update.
4724         * windows-nat.c: Update.
4725
4726 2018-07-03  Tom Tromey  <tom@tromey.com>
4727
4728         * common/ptid.h (ptid_build): Don't declare.
4729         * common/ptid.c (ptid_build): Remove.
4730         * aix-thread.c: Update.
4731         * bsd-kvm.c: Update.
4732         * bsd-uthread.c: Update.
4733         * common/agent.c: Update.
4734         * common/ptid.c: Update.
4735         * common/ptid.h: Update.
4736         * corelow.c: Update.
4737         * darwin-nat.c: Update.
4738         * fbsd-nat.c: Update.
4739         * gnu-nat.c: Update.
4740         * linux-fork.c: Update.
4741         * linux-nat.c: Update.
4742         * linux-thread-db.c: Update.
4743         * nat/linux-osdata.c: Update.
4744         * nat/linux-procfs.c: Update.
4745         * nto-procfs.c: Update.
4746         * obsd-nat.c: Update.
4747         * proc-service.c: Update.
4748         * procfs.c: Update.
4749         * ravenscar-thread.c: Update.
4750         * remote-sim.c: Update.
4751         * remote.c: Update.
4752         * sol-thread.c: Update.
4753         * target.c: Update.
4754         * windows-nat.c: Update.
4755
4756 2018-07-03  Tom Tromey  <tom@tromey.com>
4757
4758         * infrun.c (follow_exec): Use exit_inferior_silent.
4759         * inferior.c (exit_inferior_num_silent): Remove.
4760         * inferior.h (exit_inferior_num_silent): Don't declare.
4761
4762 2018-07-03  Tom Tromey  <tom@tromey.com>
4763
4764         PR cli/23340:
4765         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4766         inferior_ptid on error.
4767
4768 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4769             Simon Marchi  <simon.marchi@polymtl.ca>
4770
4771         PR tdep/8282
4772         * disasm.h (gdb_disassembler): Add
4773         `m_disassembler_options_holder'. member
4774         * disasm.c (get_all_disassembler_options): New function.
4775         (gdb_disassembler::gdb_disassembler): Use it.
4776         (gdb_buffered_insn_length_init_dis): Likewise.
4777         (gdb_buffered_insn_length): Adjust accordingly.
4778         (set_disassembler_options): Handle options with arguments.
4779         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4780         line if showing options with descriptions.
4781         (disassembler_options_completer): Adapt to using the
4782         `disasm_options_and_args_t' structure.
4783         * mips-tdep.c (mips_disassembler_options): New variable.
4784         (mips_disassembler_options_o32): Likewise.
4785         (mips_disassembler_options_n32): Likewise.
4786         (mips_disassembler_options_n64): Likewise.
4787         (gdb_print_insn_mips): Don't set `disassembler_options'.
4788         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4789         functions.
4790         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4791         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4792         `gdbarch_disassembler_options_implicit' and
4793         `gdbarch_valid_disassembler_options'.
4794         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4795         `disasm_options_and_args_t' structure.
4796         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4797         method.
4798         (valid_disassembler_options): Switch from `disasm_options_t' to
4799         the `disasm_options_and_args_t' structure.
4800         * NEWS: Document `set disassembler-options' support for the MIPS
4801         target.
4802         * gdbarch.h: Regenerate.
4803         * gdbarch.c: Regenerate.
4804
4805 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4806
4807         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4808
4809 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4810
4811         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4812         parameter in call to amd64_target_description.
4813         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4814         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4815         (amd64fbsd_init_abi): Likewise.
4816         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4817         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4818         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4819         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4820
4821 2018-06-29  Pedro Alves  <palves@redhat.com>
4822
4823         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4824         "segments" parameter.
4825         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4826         (_initialize_amd64_tdep): Update call to
4827         amd64_create_target_description.
4828         (amd64_target_description): Add "segments" parameter.  Adjust
4829         the implementation to use it.
4830         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4831         call to amd64_create_target_description.
4832         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4833         * gdb/arch/amd64.h (amd64_create_target_description): Add
4834         "segments" register.
4835         * gdb/arch/amd64.c (amd64_create_target_description): Add
4836         "segments" parameter.  Call create_feature_i386_64bit_segments
4837         only if SEGMENTS is true.
4838         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4839         call to amd64_create_target_description.
4840
4841 2018-06-29  Pedro Alves  <palves@redhat.com>
4842
4843         * thread.c (thread_target_id_str): New, factored out from ...
4844         (print_thread_info_1): ... here.  Use it to compute the max
4845         "Target Id" column width.
4846
4847 2018-06-29  Pedro Alves  <palves@redhat.com>
4848
4849         * remote.c (remote_target::extra_thread_info): Delete
4850         'display_buf' and 'n' locals.  from the cache, regardless of
4851         packet mechanims is in use.  Use cache for qThreadExtra and qP
4852         methods too.
4853
4854 2018-06-29  Pedro Alves  <palves@redhat.com>
4855
4856         * blockframe.c (find_pc_sect_containing_function): New function.
4857         * breakpoint.c (print_breakpoint_location): Don't call
4858         find_pc_sect_function.
4859         * linespec.c (create_sals_line_offset): Record the location's
4860         symbol in the sal.
4861         * linespec.c (convert_address_location_to_sals): Fill in sal's
4862         symbol with find_pc_sect_containing_function.
4863         * symtab.c (find_function_start_sal): Rename to ...
4864         (find_function_start_sal_1): ... this.
4865         (find_function_start_sal): Reimplement as wrapper around
4866         find_function_start_sal_1, and use
4867         find_pc_sect_containing_function to fill in the sal's symbol.
4868         (find_function_start_sal(symbol*, bool)): Adjust.
4869         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4870         comments.
4871         (find_pc_sect_containing_function): Declare.
4872
4873 2018-06-29  Pedro Alves  <palves@redhat.com>
4874
4875         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4876         true if the the location has no symbol.
4877
4878 2018-06-28  Tom Tromey  <tom@tromey.com>
4879
4880         * NEWS: Mention --enable-codesign.
4881         * silent-rules.mk (ECHO_SIGN): New variable.
4882         * configure.ac: Add --enable-codesign.
4883         * configure: Rebuild.
4884         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4885         (gdb$(EXEEXT)): Optionally invoke codesign.
4886
4887 2018-06-28  Pedro Alves  <palves@redhat.com>
4888
4889         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4890         comments.
4891         (switch_to_thread_no_regs): Adjust comment.
4892         * infcmd.c (stop_pc): Delete.
4893         (post_create_inferior, info_program_command): Replace references
4894         to stop_pc with references to thread_info->suspend.stop_pc.
4895         * inferior.h (stop_pc): Delete declaration.
4896         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4897         (handle_inferior_event_1, handle_signal_stop)
4898         (process_event_stop_test, keep_going_stepped_thread)
4899         (handle_step_into_function, handle_step_into_function_backward)
4900         (print_stop_location): Replace references to stop_pc with
4901         references to thread_info->suspend.stop_pc.
4902         (struct infcall_suspend_state) <stop_pc>: Delete field.
4903         (save_infcall_suspend_state, restore_infcall_suspend_state):
4904         Remove references to inf_stat->stop_pc.
4905         * linux-fork.c (fork_load_infrun_state): Likewise.
4906         * record-btrace.c (record_btrace_set_replay): Likewise.
4907         * record-full.c (record_full_goto_entry): Likewise.
4908         * remote.c (print_one_stopped_thread): Likewise.
4909         * target.c (target_resume): Extend comment.
4910         * thread.c (set_executing_thread): New.
4911         (set_executing): Use it.
4912         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4913         Remove references to stop_pc.
4914
4915 2018-06-28  Pedro Alves  <palves@redhat.com>
4916
4917         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4918         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4919
4920 2018-06-28  Tom Tromey  <tom@tromey.com>
4921
4922         * coffread.c (coff_symfile_finish): Update.
4923         * xcoffread.c (xcoff_symfile_finish): Update.
4924         * elfread.c (elf_symfile_finish): Update.
4925         * symfile.h (dwarf2_free_objfile): Don't declare.
4926         * dwarf2read.c (_initialize_dwarf2_read): Use
4927         register_objfile_data_with_cleanup.
4928         (dwarf2_free_objfile): Now static.  Change signature.
4929
4930 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4931
4932         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4933         option "-o" to add-symbol-file-load to add an offset to each
4934         section's load address.
4935         * symfile.c (set_objfile_default_section_offset): New function.
4936
4937 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4938
4939         * symfile.c (add_symbol_file_command): Make sure that sections
4940         with the same name are sorted in the same order.
4941
4942 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4943
4944         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4945         require the second argument.  If omitted, load sections at the
4946         addresses specified in the file.
4947
4948 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4949
4950         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4951         (_initialize_symfile): Add option "-o" to symbol-file to add an
4952         offset to each section of the symbol file.
4953
4954 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4955
4956         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4957
4958 2018-06-27  Tom Tromey  <tom@tromey.com>
4959
4960         * stack.c (_initialize_stack): Update "func" help text.
4961
4962 2018-06-27  Tom Tromey  <tom@tromey.com>
4963
4964         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4965         std::vector.
4966         (unwind_infopy_str, pyuw_create_unwind_info)
4967         (unwind_infopy_add_saved_register, pyuw_sniffer)
4968         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4969         Update.
4970         (struct saved_reg): Add constructor.
4971         <value>: Now a gdbpy_ref<>.
4972
4973 2018-06-27  Tom Tromey  <tom@tromey.com>
4974
4975         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4976
4977 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4978
4979         * gdb-gdb.py.in: Format using autopep8.
4980
4981 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4982
4983         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4984         (type_lookup_function): Recognize CORE_ADDR values.
4985
4986 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4987
4988         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4989         print tag_name.
4990
4991 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4992
4993         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4994         <__lt__>: Add.
4995
4996 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4997
4998         * gdb-gdb.py: Move to...
4999         * gdb-gdb.py.in: ... here.
5000         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5001         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5002         dependencies.
5003         (distclean): Remove gdb-gdb.py when cleaning.
5004         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5005         * configure: Re-generate.
5006
5007 2018-06-27  Pedro Alves  <palves@redhat.com>
5008
5009         * proc-service.c (get_ps_regcache): New.
5010         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5011         (ps_lsetfpregs): Use it.
5012
5013 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5014
5015         PR gdb/21695
5016         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5017         (dwarf_decode_lines_1): Adjust.
5018
5019 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5020
5021         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5022         override.
5023         <info_proc>: Likewise.
5024
5025 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5026
5027         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5028         to windows_fetch_one_register, and only handle the case of
5029         fetching one register.  Move the code that reloads the context
5030         and iterates over all registers if R is negative to...
5031         (windows_nat_target::fetch_registers): ... here.
5032         (do_windows_store_inferior_registers): Rename to
5033         windows_store_one_register, and only handle the case of storing
5034         one register.  Move the code that handles the case where r is
5035         negative to...
5036         (windows_nat_target::store_registers) ... here.
5037
5038 2018-06-26  Tom Tromey  <tom@tromey.com>
5039
5040         PR rust/22574:
5041         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5042         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5043         Update.
5044         (rust_internal_print_type): Add podata parameter.
5045         (rust_print_type): Update.
5046
5047 2018-06-26  Tom Tromey  <tom@tromey.com>
5048
5049         * typeprint.h (struct print_offset_data) <update, finish,
5050         maybe_print_hole>: New methods.
5051         <indentation>: New constant.
5052         * typeprint.c (print_offset_data::indentation): Define.
5053         (print_offset_data::maybe_print_hole, print_offset_data::update)
5054         (print_offset_data::finish): Move from c-typeprint.c and rename.
5055         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5056         (print_spaces_filtered_with_print_options): Update.
5057         (c_print_type_union_field_offset, maybe_print_hole)
5058         (c_print_type_struct_field_offset): Move to typeprint.c and
5059         rename.
5060         (c_type_print_base_struct_union): Update.
5061
5062 2018-06-25  Pedro Alves  <palves@redhat.com>
5063
5064         * gdbthread.h (thread_info_ref, delete_thread)
5065         (delete_thread_silent, first_thread_of_inferior)
5066         (any_thread_of_inferior, switch_to_thread)
5067         (enable_thread_stack_temporaries)
5068         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5069         (get_last_thread_stack_temporary)
5070         (value_in_thread_stack_temporaries, can_access_registers_thread):
5071         Spell out "struct thread_info" instead of just "thread_info".
5072         * inferior.h (notice_new_inferior): Likewise.
5073
5074 2018-06-25  Pedro Alves  <palves@redhat.com>
5075
5076         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5077         pass thread_info pointer to delete_thread.
5078         (windows_nat_target::detach): Pass inferior pointer to
5079         detach_inferior.
5080         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5081         delete_thread.
5082         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5083         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5084         and pass a thread_info pointer to delete_thread.
5085         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5086         pass thread_info pointer to delete_thread.
5087         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5088         delete_thread_silent call.
5089         * procfs.c (procfs_target::detach): Pass inferior pointer to
5090         detach_inferior.
5091         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5092         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5093         delete_thread_silent call.
5094         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5095         pass thread_info pointer to delete_thread.
5096         (windows_nat_target::detach): Pass inferior pointer to
5097         delete_inferior.
5098
5099 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5100
5101         * regcache.c (readable_regcache::read_part): Fix asserts.
5102         (reg_buffer::raw_collect_part): New function.
5103         (regcache::write_part): Fix asserts.
5104         (reg_buffer::raw_supply_part): New function.
5105         (regcache::transfer_regset_register): New helper function.
5106         (regcache::transfer_regset): Call new functions.
5107         (regcache_supply_regset): Use gdb_byte*.
5108         (regcache::supply_regset): Likewise.
5109         (regcache_collect_regset): Likewise.
5110         (regcache::collect_regset): Likewise.
5111         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5112         (reg_buffer::raw_supply_part): Likewise.
5113         (regcache::transfer_regset_register): Likewise.
5114         (regcache::transfer_regset): Use gdb_byte*.
5115
5116 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5117
5118         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5119
5120 2018-06-21  Pedro Alves  <palves@redhat.com>
5121
5122         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5123         instead of a ptid_t.  All callers adjusted.
5124         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5125         adjusted.
5126         (print_ada_task_info, display_current_task_id, task_command_1):
5127         Adjust.
5128         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5129         inferior_thread.
5130         (breakpoint_kind): Adjust.
5131         (remove_breakpoints_pid): Rename to ...
5132         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5133         pointer.  All callers adjusted.
5134         (bpstat_clear_actions): Use inferior_thread.
5135         (get_bpstat_thread): New.
5136         (bpstat_do_actions): Use it.
5137         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5138         to take a thread_info pointer.  All callers adjusted.
5139         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5140         (breakpoint_re_set_thread): Use inferior_thread.
5141         * breakpoint.h (struct inferior): Forward declare.
5142         (bpstat_stop_status): Update.
5143         (remove_breakpoints_pid): Delete.
5144         (remove_breakpoints_inf): New.
5145         * bsd-uthread.c (bsd_uthread_target::wait)
5146         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5147         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5148         (maint_btrace_packet_history_cmd)
5149         (maint_btrace_clear_packet_history_cmd): Adjust.
5150         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5151         inferior_thread.
5152         * cli/cli-interp.c: Include "inferior.h".
5153         * common/refcounted-object.h (struct
5154         refcounted_object_ref_policy): New.
5155         * compile/compile-object-load.c: Include gdbthread.h.
5156         (store_regs): Use inferior_thread.
5157         * corelow.c (core_target::close): Use current_inferior.
5158         (core_target_open): Adjust to use first_thread_of_inferior and use
5159         the current inferior.
5160         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5161         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5162         <thread>: ... this new field.  All references adjusted.
5163         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5164         Take a thread_info pointer instead of a ptid_t.
5165         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5166         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5167         thread_info pointer instead of a ptid_t.
5168         * elfread.c: Include "inferior.h".
5169         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5170         Use inferior_thread.
5171         * eval.c (evaluate_subexp): Likewise.
5172         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5173         inferior_thread.
5174         * gdb_proc_service.h (struct thread_info): Forward declare.
5175         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5176         <thread>: ... this new field.  All references adjusted.
5177         * gdbarch.h, gdbarch.c: Regenerate.
5178         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5179         'thread' parameter.  All implementations and callers adjusted.
5180         * gdbthread.h (thread_info) <set_running>: New method.
5181         (delete_thread, delete_thread_silent): Take a thread_info pointer
5182         instead of a ptid.
5183         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5184         (first_thread_of_process): Delete, replaced by ...
5185         (first_thread_of_inferior): ... this new function.  All callers
5186         adjusted.
5187         (any_live_thread_of_process): Delete, replaced by ...
5188         (any_live_thread_of_inferior): ... this new function.  All callers
5189         adjusted.
5190         (switch_to_thread, switch_to_no_thread): Declare.
5191         (is_executing): Delete.
5192         (enable_thread_stack_temporaries): Update comment.
5193         <enable_thread_stack_temporaries>: Take a thread_info pointer
5194         instead of a ptid_t.  Incref the thread.
5195         <~enable_thread_stack_temporaries>: Decref the thread.
5196         <m_ptid>: Delete
5197         <m_thr>: New.
5198         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5199         (get_last_thread_stack_temporary)
5200         (value_in_thread_stack_temporaries, can_access_registers_thread):
5201         Take a thread_info pointer instead of a ptid_t.  All callers
5202         adjusted.
5203         * infcall.c (get_call_return_value): Use inferior_thread.
5204         (run_inferior_call): Work with thread pointers instead of ptid_t.
5205         (call_function_by_hand_dummy): Work with thread pointers instead
5206         of ptid_t.  Use thread_info_ref.
5207         * infcmd.c (proceed_thread_callback): Access thread's state
5208         directly.
5209         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5210         access thread's state directly.
5211         (continue_command): Use inferior_thread.
5212         (info_program_command): Use find_thread_ptid and access thread
5213         state directly.
5214         (proceed_after_attach_callback): Use thread state directly.
5215         (notice_new_inferior): Take a thread_info pointer instead of a
5216         ptid_t.  All callers adjusted.
5217         (exit_inferior): Take an inferior pointer instead of a pid.  All
5218         callers adjusted.
5219         (exit_inferior_silent): New.
5220         (detach_inferior): Delete.
5221         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5222         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5223         (detach_inferior_command, kill_inferior_command): Use
5224         find_inferior_id instead of valid_gdb_inferior_id and
5225         gdb_inferior_id_to_pid.
5226         (inferior_command): Use inferior and thread pointers.
5227         * inferior.h (struct thread_info): Forward declare.
5228         (notice_new_inferior): Take a thread_info pointer instead of a
5229         ptid_t.  All callers adjusted.
5230         (detach_inferior): Delete declaration.
5231         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5232         instead of a pid.  All callers adjusted.
5233         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5234         (valid_gdb_inferior_id): Delete.
5235         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5236         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5237         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5238         ...
5239         <inf>: ... this new field.
5240         <step_ptid>: Delete, replaced by ...
5241         <step_thread>: ... this new field.
5242         (get_displaced_stepping_state): Take an inferior pointer instead
5243         of a pid.  All callers adjusted.
5244         (displaced_step_in_progress_any_inferior): Adjust.
5245         (displaced_step_in_progress_thread): Take a thread pointer instead
5246         of a ptid_t.  All callers adjusted.
5247         (displaced_step_in_progress, add_displaced_stepping_state): Take
5248         an inferior pointer instead of a pid.  All callers adjusted.
5249         (get_displaced_step_closure_by_addr): Adjust.
5250         (remove_displaced_stepping_state): Take an inferior pointer
5251         instead of a pid.  All callers adjusted.
5252         (displaced_step_prepare_throw, displaced_step_prepare)
5253         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5254         All callers adjusted.
5255         (start_step_over): Adjust.
5256         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5257         displaced step queue.
5258         (do_target_resume): Adjust.
5259         (fetch_inferior_event): Use inferior_thread.
5260         (context_switch, get_inferior_stop_soon): Take an
5261         execution_control_state pointer instead of a ptid_t.  All callers
5262         adjusted.
5263         (switch_to_thread_cleanup): Delete.
5264         (stop_all_threads): Use scoped_restore_current_thread.
5265         * inline-frame.c: Include "gdbthread.h".
5266         (inline_state) <inline_state>: Take a thread pointer instead of a
5267         ptid_t.  All callers adjusted.
5268         <ptid>: Delete, replaced by ...
5269         <thread>: ... this new field.
5270         (find_inline_frame_state): Take a thread pointer instead of a
5271         ptid_t.  All callers adjusted.
5272         (skip_inline_frames, step_into_inline_frame)
5273         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5274         pointer instead of a ptid_t.  All callers adjusted.
5275         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5276         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5277         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5278         pointers directly.
5279         * linux-nat.c (get_detach_signal): Likewise.
5280         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5281         (thread_db_notice_clone): Adjust.
5282         (thread_db_find_new_threads_silently)
5283         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5284         a thread pointer instead of a ptid_t.  All callers adjusted.
5285         * mi/mi-cmd-var.c: Include "inferior.h".
5286         (mi_cmd_var_update_iter): Update to use thread pointers.
5287         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5288         inferior directly.
5289         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5290         out to ...
5291         (mi_output_running): ... this new function.
5292         (mi_on_resume_1): Adjust to use it.
5293         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5294         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5295         directly.
5296         (interrupt_thread_callback): : Adjust to use thread and inferior
5297         pointers.
5298         * proc-service.c: Include "gdbthread.h".
5299         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5300         * progspace-and-thread.c: Include "inferior.h".
5301         * progspace.c: Include "inferior.h".
5302         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5303         hold a reference to an inferior_object.
5304         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5305         inferior_thread.
5306         * python/py-inferior.c (struct inferior_object): Give the type a
5307         tag name instead of a typedef.
5308         (python_on_normal_stop): No need to check if the current thread is
5309         listed.
5310         (inferior_to_inferior_object): Change return type to
5311         inferior_object.  All callers adjusted.
5312         (find_thread_object): Delete, bits factored out to ...
5313         (thread_to_thread_object): ... this new function.
5314         * python/py-infthread.c (create_thread_object): Use
5315         inferior_to_inferior_object.
5316         (thpy_is_stopped): Use thread pointer directly.
5317         (gdbpy_selected_thread): Use inferior_thread.
5318         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5319         field, replaced with ...
5320         <thread>: ... this new field.  All users adjusted.
5321         (btpy_insn_or_gap_new): Drop const.
5322         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5323         callers adjusted.
5324         * python/py-record.c: Include "gdbthread.h".
5325         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5326         a ptid_t.  All callers adjusted.
5327         (gdbpy_current_recording): Use inferior_thread.
5328         * python/py-record.h (recpy_record_object) <ptid>: Delete
5329         field, replaced with ...
5330         <thread>: ... this new field.  All users adjusted.
5331         (recpy_element_object) <ptid>: Delete
5332         field, replaced with ...
5333         <thread>: ... this new field.  All users adjusted.
5334         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5335         a ptid_t.  All callers adjusted.
5336         * python/py-threadevent.c: Include "gdbthread.h".
5337         (get_event_thread): Use thread_to_thread_object.
5338         * python/python-internal.h (struct inferior_object): Forward
5339         declare.
5340         (find_thread_object, find_inferior_object): Delete declarations.
5341         (thread_to_thread_object, inferior_to_inferior_object): New
5342         declarations.
5343         * record-btrace.c: Include "inferior.h".
5344         (require_btrace_thread): Use inferior_thread.
5345         (record_btrace_frame_sniffer)
5346         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5347         (get_thread_current_frame): Use scoped_restore_current_thread and
5348         switch_to_thread.
5349         (get_thread_current_frame): Use thread pointer directly.
5350         (record_btrace_replay_at_breakpoint): Use thread's inferior
5351         pointer directly.
5352         * record-full.c: Include "inferior.h".
5353         * regcache.c: Include "gdbthread.h".
5354         (get_thread_arch_regcache): Use the inferior's address space
5355         directly.
5356         (get_thread_regcache, registers_changed_thread): New.
5357         * regcache.h (get_thread_regcache(thread_info *thread)): New
5358         overload.
5359         (registers_changed_thread): New.
5360         (remote_target) <remote_detach_1>: Swap order of parameters.
5361         (remote_add_thread): <remote_add_thread>: Return the new thread.
5362         (get_remote_thread_info(ptid_t)): New overload.
5363         (remote_target::remote_notice_new_inferior): Use thread pointers
5364         directly.
5365         (remote_target::process_initial_stop_replies): Use
5366         thread_info::set_running.
5367         (remote_target::remote_detach_1, remote_target::detach)
5368         (extended_remote_target::detach): Adjust.
5369         * stack.c (frame_show_address): Use inferior_thread.
5370         * target-debug.h (target_debug_print_thread_info_pp): New.
5371         * target-delegates.c: Regenerate.
5372         * target.c (default_thread_address_space): Delete.
5373         (memory_xfer_partial_1): Use current_inferior.
5374         (target_detach): Use current_inferior.
5375         (target_thread_address_space): Delete.
5376         (generic_mourn_inferior): Use current_inferior.
5377         * target.h (struct target_ops) <thread_address_space>: Delete.
5378         (target_thread_address_space): Delete.
5379         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5380         pointers directly.
5381         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5382         thread pointer instead of a ptid_t.  Adjust all callers.
5383         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5384         (first_thread_of_process): Delete, replaced by ...
5385         (first_thread_of_inferior): ... this new function.  All callers
5386         adjusted.
5387         (any_thread_of_process): Rename to ...
5388         (any_thread_of_inferior): ... this, and take an inferior pointer.
5389         (any_live_thread_of_process): Rename to ...
5390         (any_live_thread_of_inferior): ... this, and take an inferior
5391         pointer.
5392         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5393         (value_in_thread_stack_temporaries)
5394         (get_last_thread_stack_temporary): Take a thread pointer instead
5395         of a ptid_t.  Adjust all callers.
5396         (thread_info::set_running): New.
5397         (validate_registers_access): Use inferior_thread.
5398         (can_access_registers_ptid): Rename to ...
5399         (can_access_registers_thread): ... this, and take a thread
5400         pointer.
5401         (print_thread_info_1): Adjust to compare thread pointers instead
5402         of ptids.
5403         (switch_to_no_thread, switch_to_thread): Make extern.
5404         (scoped_restore_current_thread::~scoped_restore_current_thread):
5405         Use m_thread pointer directly.
5406         (scoped_restore_current_thread::scoped_restore_current_thread):
5407         Use inferior_thread.
5408         (thread_command): Use thread pointer directly.
5409         (thread_num_make_value_helper): Use inferior_thread.
5410         * top.c (execute_command): Use inferior_thread.
5411         * tui/tui-interp.c: Include "inferior.h".
5412         * varobj.c (varobj_create): Use inferior_thread.
5413         (value_of_root_1): Use find_thread_global_id instead of
5414         global_thread_id_to_ptid.
5415
5416 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5417
5418         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5419         possible.
5420         (regcache::write_part): Likewise.
5421         (readable_regcache::cooked_read_part): Update comment.
5422         (readable_regcache::cooked_write_part): Likewise.
5423         * regcache.h: (readable_regcache::read_part): Likewise.
5424         (regcache::write_part): Likewise.
5425
5426 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5427             Dirk Schubert  <dirk.schubert@arm.com>
5428
5429         * aarch64-linux-nat.c (post_attach): New.
5430         (aarch64_linux_nat_target::post_attach): Override post_attach to
5431         record the number of hardware debug registers.
5432
5433 2018-06-20  Tom Tromey  <tom@tromey.com>
5434
5435         * python/py-param.c (add_setshow_generic): Make parameters const.
5436         (parmpy_init): Update.
5437
5438 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5439
5440         * regcache.h (regcache_cooked_read_ftype): Rename to...
5441         (register_read_ftype): ...this, change type to function_view.
5442         (class reg_buffer) <save>: Remove src parameter.
5443         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5444         parameter non-const in first overload.  Remove src parameter in
5445         second overload.
5446         * regcache.c (do_cooked_read): Remove.
5447         (readonly_detached_regcache::readonly_detached_regcache): Make
5448         parameter non-const, adjust call to other constructor.
5449         (reg_buffer::save): Remove src parameter.
5450         * frame.c (do_frame_register_read): Remove.
5451         (frame_save_as_regcache): Use lambda function.
5452         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5453         parameter to ppu2spu_data *.
5454         (ppu2spu_sniffer): Use lambda function.
5455
5456 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5457
5458         * record-full.c (record_full_target::insert_breakpoint): Remove
5459         "struct" keyword, add const.
5460
5461 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5462
5463         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5464         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5465         * configure.ac: Remove AC_PREREQ, add missing quoting.
5466         * gnulib/configure.ac: Modernize usage of
5467         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5468         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5469         (AUTOMAKE_VERSION): Bump to 1.15.1.
5470         * configure: Re-generate.
5471         * config.in: Re-generate.
5472         * aclocal.m4: Re-generate.
5473         * gnulib/aclocal.m4: Re-generate.
5474         * gnulib/config.in: Re-generate.
5475         * gnulib/configure: Re-generate.
5476         * gnulib/import/Makefile.in: Re-generate.
5477
5478 2018-06-19  Pedro Alves  <palves@redhat.com>
5479
5480         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5481         (lookup_minimal_symbol_by_pc_section): ... here with
5482         gdb_assert_not_reached added.
5483
5484 2018-06-19  Pedro Alves  <palves@redhat.com>
5485
5486         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5487         parameter with a block parameter.  Compare location's block symbol
5488         with the frame's block instead of addresses.
5489         (skip_inline_frames): Pass the current block instead of the
5490         frame's address.  Break out as soon as we determine the frame
5491         should not be skipped.
5492
5493 2018-06-18  Tom Tromey  <tom@tromey.com>
5494
5495         * solib-aix.c (solib_aix_get_section_offsets): Return
5496         unique_xmalloc_ptr.
5497         (solib_aix_solib_create_inferior_hook): Update.
5498
5499 2018-06-18  Tom Tromey  <tom@tromey.com>
5500
5501         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5502
5503 2018-06-18  Tom Tromey  <tom@tromey.com>
5504
5505         * solib-frv.c (frv_relocate_main_executable): Use
5506         unique_xmalloc_ptr.
5507         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5508         unique_xmalloc_ptr.
5509
5510 2018-06-18  Tom Tromey  <tom@tromey.com>
5511
5512         * objfiles.h (inhibit_section_map_updates): Update.
5513         (resume_section_map_updates, resume_section_map_updates_cleanup):
5514         Remove.
5515         * solib-svr4.c (svr4_handle_solib_event): Update.
5516         * objfiles.c (inhibit_section_map_updates): Return
5517         scoped_restore_tmpl<int>.
5518         (resume_section_map_updates, resume_section_map_updates_cleanup):
5519         Remove.
5520
5521 2018-06-18  Tom Tromey  <tom@tromey.com>
5522
5523         * valprint.h (read_string): Update.
5524         * valprint.c (read_string): Change type of "buffer".
5525         (val_print_string): Update.
5526         * python/py-value.c (valpy_string): Update.
5527         * language.h (struct language_defn) <la_get_string>: Change
5528         type of "buffer".
5529         (default_get_string, c_get_string): Update.
5530         * language.c (default_get_string): Change type of "buffer".
5531         * guile/scm-value.c (gdbscm_value_to_string): Update.
5532         * c-lang.c (c_get_string): Change type of "buffer".
5533
5534 2018-06-18  Tom Tromey  <tom@tromey.com>
5535
5536         * ser-mingw.c (struct pipe_state_destroyer): New.
5537         (pipe_state_up): New typedef.
5538         (cleanup_pipe_state): Remove.
5539         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5540
5541 2018-06-18  Tom Tromey  <tom@tromey.com>
5542
5543         * rust-lang.h (rust_yyerror): Don't declare.
5544         * rust-lang.c (rust_language_defn): Update.
5545         * rust-exp.y (yyerror): Now static.
5546         * parse.c (parse_exp_in_context_1): Update.
5547         * p-lang.h (p_yyerror): Don't declare.
5548         * p-lang.c (p_language_defn): Update.
5549         * p-exp.y (yyerror): Now static.
5550         * opencl-lang.c (opencl_language_defn): Update.
5551         * objc-lang.c (objc_language_defn): Update.
5552         * m2-lang.h (m2_yyerror): Don't declare.
5553         * m2-lang.c (m2_language_defn): Update.
5554         * m2-exp.y (yyerror): Now static.
5555         * language.h (struct language_defn) <la_error>: Remove.
5556         * language.c (unk_lang_error): Remove.
5557         (unknown_language_defn, auto_language_defn): Remove.
5558         * go-lang.h (go_yyerror): Don't declare.
5559         * go-lang.c (go_language_defn): Update.
5560         * go-exp.y (yyerror): Now static.
5561         * f-lang.h (f_yyerror): Don't declare.
5562         * f-lang.c (f_language_defn): Update.
5563         * f-exp.y (yyerror): Now static.
5564         * d-lang.h (d_yyerror): Don't declare.
5565         * d-lang.c (d_language_defn): Update.
5566         * d-exp.y (yyerror): Now static.
5567         * c-lang.h (c_yyerror): Don't declare.
5568         * c-lang.c (c_language_defn, cplus_language_defn)
5569         (asm_language_defn, minimal_language_defn): Update.
5570         * c-exp.y (yyerror): Now static.
5571         * ada-lang.h (ada_yyerror): Don't declare.
5572         * ada-lang.c (ada_language_defn): Update.
5573         * ada-exp.y (yyerror): Now static.
5574
5575 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5576
5577         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5578         (store_sveregs_to_thread): Likewise.
5579         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5580         (aarch64_linux_store_inferior_registers): Likewise.
5581         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5582         function.
5583         (aarch64_sve_regs_copy_to_regcache): Likewise.
5584         (aarch64_sve_regs_copy_from_regcache): Likewise.
5585         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5586         declaration.
5587         (aarch64_sve_regs_copy_to_regcache): Likewise.
5588         (aarch64_sve_regs_copy_from_regcache): Likewise.
5589         (sve_context): Structure from Linux headers.
5590         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5591         (SVE_SIG_ZREG_SIZE): Likewise.
5592         (SVE_SIG_PREG_SIZE): Likewise.
5593         (SVE_SIG_FFR_SIZE): Likewise.
5594         (SVE_SIG_REGS_OFFSET): Likewise.
5595         (SVE_SIG_ZREGS_OFFSET): Likewise.
5596         (SVE_SIG_ZREG_OFFSET): Likewise.
5597         (SVE_SIG_ZREGS_SIZE): Likewise.
5598         (SVE_SIG_PREGS_OFFSET): Likewise.
5599         (SVE_SIG_PREG_OFFSET): Likewise.
5600         (SVE_SIG_PREGS_SIZE): Likewise.
5601         (SVE_SIG_FFR_OFFSET): Likewise.
5602         (SVE_SIG_REGS_SIZE): Likewise.
5603         (SVE_SIG_CONTEXT_SIZE): Likewise.
5604         (SVE_PT_REGS_MASK): Likewise.
5605         (SVE_PT_REGS_FPSIMD): Likewise.
5606         (SVE_PT_REGS_SVE): Likewise.
5607         (SVE_PT_VL_INHERIT): Likewise.
5608         (SVE_PT_VL_ONEXEC): Likewise.
5609         (SVE_PT_REGS_OFFSET): Likewise.
5610         (SVE_PT_FPSIMD_OFFSET): Likewise.
5611         (SVE_PT_FPSIMD_SIZE): Likewise.
5612         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5613         (SVE_PT_SVE_PREG_SIZE): Likewise.
5614         (SVE_PT_SVE_FFR_SIZE): Likewise.
5615         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5616         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5617         (__SVE_SIG_TO_PT): Likewise.
5618         (SVE_PT_SVE_OFFSET): Likewise.
5619         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5620         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5621         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5622         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5623         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5624         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5625         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5626         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5627         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5628         (SVE_PT_SVE_SIZE): Likewise.
5629         (SVE_PT_SIZE): Likewise.
5630         (HAS_SVE_STATE): New define.
5631
5632 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5633
5634         * nat/aarch64-sve-linux-sigcontext.h: New file.
5635         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5636         new files.
5637         (SVE_VQ_MIN): Likewise.
5638         (SVE_VQ_MAX): Likewise.
5639         (SVE_VL_MIN): Likewise.
5640         (SVE_VL_MAX): Likewise.
5641         (SVE_NUM_ZREGS): Likewise.
5642         (SVE_NUM_PREGS): Likewise.
5643         (sve_vl_valid): Likewise.
5644         (struct user_sve_header): Likewise.
5645
5646 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5647             Richard Bunt <Richard.Bunt@arm.com>
5648
5649         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5650         was requested by GDB.
5651
5652 2018-06-15  Tom de Vries  <tdevries@suse.de>
5653
5654         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5655
5656 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5657
5658         * gnulib/update-gnulib.sh: Print expected versions of
5659         autoconf/aclocal.
5660
5661 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5662
5663         * arch-utils.c (default_type_align): Use type_length_units.
5664         * gdbtypes.c (type_align): Use type_length_units.
5665
5666 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5667
5668         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5669         of 'define' command.
5670
5671 2018-06-14  Tom de Vries  <tdevries@suse.de>
5672
5673         PR cli/22573
5674         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5675         get_no_prettyformat_print_options.
5676
5677 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5678
5679         * sparc-nat.h: Include target.h.
5680         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5681         <fetch_registers>: Remove this argument in function call.
5682         <store_registers>: Remove this argument in function call, remove
5683         extra semicolon.
5684         <low_forget_process>: Call sparc64_forget_process instead of
5685         sparc_forget_process.
5686
5687 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5688
5689         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5690         (procfs_target::make_corefile_notes): Adjust to new
5691         target_read_alloc return type.
5692
5693 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5694             Stephen Roberts  <stephen.roberts@arm.com>
5695
5696         PR gdb/22882
5697         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5698         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5699         Move should_notify_stop local into more inner scope.
5700
5701 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5702             Stephen Roberts  <stephen.roberts@arm.com>
5703
5704         PR gdb/22882
5705         * infrun.c (resume_1): Add call to mark_async_event_handler.
5706
5707 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5708
5709         * infrun.c (do_target_wait): Change old version of $pc printed.
5710
5711 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5712
5713         * dwarf2read.c (read_index_from_section): Rename to...
5714         (read_gdb_index_from_section): ... this, update all callers.
5715         (dwarf2_read_index): Rename to...
5716         (dwarf2_read_gdb_index): ... this, update all callers.
5717
5718 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5719
5720         * gdb/hppa-linux-nat.c
5721         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5722         hppa_linux_nat_target::fetch_registers.
5723
5724 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5725
5726         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5727         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5728         (AARCH64_DWARF_SVE_FFR): Likewise.
5729         (AARCH64_DWARF_SVE_P0): Likewise.
5730         (AARCH64_DWARF_SVE_Z0): Likewise.
5731
5732 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5733
5734         * common/common-regcache.h (raw_compare): New function.
5735         * regcache.c (regcache::raw_compare): Likewise.
5736         * regcache.h (regcache::raw_compare): New declaration.
5737
5738 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5739
5740         * common/common-regcache.h (reg_buffer_common): New structure.
5741         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5742         (reg_buffer::raw_supply): Likewise.
5743         (reg_buffer::raw_supply_integer): Likewise.
5744         (reg_buffer::raw_supply_zeroed): Likewise.
5745         (reg_buffer::raw_collect): Likewise.
5746         (reg_buffer::raw_collect_integer): Likewise.
5747         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5748         (reg_buffer::raw_supply): Likewise.
5749         (reg_buffer::raw_supply_integer): Likewise.
5750         (reg_buffer::raw_supply_zeroed): Likewise.
5751         (reg_buffer::raw_collect): Likewise.
5752         (reg_buffer::raw_collect_integer): Likewise.
5753
5754 2018-06-10  Tom Tromey  <tom@tromey.com>
5755
5756         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5757         (class remote_state) <stop_reply_queue>: Now std::vector.
5758         (remote_state::~remote_state)
5759         (remote_target::stop_reply_queue_length): Update.
5760         (struct queue_iter_param, remove_child_of_pending_fork)
5761         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5762         (check_pending_event_prevents_wildcard_vcont_callback)
5763         (remove_stop_reply_for_inferior)
5764         (remove_stop_reply_of_remote_state)
5765         (remote_notif_remove_once_on_match)
5766         (stop_reply_match_ptid_and_ws)
5767         (remote_kill_child_of_pending_fork): Remove.
5768         (remote_target::remove_new_fork_children)
5769         (remote_target::check_pending_events_prevent_wildcard_vcont)
5770         (remote_target::discard_pending_stop_replies)
5771         (remote_target::discard_pending_stop_replies_in_queue)
5772         (remote_target::remote_notif_remove_queued_reply)
5773         (remote_target::queued_stop_reply)
5774         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5775         (remote_target::wait, remote_target::kill_new_fork_children)
5776         (remote_target::async): Update.
5777
5778 2018-06-10  Tom Tromey  <tom@tromey.com>
5779
5780         * record-full.c (record_full_arch_list_cleanups): Remove.
5781         (record_full_message): Use try/catch.
5782         (record_full_wait_cleanups): Remove.
5783         (record_full_wait_1): Use try/catch.
5784         (record_full_restore): Likewise.
5785
5786 2018-06-10  Tom Tromey  <tom@tromey.com>
5787
5788         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5789         declare VEC.  Add constructor.
5790         <in_target_beneath>: Now bool.
5791         (record_full_breakpoints): Now a std::vector, static.
5792         (record_full_sync_record_breakpoints)
5793         (record_full_init_record_breakpoints)
5794         (record_full_target::insert_breakpoint)
5795         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5796
5797 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5798
5799         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5800         * serial.c (serial_interface_lookup): Remove struct keyword.
5801
5802 2018-06-10  Tom Tromey  <tom@tromey.com>
5803
5804         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5805         method.
5806         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5807         a method.
5808         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5809         method.
5810         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5811         "beneath" as a method.
5812         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5813         Use "beneath" as a method.
5814
5815 2018-06-10  Tom Tromey  <tom@tromey.com>
5816
5817         * tracefile.c (struct trace_file_writer_deleter): New.
5818         <operator()>: Rename from trace_file_writer_xfree.
5819         (trace_file_writer_up): New typedef.
5820         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5821
5822 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5823
5824         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5825         <m_registers, m_register_status>: Change type to
5826         std::unique_ptr.
5827         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5828         XCNEWVEC.
5829
5830 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5831
5832         * common/common-regcache.h (enum register_status): Add
5833         underlying type "signed char".
5834         * regcache.h (reg_buffer) <m_register_status>: Change type to
5835         register_status *.
5836         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5837         register_status instead of signed char.
5838         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5839         (reg_buffer::get_register_status): Remove cast.
5840         (readable_regcache::raw_read): Remove cast.
5841         (readable_regcache::cooked_read): Remove cast.
5842
5843 2018-06-09  Tom Tromey  <tom@tromey.com>
5844
5845         * source.c (reverse_search_command, forward_search_command): Use
5846         scoped_fd.
5847
5848 2018-06-09  Tom Tromey  <tom@tromey.com>
5849
5850         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5851         (serial_ops_list): Now static, std::vector.
5852         (serial_interface_lookup, serial_add_interface): Update.
5853
5854 2018-06-09  Tom Tromey  <tom@tromey.com>
5855
5856         * dwarf2read.c (process_cu_includes): Update.
5857         (process_full_comp_unit): Update.
5858         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5859         std::vector.
5860
5861 2018-06-08  Paul Koning  <paul_koning@dell.com>
5862
5863         PR gdb/23252
5864
5865         * python/python.c (do_start_initialization):
5866         Avoid call to internal Python API.
5867         (init__gdb_module): New function.
5868
5869 2018-06-08  Gary Benson <gbenson@redhat.com>
5870
5871         * linux-thread-db.c (valprint.h): New include.
5872         (struct check_thread_db_info): New structure.
5873         (check_thread_db_on_load, tdb_testinfo): New static globals.
5874         (check_thread_db, check_thread_db_callback): New functions.
5875         (try_thread_db_load_1): Run integrity checks if requested.
5876         (maintenance_check_libthread_db): New function.
5877         (_initialize_thread_db): Register "maint check libthread-db"
5878         and "maint set/show check-libthread-db".
5879         * NEWS: Mention the above new commands.
5880
5881 2018-06-08  Tom Tromey  <tom@tromey.com>
5882
5883         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5884         now a method.
5885
5886 2018-06-08  Tom Tromey  <tom@tromey.com>
5887
5888         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5889
5890 2018-06-08  Tom Tromey  <tom@tromey.com>
5891
5892         * common/btrace-common.h (struct btrace_data): Add constructor,
5893         destructor, move assignment operator.
5894         <empty, clear, fini>: New methods.
5895         <format>: Initialize.
5896         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5897         (btrace_data_empty): Don't declare.
5898         * common/btrace-common.c (btrace_data_init): Remove.
5899         (btrace_data::fini): Rename from btrace_data_fini.
5900         (btrace_data::empty): Rename from btrace_data_empty.
5901         (btrace_data::clear): Rename from btrace_data_clear.  Return
5902         bool.
5903         * btrace.h (make_cleanup_btrace_data): Don't declare.
5904         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5905         (parse_xml_btrace): Update.
5906         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5907         (maint_btrace_clear_packet_history_cmd): Update.
5908
5909 2018-06-07  Pedro Alves  <palves@redhat.com>
5910
5911         * target.h (target_ops) <beneath>: Now a method.  All references
5912         updated.
5913         (class target_stack): New.
5914         * target.c (g_target_stack): New.
5915         (g_current_top_target): Delete.
5916         (current_top_target): Get the top target out of g_target_stack.
5917         (target_stack::push, target_stack::unpush): New.
5918         (push_target, unpush_target): Reimplement.
5919         (target_is_pushed): Reimplement in terms of g_target_stack.
5920         (target_ops::beneath, target_stack::find_beneath): New.
5921
5922 2018-06-07  Pedro Alves  <palves@redhat.com>
5923
5924         * target.h (find_target_beneath): Delete declaration.
5925         * target.c (find_target_beneath): Delete definition.
5926         * aix-thread.c: All callers of find_target_beneath adjusted to
5927         call target_ops::beneath instead.
5928         * bsd-uthread.c: Likewise.
5929         * linux-thread-db.c: Likewise.
5930         * ravenscar-thread.c: Likewise.
5931         * sol-thread.c: Likewise.
5932         * spu-multiarch.c: Likewise.
5933
5934 2018-06-07  Pedro Alves  <palves@redhat.com>
5935
5936         * target.h (target_ops) <beneath>: Now a method.  All references
5937         updated.
5938         (target_ops) <m_beneath>: New.
5939         * target.c (target_ops::beneath): New.
5940         * corelow.c: Adjust all references to target_ops::beneath.
5941         * linux-thread-db.c: Likewise.
5942         * make-target-delegates: Likewise.
5943         * record-btrace.c: Likewise.
5944         * record-full.c: Likewise.
5945         * remote.c: Likewise.
5946         * target.c: Likewise.
5947         * target-delegates.c: Regenerate.
5948
5949 2018-06-07  Pedro Alves  <palves@redhat.com>
5950
5951         * target.h (target_stack): Delete.
5952         (current_top_target): Declare function.
5953         * target.c (target_stack): Delete.
5954         (g_current_top_target): New.
5955         (current_top_target): New function.
5956         * auxv.c: Use current_top_target instead of target_stack
5957         throughout.
5958         * avr-tdep.c: Likewise.
5959         * breakpoint.c: Likewise.
5960         * corefile.c: Likewise.
5961         * elfread.c: Likewise.
5962         * eval.c: Likewise.
5963         * exceptions.c: Likewise.
5964         * frame.c: Likewise.
5965         * gdbarch-selftests.c: Likewise.
5966         * gnu-v3-abi.c: Likewise.
5967         * ia64-tdep.c: Likewise.
5968         * ia64-vms-tdep.c: Likewise.
5969         * infcall.c: Likewise.
5970         * infcmd.c: Likewise.
5971         * infrun.c: Likewise.
5972         * linespec.c: Likewise.
5973         * linux-tdep.c: Likewise.
5974         * minsyms.c: Likewise.
5975         * ppc-linux-nat.c: Likewise.
5976         * ppc-linux-tdep.c: Likewise.
5977         * procfs.c: Likewise.
5978         * regcache.c: Likewise.
5979         * remote.c: Likewise.
5980         * rs6000-tdep.c: Likewise.
5981         * s390-linux-nat.c: Likewise.
5982         * s390-tdep.c: Likewise.
5983         * solib-aix.c: Likewise.
5984         * solib-darwin.c: Likewise.
5985         * solib-dsbt.c: Likewise.
5986         * solib-spu.c: Likewise.
5987         * solib-svr4.c: Likewise.
5988         * solib-target.c: Likewise.
5989         * sparc-tdep.c: Likewise.
5990         * sparc64-tdep.c: Likewise.
5991         * spu-tdep.c: Likewise.
5992         * symfile.c: Likewise.
5993         * symtab.c: Likewise.
5994         * target-descriptions.c: Likewise.
5995         * target-memory.c: Likewise.
5996         * target.c: Likewise.
5997         * target.h: Likewise.
5998         * tracefile-tfile.c: Likewise.
5999         * tracepoint.c: Likewise.
6000         * valops.c: Likewise.
6001         * valprint.c: Likewise.
6002         * value.c: Likewise.
6003         * windows-tdep.c: Likewise.
6004         * mi/mi-main.c: Likewise.
6005
6006 2018-06-07  Tom Tromey  <tom@tromey.com>
6007
6008         * valprint.h (build_address_symbolic): Declare.
6009         * printcmd.c (print_address_symbolic): Update.
6010         (build_address_symbolic): Change "name" and "filename" to
6011         std::string.
6012         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6013         Update.
6014         * defs.h (build_address_symbolic): Remove declaration.
6015
6016 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6017
6018         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6019         (aarch64_vnv_type): Add function.
6020         (aarch64_pseudo_register_name): Add V regs for SVE.
6021         (aarch64_pseudo_register_type): Likewise.
6022         (aarch64_pseudo_register_reggroup_p): Likewise.
6023         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6024         (aarch64_pseudo_read_value): Add V regs for SVE.
6025         (aarch64_pseudo_write_2): Use V0 offset for SVE
6026         (aarch64_pseudo_write): Add V regs for SVE.
6027         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6028
6029 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6030
6031         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6032         (sve_vl_from_vq): Likewise.
6033
6034 2018-06-05  Tom Tromey  <tom@tromey.com>
6035
6036         * cli/cli-cmds.c (show_version): Update.
6037         * top.c (print_gdb_version): Add "interactive" parameter.
6038         Update.
6039         * main.c (captured_main_1): Update.
6040         * top.h (print_gdb_version): Add "interactive" parameter and a
6041         comment.
6042
6043 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6044
6045         * common/enum-flags.h: Add trailing semicolon to example in
6046         comment.
6047
6048 2018-06-05  Tom Tromey  <tom@tromey.com>
6049
6050         PR cli/12326:
6051         * NEWS: Add entry about pager.
6052         * utils.c (pagination_disabled_for_command): New global.
6053         (prompt_for_continue): Allow "c" response to prompt.
6054         (reinitialize_more_filter): Clear
6055         pagination_disabled_for_command.
6056         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6057
6058 2018-06-04  Tom Tromey  <tom@tromey.com>
6059
6060         * ada-lang.h (ada_lookup_symbol_list): Update.
6061         * ada-lang.c (resolve_subexp): Update.
6062         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6063         parameter.
6064         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6065         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6066         results parameter to std::vector.
6067         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6068         Update.
6069         * ada-exp.y (block_lookup): Update.
6070         (select_possible_type_sym): Change type of syms.  Remove nsyms
6071         parameter.
6072         (write_var_or_type, write_name_assoc): Update.
6073
6074 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6075
6076         * windows-nat.c (windows_nat_target::xfer_partial): Return
6077         TARGET_XFER_E_IO if we need to delegate to the target beneath
6078         but BENEATH is NULL.
6079
6080 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6081
6082         * Makefile.in (config.status): Add configure.nat as a
6083         dependency.
6084
6085 2018-06-04  Tom Tromey  <tom@tromey.com>
6086
6087         * cp-name-parser.y (cpname_state): Add method declarations.
6088         (HANDLE_QUAL): Update.
6089         (cpname_state::d_grab, cpname_state::fill_comp)
6090         (cpname_state::make_operator, cpname_state::make_dtor)
6091         (cpname_state::make_builtin_type, cpname_state::make_name)
6092         (cpname_state::d_qualify, cpname_state::d_int_type)
6093         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6094         (%union): Move earlier.
6095
6096 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6097
6098         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6099
6100 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6101
6102         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6103         (aarch64_pseudo_write_1): Likewise.
6104         (aarch64_pseudo_read_value): Use helper.
6105         (aarch64_pseudo_write): Likewise.
6106
6107 2018-06-04  Pedro Alves  <palves@redhat.com>
6108
6109         * darwin-nat.c (darwin_ops): Delete.
6110         (darwin_attach_pid): Use get_native_target.
6111
6112 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6113
6114         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6115         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6116
6117 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6118
6119         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6120         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6121         (aarch64_gdbarch_init): Check for SVE.
6122         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6123
6124 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6125
6126         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6127         * aarch64-tdep.h (aarch64_read_description): Likewise.
6128         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6129         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6130         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6131         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6132         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6133
6134 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6135
6136         * value.c (value_fetch_lazy_bitfield): New.
6137         (value_fetch_lazy_memory): New.
6138         (value_fetch_lazy_register): New.
6139         (value_fetch_lazy): Factor out to smaller functions.
6140
6141 2018-06-01  Tom Tromey  <tom@tromey.com>
6142
6143         * cp-name-parser.y (backslashable, represented): Now const.
6144
6145 2018-06-01  Tom Tromey  <tom@tromey.com>
6146
6147         * cp-name-parser.y: Include parser-defs.h.
6148         (parser_fprintf): Remove declaration.
6149
6150 2018-06-01  Tom Tromey  <tom@tromey.com>
6151
6152         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6153         %parse-param.
6154         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6155         (global_result): Remove globals.
6156         (struct cpname_state): New.
6157         (yyparse): Don't declare.
6158         (yylex, yyerror): Move declarations after %union.
6159         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6160         (make_name): Add state parameter.
6161         Update all callers.
6162         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6163         parameter.
6164         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6165         Update.
6166         (yylex): Add lvalp, state parameters.
6167         (yyerror): Add state parameter.
6168         (cp_demangled_name_to_comp): Update.
6169
6170 2018-06-01  Tom Tromey  <tom@tromey.com>
6171
6172         * cp-name-parser.y (parser_fprintf): Declare.
6173         (GDB_YY_REMAP_PREFIX): Define.
6174         Include yy-remap.h.  Don't redefine yy* identifiers.
6175
6176 2018-06-01  Tom Tromey  <tom@tromey.com>
6177
6178         * python/py-type.c (typy_legacy_template_argument): Update.
6179         * cp-support.h (cp_demangled_name_to_comp): Update.
6180         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6181         parameter to be a "std::string *".
6182         (main): Update.
6183
6184 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6185
6186         * ada-lex.l: Include "diagnostics.h" instead of
6187         "common/diagnostics.h".
6188         * unittests/environ-selftests.c: Likewise.
6189         * common/diagnostics.h: Moved to ../include.
6190
6191 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6192
6193         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6194         to language_mode_manual while calling breakpoint_re_set_one.
6195
6196 2018-06-01  Tom Tromey  <tom@tromey.com>
6197
6198         * valops.c (value_cast_structs, destructor_name_p): Update.
6199         * symtab.c (gdb_mangle_name): Update.
6200         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6201         Update.
6202         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6203         (pascal_object_print_value_fields, pascal_object_print_value):
6204         Update.
6205         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6206         * linespec.c (find_methods): Update.
6207         * gdbtypes.h (type_name_no_tag): Remove.
6208         (type_name_or_error): Rename from type_name_no_tag_or_error.
6209         * gdbtypes.c (type_name_no_tag): Remove.
6210         (type_name_or_error): Rename from type_name_no_tag_or_error.
6211         (lookup_struct_elt_type, check_typedef): Update.
6212         * expprint.c (print_subexp_standard): Update.
6213         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6214         * d-namespace.c (d_lookup_nested_symbol): Update.
6215         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6216         (cp_print_class_member): Update.
6217         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6218         * completer.c (add_struct_fields): Update.
6219         * c-typeprint.c (cp_type_print_derivation_info)
6220         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6221         Update.
6222         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6223         (ada_prefer_type, ada_is_exception_sym): Update.
6224
6225 2018-06-01  Tom Tromey  <tom@tromey.com>
6226
6227         * valops.c (enum_constant_from_type, value_namespace_elt)
6228         (value_maybe_namespace_elt): Update.
6229         * valarith.c (find_size_for_pointer_math): Update.
6230         * target-descriptions.c (make_gdb_type): Update.
6231         * symmisc.c (print_symbol): Update.
6232         * stabsread.c (define_symbol, read_type)
6233         (complain_about_struct_wipeout, add_undefined_type)
6234         (cleanup_undefined_types_1): Update.
6235         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6236         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6237         (rust_internal_print_type, rust_composite_type)
6238         (rust_evaluate_funcall, rust_evaluate_subexp)
6239         (rust_inclusive_range_type_p): Update.
6240         * python/py-type.c (typy_get_tag): Update.
6241         * p-typeprint.c (pascal_type_print_base): Update.
6242         * mdebugread.c (parse_symbol, parse_type): Update.
6243         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6244         Update.
6245         * guile/scm-type.c (gdbscm_type_tag): Update.
6246         * go-lang.c (sixg_string_p): Update.
6247         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6248         Update.
6249         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6250         (TYPE_TAG_NAME): Remove.
6251         * gdbtypes.c (type_name_no_tag): Simplify.
6252         (check_typedef, check_types_equal, recursive_dump_type)
6253         (copy_type_recursive, arch_composite_type): Update.
6254         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6255         in summary mode when needed.
6256         * eval.c (evaluate_funcall): Update.
6257         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6258         (process_structure_scope, read_enumeration_type)
6259         (read_namespace_type, read_module_type, determine_prefix): Update.
6260         * cp-support.c (inspect_type): Update.
6261         * coffread.c (process_coff_symbol, decode_base_type): Update.
6262         * c-varobj.c (c_is_path_expr_parent): Update.
6263         * c-typeprint.c (c_type_print_base_struct_union): Update.
6264         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6265         summary when using C language.
6266         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6267         (gen_maybe_namespace_elt): Update.
6268         * ada-lang.c (ada_type_name): Simplify.
6269         (empty_record, ada_template_to_fixed_record_type_1)
6270         (template_to_static_fixed_type)
6271         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6272
6273 2018-06-01  Tom Tromey  <tom@tromey.com>
6274
6275         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6276         c_print_type.
6277         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6278         (c_print_type): Update.
6279         (c_print_type): New overload.
6280         (c_type_print_varspec_prefix, c_type_print_args)
6281         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6282         (c_type_print_base_struct_union, c_type_print_base_1)
6283         (cp_type_print_method_args): Add "language" parameter.
6284         (c_type_print_base): Update.
6285         * c-lang.h (c_print_type): Add new overload.
6286
6287 2018-06-01  Tom Tromey  <tom@tromey.com>
6288
6289         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6290         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6291
6292 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6293
6294         * aarch64-tdep.c (aarch64_sve_register_names): New const
6295         var.
6296         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6297         (AARCH64_SVE_Z_REGS_NUM): New define.
6298         (AARCH64_SVE_P_REGS_NUM): Likewise.
6299         (AARCH64_SVE_NUM_REGS): Likewise.
6300
6301 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6302
6303         * nat/linux-ptrace.h [__alpha__]
6304         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6305         definitions.
6306
6307 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6308
6309         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6310         the endianness selected.
6311         * NEWS: Document `set endian auto' mode operation update.
6312
6313 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6314
6315         * Makefile.in: Add new header.
6316         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6317         (sve_vl_from_vg): Likewise.
6318         (sve_vq_from_vl): Likewise.
6319         (sve_vl_from_vq): Likewise.
6320         (sve_vq_from_vg): Likewise.
6321         (sve_vg_from_vq): Likewise.
6322         * configure.nat: Add new c file.
6323         * nat/aarch64-sve-linux-ptrace.c: New file.
6324         * nat/aarch64-sve-linux-ptrace.h: New file.
6325
6326 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6327
6328         * aarch64-linux-nat.c (aarch64_linux_read_description):
6329         Add parmeter zero.
6330         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6331         Likewise.
6332         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6333         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6334         (aarch64_gdbarch_init): Add parmeter zero.
6335         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6336         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6337         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6338         parmeter.
6339         * doc/gdb.texinfo: Describe SVE feature
6340         * features/aarch64-sve.c: New file.
6341
6342 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6343
6344         PR gdb/23210
6345         * gdbarch.sh (significant_addr_bit): Default to zero when
6346         not set by target architecture.
6347         * gdbarch.c: Re-generated.
6348         * utils.c (address_significant): Update.
6349
6350 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6351
6352         * stack.c (func_command): Remove trailing newline in call to error.
6353
6354 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6355
6356         * regcache.h (regcache_raw_collect): Remove, update callers to
6357         use regcache::raw_collect.
6358         * regcache.c (regcache_raw_collect): Remove.
6359
6360 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6361
6362         * regcache.h (regcache_raw_supply): Remove, update callers to
6363         use detached_regcache::raw_supply.
6364         * regcache.c (regcache_raw_supply): Remove.
6365
6366 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6367
6368         * regcache.h (regcache_cooked_write_part): Remove, update
6369         callers to use regcache::cooked_write_part.
6370         * regcache.c (regcache_cooked_write_part): Remove.
6371
6372 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6373
6374         * regcache.h (regcache_cooked_read_part): Remove, update callers
6375         to use readable_regcache::cooked_read_part.
6376         * regcache.c (regcache_cooked_read_part): Remove.
6377
6378 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6379
6380         * regcache.h (regcache_cooked_read_value): Remove, update
6381         callers to use readable_regcache::cooked_read_value.
6382         * regcache.c (regcache_cooked_read_value): Remove.
6383
6384 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6385
6386         * regcache.h (regcache_cooked_write): Remove, update callers to
6387         use regcache::cooked_write.
6388         * regcache.c (regcache_cooked_write): Remove.
6389
6390 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6391
6392         * regcache.h (regcache_invalidate): Remove, update callers to
6393         use detached_regcache::invalidate instead.
6394         * regcache.c (regcache_invalidate): Remove.
6395
6396 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6397
6398         * regcache.h (regcache_raw_write_part): Remove, update callers
6399         to use regcache::raw_write_part instead.
6400         * regcache.c (regcache_raw_write_part): Remove.
6401
6402 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6403
6404         * regcache.h (regcache_raw_read_part): Remove, update callers to
6405         use readable_regcache::raw_read_part instead.
6406         * regcache.c (regcache_raw_read_part): Remove.
6407
6408 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6409
6410         * regcache.h (regcache_cooked_read): Remove, update callers to
6411         use readable_regcache::cooked_read instead.
6412         * regcache.c (regcache_cooked_read): Remove.
6413
6414 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6415
6416         * regcache.h (regcache_raw_write): Remove, update callers to use
6417         regcache::raw_write instead.
6418         * regcache.c (regcache_raw_write): Remove.
6419
6420 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6421
6422         * regcache.h (regcache_raw_read): Remove, update callers to use
6423         readable_regcache::raw_read instead.
6424         * regcache.c (regcache_raw_read): Remove.
6425
6426 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6427
6428         * regcache.h (regcache_raw_update): Remove, update callers to
6429         use readable_regcache::raw_update instead.
6430         * regcache.c (regcache_raw_update): Remove.
6431
6432 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6433
6434         * regcache.h (regcache_register_status): Remove, update callers
6435         to use reg_buffer::get_register_status directly instead.
6436         * regcache.c (regcache_register_status): Remove.
6437
6438 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6439
6440         * regcache.h (regcache_get_ptid): Remove, update all callers to
6441         call regcache::ptid instead.
6442         * regcache.c (regcache_get_ptid): Remove.
6443
6444 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6445
6446         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6447
6448 2018-05-30  Pedro Alves  <palves@redhat.com>
6449
6450         * common/common-exceptions.h (exception_rethrow): Use
6451         ATTRIBUTE_NORETURN.
6452
6453 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6454
6455         * breakpoint.c (print_solib_event, check_status_catch_solib):
6456         Remove struct keyword in range-based for loops.
6457         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6458         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6459         Likewise.
6460         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6461         Likewise.
6462         * symfile.c (addr_info_make_relative): Likewise.
6463         * thread.c (value_in_thread_stack_temporaries): Likewise.
6464
6465 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6466
6467         PR gdb/16841
6468         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6469         aggregate type to get its real type before accessing it.
6470
6471 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6472
6473         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6474         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6475         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6476         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6477         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6478         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6479         * printcmd.c (info_address_command): Likewise.
6480
6481 2018-05-29  Tom Tromey  <tom@tromey.com>
6482
6483         * windows-nat.c (handle_exception): Update fall-through comment.
6484
6485 2018-05-29  Tom Tromey  <tom@tromey.com>
6486
6487         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6488         (struct program_space) <added_solibs>: Now a std::vector.
6489         * breakpoint.c (print_solib_event): Update.
6490         (check_status_catch_solib): Update.
6491         * progspace.c (clear_program_space_solib_cache): Update.
6492         * solib.c (update_solib_list): Update.
6493
6494 2018-05-29  Tom Tromey  <tom@tromey.com>
6495
6496         * python/py-type.c (typy_richcompare): Update.
6497         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6498         * gdbtypes.h (types_deeply_equal): Return bool.
6499         (types_equal): Likewise.
6500         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6501         declare VEC.
6502         (check_types_equal): Change worklist to std::vector.  Return
6503         bool.
6504         (struct type_equality_entry): Add constructor.
6505         (compare_maybe_null_strings): Return bool.
6506         (check_types_worklist): Return bool.  Change worklist to
6507         std::vector.
6508         (types_deeply_equal): Use std::vector.
6509         (types_equal): Return bool.
6510         (compare_maybe_null_strings): Simplify.
6511
6512 2018-05-29  Tom Tromey  <tom@tromey.com>
6513
6514         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6515
6516 2018-05-29  Tom Tromey  <tom@tromey.com>
6517
6518         * objc-lang.h: Don't include cp-support.h.
6519         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6520         declare VEC.
6521
6522 2018-05-27  Tom Tromey  <tom@tromey.com>
6523
6524         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6525
6526 2018-05-25  Tom Tromey  <tom@tromey.com>
6527
6528         * value.c (value::location): Initialize.
6529
6530 2018-05-25  Tom Tromey  <tom@tromey.com>
6531
6532         * dbxread.c (init_bincl_list): Remove.
6533         (bincl_list): Now a std::vector.
6534         (bincls_allocated, next_bincl): Remove.
6535         (free_bincl_list, do_free_bincl_list_cleanup)
6536         (make_cleanup_free_bincl_list): Remove.
6537         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6538         unique_xmalloc_ptr.
6539         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6540         (struct header_file_location): Add constructor.
6541         (add_bincl_to_list): Remove.
6542
6543 2018-05-25  Tom Tromey  <tom@tromey.com>
6544
6545         * tui/tui.c (tui_enable): Update.
6546         * mi/mi-interp.c (mi_interp::init): Update.
6547         * interps.h (class interp) <name>: New method.
6548         <m_name>: Rename from name.
6549         (~scoped_restore_interp): Update.
6550         * interps.c (interp::interp): Update.
6551         (interp_add, interp_set, interp_lookup_existing)
6552         (current_interp_named_p): Update.
6553
6554 2018-05-25  Tom Tromey  <tom@tromey.com>
6555
6556         * interps.c (interp_name): Remove.
6557         * mi/mi-interp.c (mi_interp::init): Update.
6558         * interps.h (interp_name): Remove.
6559         (~scoped_restore_interp): Update.
6560         * tui/tui.c (tui_enable): Update.
6561
6562 2018-05-25  Tom Tromey  <tom@tromey.com>
6563
6564         * utils.c (fputs_maybe_filtered): Update.
6565         * linespec.c (decode_line_full): Update.
6566         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6567         (mi_print_breakpoint_for_event, mi_solib_loaded)
6568         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6569         (mi_user_selected_context_changed): Update.
6570         * mi/mi-main.c (mi_execute_command): Update.
6571         * cli/cli-script.c (execute_control_command): Update.
6572         * python/python.c (execute_gdb_command): Update.
6573         * solib.c (info_sharedlibrary_command): Update.
6574         * interps.c (interp_ui_out): Remove.
6575         * interps.h (interp_ui_out): Remove.
6576
6577 2018-05-25  Tom Tromey  <tom@tromey.com>
6578
6579         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6580         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6581         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6582
6583 2018-05-25  Tom Tromey  <tom@tromey.com>
6584
6585         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6586         * interps.c (interp_exec): Use scoped_restore.
6587
6588 2018-05-25  Tom Tromey  <tom@tromey.com>
6589
6590         * remote.c (remote_target::remote_file_get): Use
6591         gdb::byte_vector.
6592         (remote_target::remote_file_put): Likewise.
6593
6594 2018-05-25  Tom Tromey  <tom@tromey.com>
6595
6596         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6597         a std::string.
6598         (get_pe_section_index, add_pe_exported_sym): Update.
6599         (read_pe_exported_syms): Use gdb::def_vector.
6600
6601 2018-05-25  Tom Tromey  <tom@tromey.com>
6602
6603         * frame.c (remove_prev_frame): Remove.
6604         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6605
6606 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6607
6608         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6609         Remove prototypes.
6610         * mips-linux-nat.c (supply_fpregset): Always call
6611         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6612         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6613         `mips_fill_fpregset'.
6614         * mips-linux-tdep.c (mips_supply_fpregset)
6615         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6616         (mips_fill_fpregset_wrapper): Remove functions.
6617         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6618         (mips_linux_fpregset): Remove variable.
6619         (mips_linux_iterate_over_regset_sections): Use
6620         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6621         (mips_linux_o32_sigframe_init): Remove comment.
6622
6623 2018-05-25  Pedro Alves  <palves@redhat.com>
6624
6625         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6626         (struct readahead_cache, struct packet_reg, struct
6627         remote_arch_state, class remote_state): Move higher up in the
6628         file.
6629         (remote_target::m_remote_state): Now an object instead of a pointer.
6630         (remote_target::get_remote_state): Adjust.
6631
6632 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6633
6634         * stack.c (select_and_print_frame): Delete.
6635         (struct function_bounds): Move struct within function.
6636         (func_command): Most content moved into new function
6637         find_frame_for_function, use new function, print result, add
6638         function comment.
6639         (find_frame_for_function): New function, now returns a result.
6640
6641 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6642
6643         * stack.c (iterate_over_block_arg_vars): Fix comment.
6644         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6645
6646 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6647
6648         PR gdb/23203
6649         * frame.c
6650         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6651         Define.
6652         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6653         Define.
6654         * frame.h (class scoped_restore_selected_frame): New class.
6655         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6656         of any exception, use scoped_restore_selected_frame to restore the
6657         frame instead.
6658
6659 2018-05-24  Pedro Alves  <palves@redhat.com>
6660
6661         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6662         override.
6663
6664 2018-05-23  Tom Tromey  <tom@tromey.com>
6665
6666         * complaints.c (struct complaints): Remove.
6667         (symfile_complaint_book): Remove.
6668         (series): New global.
6669         (complaint_internal): Update.
6670         (clear_complaints): Update.
6671
6672 2018-05-23  Tom Tromey  <tom@tromey.com>
6673
6674         * complaints.c (counters): New global.
6675         (struct complain): Remove.
6676         (struct complaints) <root>: Remove.
6677         (complaint_sentinel): Remove.
6678         (symfile_complaint_book): Update.
6679         (find_complaint) Remove.
6680         (complaint_internal, clear_complaints): Update.
6681
6682 2018-05-23  Tom Tromey  <tom@tromey.com>
6683
6684         * complaints.c (struct complain) <file, line>: Remove.
6685         (find_complaint): Remove file, line parameters.
6686         (complaint_internal): Update.
6687
6688 2018-05-23  Tom Tromey  <tom@tromey.com>
6689
6690         * complaints.c (vcomplaint): Remove.
6691         (complaint_internal) Merge in contents of vcomplaint.
6692
6693 2018-05-23  Tom Tromey  <tom@tromey.com>
6694
6695         * complaints.c (struct complaints) <explanation>: Remove.
6696         (symfile_explanations): Remove.
6697         (symfile_complaint_book): Update.
6698         (vcomplaint): Update.
6699         (struct explanation): Remove.
6700
6701 2018-05-23  Tom Tromey  <tom@tromey.com>
6702
6703         * complaints.c (symfile_complaints): Remove.
6704         (complaint_internal): Remove "complaints" parameter.
6705         (clear_complaints, vcomplaint): Remove "c" parameter.
6706         (get_complaints): Remove.
6707         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6708         (dwarf2_debug_line_missing_file_complaint)
6709         (dwarf2_debug_line_missing_end_sequence_complaint)
6710         (dwarf2_complex_location_expr_complaint)
6711         (dwarf2_const_value_length_mismatch_complaint)
6712         (dwarf2_section_buffer_overflow_complaint)
6713         (dwarf2_macro_malformed_definition_complaint)
6714         (dwarf2_invalid_attrib_class_complaint)
6715         (create_addrmap_from_index, dw2_symtab_iter_next)
6716         (dw2_expand_marked_cus)
6717         (dw2_debug_names_iterator::find_vec_in_debug_names)
6718         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6719         (create_debug_type_hash_table, init_cutu_and_read_dies)
6720         (partial_die_parent_scope, add_partial_enumeration)
6721         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6722         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6723         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6724         (create_cus_hash_table, create_dwp_hash_table)
6725         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6726         (dwarf2_rnglists_process, dwarf2_ranges_process)
6727         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6728         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6729         (handle_struct_member_die, process_structure_scope)
6730         (read_array_type, read_common_block, read_module_type)
6731         (read_tag_pointer_type, read_typedef, read_base_type)
6732         (read_subrange_type, load_partial_dies, partial_die_info::read)
6733         (partial_die_info::read, partial_die_info::read)
6734         (partial_die_info::read, read_checked_initial_length_and_offset)
6735         (dwarf2_string_attr, read_formatted_entries)
6736         (dwarf_decode_line_header)
6737         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6738         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6739         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6740         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6741         (get_signatured_type, get_DW_AT_signature_type)
6742         (decode_locdesc, file_file_name, consume_improper_spaces)
6743         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6744         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6745         (dwarf2_symbol_mark_computed, set_die_type)
6746         (read_attribute_value): Update.
6747         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6748         Update.
6749         * dbxread.c (unknown_symtype_complaint)
6750         (lbrac_mismatch_complaint, repeated_header_complaint)
6751         (set_namestring, function_outside_compilation_unit_complaint)
6752         (read_dbx_symtab, process_one_symbol): Update.
6753         * gdbtypes.c (stub_noname_complaint): Update.
6754         * windows-nat.c (handle_unload_dll): Update.
6755         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6756         (decode_base_type): Update.
6757         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6758         (eb_complaint, record_include_begin, record_include_end)
6759         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6760         (process_xcoff_symbol, read_symbol)
6761         (function_outside_compilation_unit_complaint)
6762         (scan_xcoff_symtab): Update.
6763         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6764         * buildsym.c (finish_block_internal, make_blockvector)
6765         (end_symtab_get_static_block, augment_type_symtab): Update.
6766         * dtrace-probe.c (dtrace_process_dof)
6767         (dtrace_static_probe_ops::get_probes): Update.
6768         * complaints.h (struct complaint): Don't declare.
6769         (symfile_complaints): Remove.
6770         (complaint_internal): Remove "complaints" parameter.
6771         (complaint): Likewise.
6772         (clear_complaints): Likewise.
6773         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6774         (reread_symbols): Update.
6775         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6776         (dwarf2_frame_cache, decode_frame_entry): Update.
6777         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6778         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6779         (info_selectors_command): Update.
6780         * macrotab.c (macro_include, check_for_redefinition)
6781         (macro_undef): Update.
6782         * objfiles.c (filter_overlapping_sections): Update.
6783         * stabsread.c (invalid_cpp_abbrev_complaint)
6784         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6785         (define_symbol, error_type, read_type, rs6000_builtin_type)
6786         (stabs_method_name_from_physname, read_member_functions)
6787         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6788         (attach_fields_to_type, complain_about_struct_wipeout)
6789         (read_range_type, read_args, common_block_start)
6790         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6791         Update.
6792         * mdebugread.c (index_complaint, unknown_ext_complaint)
6793         (basic_type_complaint, bad_tag_guess_complaint)
6794         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6795         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6796         (parse_procedure, parse_lines)
6797         (function_outside_compilation_unit_complaint)
6798         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6799         (bad_tag_guess_complaint, reg_value_complaint): Update.
6800         * cp-support.c (demangled_name_complaint): Update.
6801         * macroscope.c (sal_macro_scope): Update.
6802         * dwarf-index-write.c (class debug_names): Update.
6803
6804 2018-05-23  Tom Tromey  <tom@tromey.com>
6805
6806         * complaints.c (clear_complaints): Remove "noisy" parameter.
6807         * complaints.h (clear_complaints): Update.
6808         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6809         (reread_symbols): Update.
6810
6811 2018-05-23  Tom Tromey  <tom@tromey.com>
6812
6813         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6814         SUBSEQUENT_MESSAGE.
6815         (vcomplaint, clear_complaints): Update.
6816         (symfile_explanations): Remove some messages.
6817
6818 2018-05-23  Tom Tromey  <tom@tromey.com>
6819
6820         * complaints.c (internal_complaint): Remove.
6821         * complaints.h (internal_complaint): Remove.
6822
6823 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6824
6825         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6826
6827 2018-05-22  Pedro Alves  <palves@redhat.com>
6828
6829         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6830         (remote_fileio_badfd, remote_fileio_return_errno)
6831         (remote_fileio_return_success, remote_fileio_func_open)
6832         (remote_fileio_func_open, remote_fileio_func_close)
6833         (remote_fileio_func_read, remote_fileio_func_write)
6834         (remote_fileio_func_lseek, remote_fileio_func_rename)
6835         (remote_fileio_func_unlink, remote_fileio_func_stat)
6836         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6837         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6838         remote_target parameter.
6839         (remote_fio_func_map) <func>: Add remote_target parameter.
6840         (do_remote_fileio_request, remote_fileio_request):
6841         * remote-fileio.h (remote_fileio_request):
6842         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6843         remote_target parameter.
6844         (remote_notif_process, handle_notification): Adjust to pass down
6845         the remote.
6846         (remote_notif_state_allocate): Add remote_target parameter.  Save
6847         it.
6848         * remote-notif.h (struct remote_target): Forward declare.
6849         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6850         remote_target parameter.
6851         (struct remote_notif_state) <remote>: New field.
6852         (remote_notif_ack, remote_notif_parse): Add remote_target
6853         parameter.
6854         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6855         remote_target parameter.
6856         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6857         (threads_listing_context, rmt_thread_action, protocol_feature)
6858         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6859         (packet_result, struct threads_listing_context, remote_state):
6860         Move definitions and declarations higher up.
6861         (remote_target) <~remote_target>: Declare.
6862         (remote_download_command_source, remote_file_put, remote_file_get)
6863         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6864         (remote_hostio_pread_vFile, remote_hostio_send_command)
6865         (remote_hostio_set_filesystem, remote_hostio_open)
6866         (remote_hostio_close, remote_hostio_unlink, remote_state)
6867         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6868         (get_memory_write_packet_size, get_memory_read_packet_size)
6869         (append_pending_thread_resumptions, remote_detach_1)
6870         (append_resumption, remote_resume_with_vcont)
6871         (add_current_inferior_and_thread, wait_ns, wait_as)
6872         (process_stop_reply, remote_notice_new_inferior)
6873         (process_initial_stop_replies, remote_add_thread)
6874         (btrace_sync_conf, remote_btrace_maybe_reopen)
6875         (remove_new_fork_children, kill_new_fork_children)
6876         (discard_pending_stop_replies, stop_reply_queue_length)
6877         (check_pending_events_prevent_wildcard_vcont)
6878         (discard_pending_stop_replies_in_queue, stop_reply)
6879         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6880         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6881         (remote_interrupt_as, remote_interrupt_ns)
6882         (remote_get_noisy_reply, remote_query_attached)
6883         (remote_add_inferior, remote_current_thread, get_current_thread)
6884         (set_thread, set_general_thread, set_continue_thread)
6885         (set_general_process, write_ptid)
6886         (remote_unpack_thread_info_response, remote_get_threadinfo)
6887         (parse_threadlist_response, remote_get_threadlist)
6888         (remote_threadlist_iterator, remote_get_threads_with_ql)
6889         (remote_get_threads_with_qxfer)
6890         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6891         (get_offsets, remote_check_symbols, remote_supported_packet)
6892         (remote_query_supported, remote_packet_size)
6893         (remote_serial_quit_handler, remote_detach_pid)
6894         (remote_vcont_probe, remote_resume_with_hc)
6895         (send_interrupt_sequence, interrupt_query)
6896         (remote_notif_get_pending_events, fetch_register_using_p)
6897         (send_g_packet, process_g_packet, fetch_registers_using_g)
6898         (store_register_using_P, store_registers_using_G)
6899         (set_remote_traceframe, check_binary_download)
6900         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6901         (remote_xfer_live_readonly_partial, remote_read_bytes)
6902         (remote_send_printf, remote_flash_write, readchar)
6903         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6904         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6905         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6906         (extended_remote_disable_randomization, extended_remote_run)
6907         (send_environment_packet, extended_remote_environment_support)
6908         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6909         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6910         (packet_command): Now methods of ...
6911         (remote_target): ... this class.
6912         (m_remote_state) <remote_target>: New field.
6913         (struct remote_state) <stop_reply_queue,
6914         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6915         fields.
6916         (remote_state::remote_state): Allocate stop_reply_queue.
6917         (remote_state): Delete global.
6918         (get_remote_state_raw): Delete.
6919         (remote_target::get_remote_state): Allocate m_remote_state on
6920         demand.
6921         (get_current_remote_target): New.
6922         (remote_ops, extended_remote_ops): Delete.
6923         (wait_forever_enabled_p, remote_async_inferior_event_token):
6924         Delete, moved to struct remote_state.
6925         (remote_target::close): Delete self.  Destruction bits split to
6926         ...
6927         (remote_target::~remote_target): ... this.
6928         (show_memory_packet_size): Adjust to use
6929         get_current_remote_target.
6930         (struct protocol_feature) <func>: Add remote_target parameter.
6931         All callers adjusted.
6932         (curr_quit_handler_target): New.
6933         (remote_serial_quit_handler): Reimplement.
6934         (remote_target::open_1): Adjust to use get_current_remote_target.
6935         Heap-allocate remote_target/extended_remote_target instances.
6936         (vcont_builder::vcont_builder): Add remote_target parameter, and
6937         save it in m_remote.  All callers adjusted.
6938         (vcont_builder::m_remote): New field.
6939         (vcont_builder::restart, vcont_builder::flush)
6940         (vcont_builder::push_action): Use it.
6941         (remote_target::commit_resume): Use it.
6942         (struct queue_iter_param) <remote>: New field.
6943         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6944         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6945         (check_pending_event_prevents_wildcard_vcont_callback)
6946         (remote_target::check_pending_events_prevent_wildcard_vcont)
6947         (remote_target::discard_pending_stop_replies)
6948         (remote_target::discard_pending_stop_replies_in_queue)
6949         (remote_target::remote_notif_remove_queued_reply): Fill in
6950         'remote' field.
6951         (remote_notif_get_pending_events): New.
6952         (remote_target::readchar, remote_target::remote_serial_write):
6953         Save/restore curr_quit_handler_target.
6954         (putpkt): New.
6955         (kill_new_fork_children): Fill in 'remote' field.
6956         (packet_command): Use get_current_remote_target, defer to
6957         remote_target method of same name.
6958         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6959         parameter, and save it in m_remote.  All callers adjusted.
6960         (scoped_remote_fd::release): Use m_remote.
6961         (scoped_remote_fd::m_remote): New field.
6962         (remote_file_put, remote_file_get, remote_file_delete): Use
6963         get_current_remote_target, defer to remote_target method of same
6964         name.
6965         (remote_btrace_reset): Add remote_state paremeter.  Update all
6966         callers.
6967         (remote_async_inferior_event_handler). Pass down 'data'.
6968         (remote_new_objfile): Use get_current_remote_target.
6969         (remote_target::vcont_r_supported): New.
6970         (set_range_stepping): Use get_current_remote_target and
6971         remote_target::vcont_r_supported.
6972         (_initialize_remote): Don't allocate 'remote_state' and
6973         'stop_reply_queue' globals.
6974         * remote.h (struct remote_target): Forward declare.
6975         (getpkt, putpkt, remote_notif_get_pending_events): Add
6976         'remote_target' parameter.
6977
6978 2018-05-22  Pedro Alves  <palves@redhat.com>
6979
6980         * remote.c (vcont_builder): Now a class.  Make all data members
6981         private.
6982         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6983         Declare methods.
6984         (vcont_builder_restart): Rename to ...
6985         (vcont_builder::restart): ... this.
6986         (vcont_builder_flush): Rename to ...
6987         (vcont_builder::flush): ... this.
6988         (vcont_builder_push_action): Rename to ...
6989         (vcont_builder::push_action): ... this.
6990         (remote_target::commit_resume): Adjust.
6991
6992 2018-05-22  Pedro Alves  <palves@redhat.com>
6993
6994         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6995         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6996         (get_fixed_memory_packet_size): New.
6997         (get_memory_packet_size): Use it.
6998         (set_memory_packet_size): Don't override the config size with
6999         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7000         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7001         Don't refer to get_memory_packet_size if not connected to a remote
7002         target.  Show "(default)" if configured size is 0.
7003
7004 2018-05-22  Pedro Alves  <palves@redhat.com>
7005
7006         * remote.c (remote_target::mourn_inferior): Move
7007         discard_pending_stop_replies call here from ...
7008         (_initialize_remote): ... here.
7009
7010 2018-05-22  Pedro Alves  <palves@redhat.com>
7011
7012         * remote.c (compare_section_command): Remove set_general_process
7013         call.
7014
7015 2018-05-22  Pedro Alves  <palves@redhat.com>
7016
7017         * remote.c (struct packet_reg, struct remote_arch_state):
7018         Move higher up in the file.
7019         (remote_state) <m_arch_states>: Store remote_arch_state values
7020         instead of remote_arch_state pointers.
7021         (remote_state::get_remote_arch_state): Adjust.
7022
7023 2018-05-22  Pedro Alves  <palves@redhat.com>
7024
7025         * remote.c: Include <unordered_map>.
7026         (remote_state): Now a class.
7027         (remote_state) <get_remote_arch_state>: Declare method.
7028         <get_remote_arch_state>: New field.
7029         (remote_arch_state) <remote_arch_state>: Declare ctor.
7030         <regs>: Now a unique_ptr.
7031         (remote_gdbarch_data_handle): Delete.
7032         (get_remote_arch_state): Delete.
7033         (remote_state::get_remote_arch_state): New.
7034         (get_remote_state): Adjust to call remote_state's
7035         get_remote_arch_state method.
7036         (init_remote_state): Delete, bits factored out to ...
7037         (remote_arch_state::remote_arch_state): ... this new method.
7038         (get_remote_packet_size, get_memory_packet_size)
7039         (process_g_packet, remote_target::fetch_registers)
7040         (remote_target::prepare_to_store, store_registers_using_G)
7041         (remote_target::store_registers, remote_target::get_trace_status):
7042         Adjust to call remote_state's method.
7043         (_initialize_remote): Remove reference to
7044         remote_gdbarch_data_handle.
7045
7046 2018-05-22  Pedro Alves  <palves@redhat.com>
7047
7048         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7049         pread>: New method declarations.
7050         (remote_target::open_1): Adjust.
7051         (readahead_cache_invalidate): Rename to ...
7052         (readahead_cache::invalidate): ... this, and adjust to be a class
7053         method.
7054         (readahead_cache_invalidate_fd): Rename to ...
7055         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7056         class method.
7057         (remote_hostio_pwrite): Adjust.
7058         (remote_hostio_pread_from_cache): Rename to ...
7059         (readahead_cache::pread): ... this, and adjust to be a class
7060         method.
7061         (remote_hostio_close): Adjust.
7062
7063 2018-05-22  Pedro Alves  <palves@redhat.com>
7064
7065         * remote.c (remote_hostio_close_cleanup): Delete.
7066         (class scoped_remote_fd): New.
7067         (remote_file_put, remote_file_get): Use it.
7068
7069 2018-05-22  Pedro Alves  <palves@redhat.com>
7070
7071         (struct vCont_action_support): Use bool and initialize all fields.
7072         (struct readahead_cache): Initialize all fields.
7073         (remote_state): Use bool and initialize all fields.
7074         (remote_state::remote_state, remote_state::~remote_state): New.
7075         (new_remote_state): Delete.
7076         (_initialize_remote): Use new to allocate remote_state.
7077
7078 2018-05-22  Pedro Alves  <palves@redhat.com>
7079             張俊芝  <zjz@zjz.name>
7080
7081         PR gdb/22973
7082         * c-exp.y: Include "c-support.h".
7083         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7084         of tolower.  Use c_ident_is_alpha to scan names.
7085         * c-lang.c: Include "c-support.h".
7086         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7087         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7088         * c-support.h: New file, with bits factored out from ...
7089         * cp-name-parser.y: ... this file.
7090         Include "c-support.h".
7091         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7092         c-support.h and renamed.
7093         (symbol_end, yylex): Adjust.
7094
7095 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7096
7097         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7098         parameter type to CORE_ADDR.
7099         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7100         parameter type in declaration to CORE_ADDR.
7101         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7102         target_auxv_search to get AT_HWCAP and use the result to get the
7103         target description.
7104         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7105         to CORE_ADDR. Remove the cast of the return value to unsigned
7106         long. Fix error predicate of target_auxv_search.
7107         (ppc_linux_nat_target::read_description): Change the type of the
7108         hwcap variable to CORE_ADDR.
7109
7110 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7111
7112         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7113         if the size of fpscr is larger than 32 bits.
7114
7115 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7116
7117         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7118         (ppc32_linux_vsxregmap): New global.
7119         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7120         regcache_supply_regset, and regcache_collect_regset.
7121         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7122         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7123         (fetch_vsx_register, store_vsx_register): Remove.
7124         (fetch_vsx_registers): Add regno parameter. Get regset using
7125         ppc_linux_vsxregset. Use regset to supply registers.
7126         (store_vsx_registers): Add regno parameter. Get regset using
7127         ppc_linux_vsxregset. Use regset to collect registers.
7128         (fetch_register): Call fetch_vsx_registers instead of
7129         fetch_vsx_register.
7130         (store_register): Call store_vsx_registers instead of
7131         store_vsx_register.
7132         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7133         new regno parameter.
7134         (store_ppc_registers): Call store_vsx_registers with -1 for the
7135         new regno parameter.
7136         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7137         (ppc_collect_vsxregset): Remove.
7138
7139 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7140
7141         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7142         offset fields.
7143         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7144         for vector register offset fields.
7145         (ppc64_fbsd_reg_offsets): Likewise.
7146         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7147         to vector register offset fields.
7148         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7149         to vector register offset fields.
7150         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7151         vector register offset fields.
7152         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7153         initializers for vector register offset fields.
7154         (rs6000_aix64_reg_offsets): Likewise.
7155         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7156         (ppc_supply_vrregset): Remove.
7157         (ppc_collect_vrregset): Remove.
7158         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7159         (ppc_linux_vrregset) : New function.
7160         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7161         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7162         (ppc32_linux_vrregset): Remove.
7163         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7164         and use result instead of ppc32_linux_vrregset.
7165         (ppc32_linux_reg_offsets): Remove initializers for vector register
7166         offset fields.
7167         (ppc64_linux_reg_offsets): Likewise.
7168         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7169         * ppc-linux-nat.c: Include regset.h.
7170         (gdb_vrregset_t): Adjust comment to account for little-endian
7171         mode.
7172         (supply_vrregset, fill_vrregset): Remove.
7173         (fetch_altivec_register, store_altivec_register): Remove.
7174         (fetch_altivec_registers): Add regno parameter. Get regset using
7175         ppc_linux_vrregset. Use regset to supply registers.
7176         (store_altivec_registers): Add regno parameter. Get regset using
7177         ppc_linux_vrregset. Use regset to collect registers.
7178         (fetch_register): Call fetch_altivec_registers instead of
7179         fetch_altivec_register.
7180         (store_register): Call store_altivec_registers instead of
7181         store_altivec_register.
7182         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7183         the new regno parameter.
7184         (store_ppc_registers): Call store_altivec_registers with -1 for
7185         the new regno parameter.
7186
7187 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7188
7189         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7190         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7191         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7192         (gdb_vrregset_t): Change array type size to
7193         PPC_LINUX_SIZEOF_VRREGSET.
7194         (gdb_vsxregset_t): Change array type size to
7195         PPC_LINUX_SIZEOF_VSXREGSET.
7196         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7197         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7198         PPC_LINUX_SIZEOF_VSXREGSET.
7199
7200 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7201
7202         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7203         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7204         nat/ppc-linux.c.
7205         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7206         ppc_linux_target_wordsize with tid.
7207         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7208         wordsize with tid.
7209         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7210         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7211         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7212         tid parameter. Remove static specifier.
7213         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7214         (ppc_linux_target_wordsize): New declaration.
7215
7216 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7217
7218         * arch/ppc-linux-common.c: New file.
7219         * arch/ppc-linux-common.h: New file.
7220         * arch/ppc-linux-tdesc.h: New file.
7221         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7222         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7223         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7224         arch/ppc-linux-tdesc.h.
7225         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7226         arch/ppc-linux-tdesc.h.
7227         (ppc_linux_nat_target::read_description): Remove target
7228         description matching code. Fill a ppc_linux_features struct and
7229         call ppc_linux_match_description with it. Move comment about ISA
7230         2.05 to ppc-linux-common.c.
7231         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7232         arch/ppc-linux-tdesc.h.
7233         (ppc_linux_core_read_description): Remove target description
7234         matching code. Fill a ppc_linux_features struct and call
7235         ppc_linux_match_description with it.
7236         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7237         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7238         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7239         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7240         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7241         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7242         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7243         (tdesc_powerpc_e500l): Remove.
7244
7245 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7246
7247         * ada-lang.c (catch_assert_command): Pass empty string instead
7248         of NULL for excep_string argument.
7249
7250 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7251
7252         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7253         the width of the requested register exceeds the width of the
7254         `ptrace' data type.
7255
7256 2018-05-21  Tom Tromey  <tom@tromey.com>
7257
7258         * printcmd.c (output_command): Remove.
7259         (output_command_const): Rename to output_command.
7260         * valprint.h (output_command): Rename from output_command_const.
7261         * tracepoint.c (trace_dump_actions): Call output_command.
7262
7263 2018-05-21  Tom Tromey  <tom@tromey.com>
7264
7265         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7266         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7267         * ada-lang.h (create_ada_exception_catchpoint): Update.
7268         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7269         std::string.
7270         (create_excep_cond_exprs, ~ada_catchpoint)
7271         (should_stop_exception, print_one_exception)
7272         (print_mention_exception, print_recreate_exception): Update.
7273         (ada_get_next_arg): Remove.
7274         (catch_ada_exception_command_split): Use std::string.  Change type
7275         of "excep_string", "cond_string".
7276         (catch_ada_exception_command): Update.
7277         (create_ada_exception_catchpoint): Change type of excep_string.
7278         (ada_exception_sal): Remove excep_string parameter.
7279         (~ada_catchpoint): Remove.
7280
7281 2018-05-21  Tom Tromey  <tom@tromey.com>
7282
7283         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7284         cleanup.
7285
7286 2018-05-21  Tom Tromey  <tom@tromey.com>
7287
7288         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7289         Return unique_xmalloc_ptr.
7290         (print_it_exception): Update.
7291
7292 2018-05-21  Tom Tromey  <tom@tromey.com>
7293
7294         * tracepoint.c (trace_dump_actions): Use std::string.
7295
7296 2018-05-21  Tom Tromey  <tom@tromey.com>
7297
7298         * symfile.c (reread_symbols): Use std::string for original_name.
7299
7300 2018-05-21  Tom Tromey  <tom@tromey.com>
7301
7302         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7303         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7304         constructor.
7305
7306 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7307
7308         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7309         instance to...
7310         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7311         * objfiles.c (get_objfile_bfd_data): Allocate
7312         objfile_per_bfd_storage with obstack_new when allocating on
7313         obstack.
7314
7315 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7316
7317         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7318         OBSTACK_ZALLOC.
7319         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7320         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7321         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7322         (add_pending): Likewise.
7323         (parse_symbol): Likewise.
7324         (parse_partial_symbols): Likewise.
7325         (psymtab_to_symtab_1): Likewise.
7326         (new_psymtab): Likewise.
7327         (elfmdebug_build_psymtabs): Likewise.
7328         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7329         * objfiles.c (get_objfile_bfd_data): Likewise.
7330         (objfile_register_static_link): Likewise.
7331         * psymtab.c (allocate_psymtab): Likewise.
7332         * stabsread.c (read_member_functions): Likewise.
7333         * xcoffread.c (xcoff_end_psymtab): Likewise.
7334
7335 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7336
7337         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7338         compiler supports std::is_trivially_constructible.
7339         * common/poison.h: Include obstack.h.
7340         (IsMallocable): Define to is_trivially_constructible if the
7341         compiler supports it, define to true_type otherwise.
7342         (xobnew): New.
7343         (XOBNEW): Redefine.
7344         (xobnewvec): New.
7345         (XOBNEWVEC): Redefine.
7346         * gdb_obstack.h (obstack_zalloc): New.
7347         (OBSTACK_ZALLOC): Redefine.
7348         (obstack_calloc): New.
7349         (OBSTACK_CALLOC): Redefine.
7350         (obstack_new): New.
7351         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7352         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7353         gdbarch.c.
7354         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7355         obstack_calloc/obstack_zalloc.
7356         (gdbarch_obstack_zalloc): Remove.
7357         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7358
7359 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7360
7361         * stack.c (backtrace_command_1): Remove useless variable int i.
7362
7363 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7364
7365         * stack.c (print_frame_info): Fix comment.
7366
7367 2018-05-18  Tom Tromey  <tom@tromey.com>
7368
7369         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7370         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7371         (~dwarf2_per_objfile): Update
7372         (dwarf2_get_dwz_file): Use new.
7373         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7374         unique_ptr.
7375
7376 2018-05-18  Tom Tromey  <tom@tromey.com>
7377
7378         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7379         unique_ptr.
7380         * dwarf2read.c (struct dwp_file): Add constructor and
7381         initializers.
7382         (open_and_init_dwp_file): Return a unique_ptr.
7383         (dwarf2_per_objfile, create_dwp_hash_table)
7384         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7385         (lookup_dwo_unit_in_dwp): Update.
7386         (open_and_init_dwp_file, get_dwp_file): Update.
7387
7388 2018-05-18  Tom Tromey  <tom@tromey.com>
7389
7390         * dwarf2read.c (dwarf2_per_objfile): Update.
7391         (struct mapped_index): Add initializers.
7392         (dwarf2_read_index): Use new.
7393         (dw2_symtab_iter_init): Update.
7394         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7395         unique_ptr.
7396
7397 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7398
7399         * dwarf2read.c (mapped_index) <total_size>: Remove.
7400
7401 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7402
7403         * unittests/format_pieces-selftests.c (test_format_specifier):
7404         Add ARI comments.
7405
7406 2018-05-18  Tom Tromey  <tom@tromey.com>
7407
7408         * c-typeprint.c (maybe_print_hole): New function.
7409         (c_print_type_struct_field_offset): Update.
7410         (c_type_print_base_struct_union): Call maybe_print_hole.
7411
7412 2018-05-17  Keith Seitz  <keiths@redhat.com>
7413
7414         * breakpoint.c (build_bpstat_chain): New function, moved from
7415         bpstat_stop_status.
7416         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7417         If no stop chain is passed, call build_bpstat_chain to build it.
7418         * breakpoint.h (build_bpstat_chain): Declare.
7419         (bpstat_stop_status): Move documentation here from breakpoint.c.
7420         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7421         build the stop chain and pass it to skip_inline_frames.
7422         Pass this stop chain to bpstat_stop_status.
7423         * inline-frame.c: Include breakpoint.h.
7424         (stopped_by_user_bp_inline_frame): New function.
7425         (skip_inline_frames): Add parameter `stop_chain'.
7426         Move documention to inline-frame.h.
7427         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7428         whether the frame should be elided.
7429         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7430         Add moved documentation and update for new parameter.
7431
7432 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7433
7434         PR cli/14975
7435         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7436         unittests/format_pieces-selftests.c.
7437         * common/format.h (format_piece) <operator==>: New.
7438         (format_pieces) <operator[]>: Remove.
7439         * common/format.c (format_pieces::format_pieces): Handle \e.
7440         * unittests/format_pieces-selftests.c: New.
7441
7442 2018-05-17  Tom Tromey  <tom@tromey.com>
7443
7444         PR symtab/23010:
7445         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7446         (dw2_instantiate_symtab): Add skip_partial parameter.
7447         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7448         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7449         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7450         (dw2_expand_symtabs_matching_one)
7451         (dw2_find_pc_sect_compunit_symtab)
7452         (dw2_debug_names_lookup_symbol)
7453         (dw2_debug_names_expand_symtabs_for_function): Update.
7454         (init_cutu_and_read_dies): Add skip_partial parameter.
7455         (process_psymtab_comp_unit, build_type_psymtabs_1)
7456         (process_skeletonless_type_unit, load_partial_comp_unit)
7457         (psymtab_to_symtab_1): Update.
7458         (load_full_comp_unit): Add skip_partial parameter.
7459         (process_imported_unit_die, dwarf2_read_addr_index)
7460         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7461         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7462         (read_signatured_type): Update.
7463
7464 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7465
7466         * value.c (release_value): Remove unused variable.
7467         (record_latest_value): Likewise.
7468         (access_value_history): Likewise.
7469         (preserve_values): Likewise.
7470
7471 2018-05-17  Tom Tromey  <tom@tromey.com>
7472
7473         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7474         Initialize.
7475
7476 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7477
7478         PR gdb/22286
7479         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7480         Also handle registers whose width is not a multiple of
7481         PTRACE_TYPE_RET.
7482         (linux_nat_trad_target::store_register): Likewise.
7483
7484 2018-05-16  Tom Tromey  <tom@tromey.com>
7485
7486         * gdbcore.h (core_bfd): Redefine.
7487         * corelow.c (core_target::close): Update.
7488         (core_target_open): Update.
7489         * progspace.h (struct program_space) <cbfd>: Now a
7490         gdb_bfd_ref_ptr.
7491
7492 2018-05-16  Tom Tromey  <tom@tromey.com>
7493
7494         PR cli/19551:
7495         * symfile-add-flags.h (enum symfile_add_flags)
7496         <SYMFILE_NOT_FILENAME>: New constant.
7497         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7498         objfile name from BFD.
7499         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7500         * minidebug.c (find_separate_debug_file_in_section): Put
7501         ".gnu_debugdata" into BFD's file name.
7502
7503 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7504
7505         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7506         Remove.
7507
7508 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7509
7510         PR binutils/21446
7511         * aarch64-tdep.c (aarch64_analyze_prologue,
7512         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7513         Indicate not interested in errors.
7514
7515 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7516
7517         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7518         Supply the MIPS_ZERO_REGNUM register.
7519
7520 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7521
7522         * mips-tdep.c (mask_address_var): Make variable static.
7523
7524 2018-05-14  Tom Tromey  <tom@tromey.com>
7525
7526         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7527
7528 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7529
7530         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7531         FXSAVE_ADDR for the mxcsr register.
7532
7533 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7534
7535         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7536
7537 2018-05-11  Pedro Alves  <palves@redhat.com>
7538
7539         * corelow.c (core_target) <core_target>: No longer inline.
7540         Initialize m_core_gdbarch, m_core_vec and build the section table
7541         here.
7542         <~core_target>: New.
7543         <core_gdbarch, get_core_register_section>: New methods.
7544         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7545         factored out from ...
7546         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7547         (core_ops): Delete.
7548         (sniff_core_bfd): Add gdbarch parameter.
7549         (core_close): Delete, merged into ...
7550         (core_target::close): ... here.  Delete self.
7551         (core_close_cleanup): Delete.
7552         (core_target_open): Allocate a core_target on the heap.  Use a
7553         unique_ptr instead of a cleanup.  Bits moved into the core_target
7554         ctor.  Adjust to use core_target methods instead of globals.
7555         (get_core_register_section): Rename to ...
7556         (core_target::get_core_register_section): ... this and adjust.
7557         (struct get_core_registers_cb_data): New.
7558         (get_core_registers_cb): Use it.  Use bool.
7559         (core_target::fetch_registers, core_target::files_info)
7560         (core_target::xfer_partial, core_target::read_description)
7561         (core_target::pid_to, core_target::thread_name): Adjust to
7562         reference class fields instead of globals.
7563         * target.h (struct target_ops_deleter, target_ops_up): New.
7564
7565 2018-05-11  Pedro Alves  <palves@redhat.com>
7566
7567         * corefile.c (core_file_command): Move to corelow.c.
7568         * corelow.c (the_core_target): Delete.
7569         (core_file_command): Moved from corefile.c.  Check exec_bfd
7570         instead of the_core_target.  Use target_detach instead of calling
7571         into the_core_target directly.
7572         (maybe_say_no_core_file_now): New.
7573         (core_target::detach): Use it.
7574         (_initialize_corelow): Remove references to the_core_target.
7575         * gdbcore.h (the_core_target): Delete.
7576
7577 2018-05-11  Tom Tromey  <tromey@redhat.com>
7578             Pedro Alves  <palves@redhat.com>
7579
7580         * corefile.c (core_bfd): Remove.
7581         * gdbcore.h (core_bfd): Now a macro.
7582         * progspace.h (struct program_space) <cbfd>: New field.
7583
7584 2018-05-11  Tom Tromey  <tom@tromey.com>
7585
7586         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7587         gdb::def_vector.
7588
7589 2018-05-10  Tom Tromey  <tom@tromey.com>
7590
7591         * configure: Rebuild.
7592         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7593
7594 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7595
7596         PR server/23158:
7597         * regformats/regdat.sh: Adjust script, following the addition
7598         of the new expedite_regs parameter to init_target_desc.
7599
7600 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7601     
7602         PR gdb/23127
7603         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7604         set_gdbarch_significant_addr_bit.
7605         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7606         set_gdbarch_significant_addr_bit.
7607         * utils.c (address_significant): Update to sign extend addr.
7608
7609 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7610
7611         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7612         (xtensa_linux_init_abi): Limit tdep->num_regs by
7613         tdep->num_nopriv_regs.
7614         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7615         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7616         not initialized.
7617
7618 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7619
7620         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7621
7622 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7623
7624         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7625         (I387_MXCSR_INIT_VAL): New constant.
7626         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7627         buffer if it was supplied by the inferior.
7628         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7629         (i387_xsave_get_clear_bv): New function.
7630         (i387_supply_xsave): Only read x87 control registers from the
7631         xsave buffer if the feature is enabled, and the state will have
7632         been written, otherwise, provide a suitable default.
7633         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7634         including x87 control registers.  Update control registers if they
7635         have changed from the default value, and mark features as enabled
7636         as required.
7637         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7638
7639 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7640
7641         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7642
7643 2018-05-07  Tom Tromey  <tom@tromey.com>
7644
7645         * configure: Rebuild.
7646         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7647
7648 2018-05-07  Tom Tromey  <tom@tromey.com>
7649
7650         PR tdep/20362:
7651         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7652         bit.  Use correct value for VDIV.
7653
7654 2018-05-04  Tom Tromey  <tom@tromey.com>
7655
7656         * configure: Rebuild.
7657         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7658
7659 2018-05-04  Tom Tromey  <tom@tromey.com>
7660
7661         * linux-record.c (record_linux_system_call) <case
7662         RECORD_SYS_RECVFROM>: Add "break".
7663
7664 2018-05-04  Tom Tromey  <tom@tromey.com>
7665
7666         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7667         Add missing "break".
7668         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7669         Add missing "break".
7670
7671 2018-05-04  Tom Tromey  <tom@tromey.com>
7672
7673         * rs6000-tdep.c (ppc_process_record_op4)
7674         (ppc_process_record_op63): Add fall-through comment.
7675
7676 2018-05-04  Tom Tromey  <tom@tromey.com>
7677
7678         * i386-tdep.c (i386_process_record): Add fall-through comment.
7679
7680 2018-05-04  Tom Tromey  <tom@tromey.com>
7681
7682         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7683         comment.
7684
7685 2018-05-04  Tom Tromey  <tom@tromey.com>
7686
7687         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7688         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7689         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7690         comment.
7691         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7692         comment.
7693         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7694         comment.
7695
7696 2018-05-04  Tom Tromey  <tom@tromey.com>
7697
7698         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7699
7700 2018-05-04  Tom Tromey  <tom@tromey.com>
7701
7702         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7703         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7704         * symfile.c (section_is_mapped): Fix fall-through comment.
7705         * stabsread.c (define_symbol, read_member_functions): Fix
7706         fall-through comment.
7707         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7708         comment.
7709         * remote.c (remote_wait_as): Fix fall-through comment.
7710         * p-exp.y (yylex): Fix fall-through comment.
7711         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7712         comment.
7713         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7714         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7715         * jv-exp.y (yylex): Fix fall-through comment.
7716         * go-exp.y (lex_one_token): Fix fall-through comment.
7717         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7718         fall-through comment.
7719         * f-exp.y (yylex): Fix fall-through comment.
7720         * dwarf2read.c (process_die): Fix fall-through comments.
7721         * dbxread.c (process_one_symbol): Fix fall-through comment.
7722         * d-exp.y (lex_one_token): Fix fall-through comment.
7723         * cp-name-parser.y (yylex): Fix fall-through comment.
7724         * coffread.c (coff_symtab_read): Fix fall-through comment.
7725         * c-exp.y (lex_one_token): Fix fall-through comment.
7726         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7727         comment.
7728         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7729         comment.
7730
7731 2018-05-04  Tom Tromey  <tom@tromey.com>
7732
7733         PR python/22730:
7734         * NEWS: Mention gdb.execute change.
7735         * gdbcmd.h (execute_control_command): Don't declare.
7736         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7737         execute_control_commands, execute_control_commands_to_string.
7738         * cli/cli-script.h (execute_control_commands)
7739         (execute_control_commands_to_string): Declare.
7740         (execute_control_command): Add from_tty parameter.
7741         * cli/cli-script.c (execute_control_commands)
7742         (execute_control_commands_to_string): New functions.
7743         (execute_user_command): Use execute_control_commands.
7744         (execute_control_command_1): Add "from_tty" parameter.  Update.
7745         (execute_control_command): Likewise.
7746
7747 2018-05-04  Tom Tromey  <tom@tromey.com>
7748
7749         PR python/22731:
7750         * NEWS: Mention that breakpoint commands are writable.
7751         * python/py-breakpoint.c (bppy_set_commands): New function.
7752         (breakpoint_object_getset) <"commands">: Use it.
7753
7754 2018-05-04  Tom Tromey  <tom@tromey.com>
7755
7756         * tracepoint.c (actions_command): Update.
7757         * mi/mi-cmd-break.c (mi_command_line_array)
7758         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7759         (mi_read_next_line): Remove.
7760         (mi_cmd_break_commands): Update.
7761         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7762         function_view.
7763         * cli/cli-script.c (get_command_line): Update.
7764         (process_next_line): Use function_view.  Constify.
7765         (recurse_read_control_structure, read_command_lines)
7766         (read_command_lines_1): Change argument types to function_view.
7767         (do_define_command, document_command): Update.
7768         * breakpoint.h (check_tracepoint_command): Don't declare.
7769         * breakpoint.c (check_tracepoint_command): Remove.
7770         (commands_command_1, create_tracepoint_from_upload): Update.
7771
7772 2018-05-04  Tom Tromey  <tom@tromey.com>
7773
7774         PR gdb/11750:
7775         * cli/cli-script.h (enum command_control_type) <define_control>:
7776         New constant.
7777         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7778         (build_command_line, execute_control_command_1)
7779         (process_next_line): Likewise.
7780         (do_define_command): New function, extracted from define_command.
7781         (define_command): Use it.
7782
7783 2018-05-04  Tom Tromey  <tom@tromey.com>
7784
7785         * tracepoint.c (actions_command): Update.
7786         * cli/cli-script.h (read_command_lines): Update.
7787         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7788         (MAX_TMPBUF): Remove define.
7789         (define_command): Use string_printf.
7790         (document_command): Likewise.
7791         * breakpoint.c (commands_command_1): Update.
7792
7793 2018-05-04  Tom Tromey  <tom@tromey.com>
7794
7795         * top.c (execute_command): Update.
7796         * cli/cli-script.h (print_command_lines): Now varargs.
7797         * cli/cli-script.c (print_command_lines): Now varargs.
7798         (execute_control_command_1) <case while_control, case if_control>:
7799         Update.
7800
7801 2018-05-04  Tom Tromey  <tom@tromey.com>
7802
7803         * tracepoint.c (all_tracepoint_actions): Rename from
7804         all_tracepoint_actions_and_cleanup.  Change return type.
7805         (actions_command, encode_actions_1, encode_actions)
7806         (trace_dump_actions, tdump_command): Update.
7807         * remote.c (remote_download_command_source): Update.
7808         * python/python.c (gdbpy_eval_from_control_command)
7809         (python_command, python_interactive_command): Update.
7810         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7811         * guile/guile.c (guile_command)
7812         (gdbscm_eval_from_control_command, guile_command): Update.
7813         * compile/compile.c (compile_code_command)
7814         (compile_print_command, compile_to_object): Update.
7815         * cli/cli-script.h (struct command_lines_deleter): New.
7816         (counted_command_line): New typedef.
7817         (struct command_line): Add constructor, destructor.
7818         <body_list>: Remove.
7819         <body_list_0, body_list_1>: New members.
7820         (command_line_up): Remove typedef.
7821         (read_command_lines, read_command_lines_1, get_command_line):
7822         Update.
7823         (copy_command_lines): Don't declare.
7824         * cli/cli-script.c (build_command_line): Use "new".
7825         (get_command_line): Return counted_command_line.
7826         (print_command_lines, execute_user_command)
7827         (execute_control_command_1, while_command, if_command): Update.
7828         (realloc_body_list): Remove.
7829         (process_next_line, recurse_read_control_structure): Update.
7830         (read_command_lines, read_command_lines_1): Return counted_command_line.
7831         (free_command_lines): Use "delete".
7832         (copy_command_lines): Remove.
7833         (define_command, document_command, show_user_1): Update.
7834         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7835         a counted_command_line.
7836         * breakpoint.h (counted_command_line): Remove typedef.
7837         (breakpoint_set_commands): Update.
7838         * breakpoint.c (check_no_tracepoint_commands)
7839         (validate_commands_for_breakpoint): Update.
7840         (breakpoint_set_commands): Change commands to be a
7841         counted_command_line.
7842         (commands_command_1, update_dprintf_command_list)
7843         (create_tracepoint_from_upload): Update.
7844
7845 2018-05-04  Tom Tromey  <tom@tromey.com>
7846
7847         * cli/cli-decode.h (cmd_list_element): New constructor.
7848         (~cmd_list_element): New destructor.
7849         (struct cmd_list_element): Add initializers.
7850         * cli/cli-decode.c (do_add_cmd): Use "new".
7851         (delete_cmd): Use "delete".
7852
7853 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7854             Pedro Alves <palves@redhat.com>
7855
7856         PR breakpoints/19806 and support for PR external/20207.
7857         * NEWS: Mention Aarch64 watchpoint improvements.
7858         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7859         watchpoints and PR external/20207 watchpoints.
7860         * nat/aarch64-linux-hw-point.c
7861         (kernel_supports_any_contiguous_range): New.
7862         (aarch64_watchpoint_offset): New.
7863         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7864         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7865         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7866         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7867         next_addr_orig_p.  Support PR external/20207 watchpoints.
7868         (aarch64_downgrade_regs): New.
7869         (aarch64_dr_state_insert_one_point): New parameters offset and
7870         addr_orig.
7871         (aarch64_dr_state_remove_one_point): Likewise.
7872         (aarch64_handle_breakpoint): Update caller.
7873         (aarch64_handle_aligned_watchpoint): Likewise.
7874         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7875         aligned_offset.
7876         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7877         aarch64_downgrade_regs.
7878         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7879         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7880         (DR_CONTROL_MASK): ... this.
7881         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7882         (unsigned int aarch64_watchpoint_offset): New prototype.
7883         (aarch64_linux_set_debug_regs): Remove const from state.
7884         * utils.c (align_up, align_down): Move to ...
7885         * common/common-utils.c (align_up, align_down): ... here.
7886         * utils.h (align_up, align_down): Move to ...
7887         * common/common-utils.h (align_up, align_down): ... here.
7888
7889 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7890
7891         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7892         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7893         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7894         Re-implement to match the ABI as summarized in GCC's
7895         gcc/config/sparc/sparc.c.  All callers updated.
7896         (sparc32_store_arguments): Remove assertion.
7897
7898 2018-05-04  Tom Tromey  <tom@tromey.com>
7899
7900         * printcmd.c: Don't include tui.h.
7901         (decode_format): Use skip_spaces.
7902
7903 2018-05-04  Tom Tromey  <tom@tromey.com>
7904
7905         PR gdb/22619:
7906         * printcmd.c (last_count): New global.
7907         (x_command): Use saved count when repeating.
7908
7909 2018-05-04  Tom Tromey  <tom@tromey.com>
7910
7911         * nto-procfs.c (do_closedir_cleanup): Remove.
7912         (procfs_pidlist): Use gdb_dir_up.
7913         * procfs.c (do_closedir_cleanup): Remove.
7914         (proc_update_threads): Use gdb_dir_up.
7915         * common/filestuff.h (struct gdb_dir_deleter): New.
7916         (gdb_dir_up): New typedef.
7917
7918 2018-05-04  Tom Tromey  <tom@tromey.com>
7919
7920         * ada-lang.c (print_mention_exception): Use std::string.
7921
7922 2018-05-04  Tom Tromey  <tom@tromey.com>
7923
7924         * ada-lang.c (create_excep_cond_exprs): Update.
7925         (ada_exception_catchpoint_cond_string): Use std::string.
7926
7927 2018-05-04  Tom Tromey  <tom@tromey.com>
7928
7929         * ada-lang.c (xget_renaming_scope): Return std::string.
7930         (old_renaming_is_invisible): Update.
7931
7932 2018-05-04  Tom Tromey  <tom@tromey.com>
7933
7934         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7935         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7936
7937 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7938
7939         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7940
7941 2018-05-04  Tom Tromey  <tom@tromey.com>
7942
7943         * remote.c (remote_query_supported_append): Change type.
7944         (remote_check_symbols): Update.
7945
7946 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7947
7948         PR gdb/11420
7949         * configure.ac: Prepend libpython.
7950         * python/python-config.py: Likewise.
7951         * configure: Regenerate.
7952
7953 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7954
7955         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7956
7957 2018-05-03  Pedro Alves  <palves@redhat.com>
7958
7959         * s390-linux-nat.c
7960         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7961         override.  Write 'true' instead of '1'.
7962         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7963         declaration.
7964
7965 2018-05-02  Pedro Alves  <palves@redhat.com>
7966
7967         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7968         add_inf_child_target.
7969         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7970         add_inf_child_target.
7971         * aix-thread.c (aix_thread_target_info): New.
7972         (aix_thread_target) <shortname, longname, doc>: Delete.
7973         <info>: New.
7974         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7975         add_inf_child_target.
7976         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7977         add_inf_child_target.
7978         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7979         add_inf_child_target.
7980         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7981         add_inf_child_target.
7982         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7983         add_inf_child_target.
7984         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7985         add_inf_child_target.
7986         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7987         add_inf_child_target.
7988         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7989         add_inf_child_target.
7990         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7991         add_inf_child_target.
7992         * bfd-target.c (target_bfd_target_info): New.
7993         (target_bfd) <shortname, longname, doc>: Delete.
7994         <info>: New.
7995         * bsd-kvm.c (bsd_kvm_target_info): New.
7996         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7997         <info>: New.
7998         (bsd_kvm_target::open): Rename to ...
7999         (bsd_kvm_target_open): ... this.  Adjust.
8000         * bsd-uthread.c (bsd_uthread_target_info): New.
8001         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8002         <info>: New.
8003         * corefile.c (core_file_command): Adjust.
8004         * corelow.c (core_target_info): New.
8005         (core_target) <shortname, longname, doc>: Delete.
8006         <info>: New.
8007         (core_target::open): Rename to ...
8008         (core_target_open): ... this.  Adjust.
8009         * ctf.c (ctf_target_info): New.
8010         (ctf_target) <shortname, longname, doc>: Delete.
8011         <info>: New.
8012         (ctf_target::open): Rename to ...
8013         (ctf_target_open): ... this.
8014         (_initialize_ctf): Adjust.
8015         * exec.c (exec_target_info): New.
8016         (exec_target) <shortname, longname, doc>: Delete.
8017         <info>: New.
8018         (exec_target::open): Rename to ...
8019         (exec_target_open): ... this.
8020         * gdbcore.h (core_target_open): Declare.
8021         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8022         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8023         add_inf_child_target.
8024         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8025         add_inf_child_target.
8026         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8027         add_inf_child_target.
8028         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8029         add_inf_child_target.
8030         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8031         add_inf_child_target.
8032         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8033         add_inf_child_target.
8034         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8035         add_inf_child_target.
8036         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8037         add_inf_child_target.
8038         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8039         add_inf_child_target.
8040         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8041         add_inf_child_target.
8042         * inf-child.c (inf_child_target_info): New.
8043         (inf_child_target::info): New.
8044         (inf_child_open_target): Remove 'target' parameter.  Use
8045         get_native_target instead.
8046         (inf_child_target::open): Delete.
8047         (add_inf_child_target): New.
8048         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8049         Delete.
8050         <info>: New.
8051         (add_inf_child_target): Declare.
8052         (inf_child_open_target): Declare.
8053         * linux-thread-db.c (thread_db_target_info): New.
8054         (thread_db_target) <shortname, longname, doc>: Delete.
8055         <info>: New.
8056         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8057         add_inf_child_target.
8058         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8059         add_inf_child_target.
8060         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8061         add_inf_child_target.
8062         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8063         add_inf_child_target.
8064         * make-target-delegates (print_class): Adjust.
8065         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8066         add_inf_child_target.
8067         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8068         add_inf_child_target.
8069         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8070         add_inf_child_target.
8071         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8072         add_inf_child_target.
8073         * nto-procfs.c (nto_native_target_info): New.
8074         (nto_procfs_target_native) <shortname, longname, doc>:
8075         Delete.
8076         <info>: New.
8077         (nto_procfs_target_info): New.
8078         (nto_procfs_target_procfs) <shortname, longname, doc>:
8079         Delete.
8080         <info>: New.
8081         (init_procfs_targets): Adjust.
8082         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8083         add_inf_child_target.
8084         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8085         add_inf_child_target.
8086         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8087         add_inf_child_target.
8088         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8089         add_inf_child_target.
8090         * ravenscar-thread.c (ravenscar_target_info): New.
8091         (ravenscar_thread_target) <shortname, longname, doc>:
8092         Delete.
8093         <info>: New.
8094         * record-btrace.c (record_btrace_target_info):
8095         (record_btrace_target) <shortname, longname, doc>: Delete.
8096         <info>: New.
8097         (record_btrace_target::open): Rename to ...
8098         (record_btrace_target_open): ... this.  Adjust.
8099         * record-full.c (record_longname, record_doc): New.
8100         (record_full_base_target) <shortname, longname, doc>: Delete.
8101         <info>: New.
8102         (record_full_target_info): New.
8103         (record_full_target): <shortname>: Delete.
8104         <info>: New.
8105         (record_full_core_open_1, record_full_open_1): Update comments.
8106         (record_full_base_target::open): Rename to ...
8107         (record_full_open): ... this.
8108         (cmd_record_full_restore): Update.
8109         (_initialize_record_full): Update.
8110         * remote-sim.c (remote_sim_target_info): New.
8111         (gdbsim_target) <shortname, longname, doc>: Delete.
8112         <info>: New.
8113         (gdbsim_target::open): Rename to ...
8114         (gdbsim_target_open): ... this.
8115         (_initialize_remote_sim): Adjust.
8116         * remote.c (remote_doc): New.
8117         (remote_target_info): New.
8118         (remote_target) <shortname, longname, doc>: Delete.
8119         <info>: New.
8120         (extended_remote_target_info): New.
8121         (extended_remote_target) <shortname, longname, doc>: Delete.
8122         <info>: New.
8123         (remote_target::open_1): Make static.  Adjust.
8124         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8125         * s390-linux-nat.c (_initialize_s390_nat): Use
8126         add_inf_child_target.
8127         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8128         add_inf_child_target.
8129         * sol-thread.c (thread_db_target_info): New.
8130         (sol_thread_target) <shortname, longname, doc>: Delete.
8131         <info>: New.
8132         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8133         add_inf_child_target.
8134         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8135         add_inf_child_target.
8136         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8137         add_inf_child_target.
8138         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8139         add_inf_child_target.
8140         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8141         add_inf_child_target.
8142         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8143         add_inf_child_target.
8144         * spu-linux-nat.c (_initialize_spu_nat): Use
8145         add_inf_child_target.
8146         * spu-multiarch.c (spu_multiarch_target_info): New.
8147         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8148         <info>: New.
8149         * target-delegates.c: Regenerate.
8150         * target.c: Include <unordered_map>.
8151         (target_ops_p): Delete.
8152         (DEF_VEC_P(target_ops_p)): Delete.
8153         (target_factories): New.
8154         (test_target_info): New.
8155         (test_target_ops::info): New.
8156         (open_target): Adjust to use target_factories.
8157         (add_target_with_completer): Rename to ...
8158         (add_target): ... this.  Change prototype.  Register target_info
8159         and open callback in target_factories.  Register target_info in
8160         command context instead of target_ops.
8161         (add_target): Delete old implementation.
8162         (add_deprecated_target_alias): Change prototype.  Adjust.
8163         (the_native_target): New.
8164         (set_native_target, get_native_target): New.
8165         (find_default_run_target): Use the_native_target.
8166         (find_attach_target, find_run_target): Simplify.
8167         (target_ops::open): Delete.
8168         (dummy_target_info): New.
8169         (dummy_target::shortname, dummy_target::longname)
8170         (dummy_target::doc): Delete.
8171         (dummy_target::info): New.
8172         (debug_target::shortname, debug_target::longname)
8173         (debug_target::doc): Delete.
8174         (debug_target::info): New.
8175         * target.h (struct target_info): New.
8176         (target_ops::~target_ops): Add comment.
8177         (target_ops::info): New.
8178         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8179         longer virtual.  Implement in terms of target_info.
8180         (set_native_target, get_native_target): Declare.
8181         (target_open_ftype): New.
8182         (add_target, add_target_with_completer)
8183         (add_deprecated_target_alias): Change prototype.
8184         (test_target) <shortname, longname, doc>: Delete.
8185         <info>: New.
8186         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8187         add_inf_child_target.
8188         * tracefile-tfile.c (tfile_target_info): New.
8189         (tfile_target) <shortname, longname, doc>: Delete.
8190         <info>: New.
8191         (tfile_target::open): Rename to ...
8192         (tfile_target_open): ... this.
8193         (_initialize_tracefile_tfile): Adjust.
8194         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8195         add_inf_child_target.
8196         * windows-nat.c (_initialize_windows_nat): Use
8197         add_inf_child_target.
8198         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8199         add_inf_child_target.
8200
8201 2018-05-02  Pedro Alves  <palves@redhat.com>
8202
8203         * linux-nat.h (linux_nat_target) <low_new_thread,
8204         low_delete_thread, low_new_fork, low_forget_process,
8205         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8206         New virtual methods.
8207         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8208         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8209         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8210         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8211         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8212         Delete.
8213         * linux-fork.c (delete_fork): Adjust to call low method.
8214         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8215         (linux_nat_new_fork, linux_nat_forget_process_hook)
8216         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8217         (linux_nat_status_is_event):
8218         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8219         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8220         to call low method.
8221         (sigtrap_is_event): Rename to ...
8222         (linux_nat_target::low_status_is_event): ... this.
8223         (linux_nat_set_status_is_event): Delete.
8224         (save_stop_reason, linux_nat_wait_1)
8225         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8226         low methods.
8227         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8228         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8229         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8230         (linux_nat_set_prepare_to_resume): Delete.
8231         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8232         low virtual methods.
8233         * amd64-linux-nat.c: Likewise.
8234         * arm-linux-nat.c: Likewise.
8235         * i386-linux-nat.c: Likewise.
8236         * ia64-linux-nat.c: Likewise.
8237         * mips-linux-nat.c: Likewise.
8238         * ppc-linux-nat.c: Likewise.
8239         * s390-linux-nat.c: Likewise.
8240         * sparc64-linux-nat.c: Likewise.
8241         * x86-linux-nat.c: Likewise.
8242         * x86-linux-nat.h: Include "nat/x86-linux.h".
8243         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8244         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8245         Override methods.
8246
8247 2018-05-02  Pedro Alves  <palves@redhat.com>
8248
8249         * target.h (target_ops)
8250         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8251         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8252         stopped_by_watchpoint, have_continuable_watchpoint,
8253         stopped_data_address, watchpoint_addr_within_range,
8254         can_accel_watchpoint_condition, can_run, thread_alive,
8255         has_all_memory, has_memory, has_stack, has_registers,
8256         has_execution, can_async_p, is_async_p, supports_non_stop,
8257         always_non_stop_p, can_execute_reverse, supports_multi_process,
8258         supports_enable_disable_tracepoint,
8259         supports_disable_randomization, supports_string_tracing,
8260         supports_evaluation_of_breakpoint_conditions,
8261         can_run_breakpoint_commands, filesystem_is_local,
8262         can_download_tracepoint, get_trace_state_variable_value,
8263         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8264         record_is_replaying, record_will_replay,
8265         augmented_libraries_svr4_read>: Adjust to return bool.
8266         * aarch64-linux-nat.c: All implementations adjusted.
8267         * aix-thread.c: All implementations adjusted.
8268         * arm-linux-nat.c: All implementations adjusted.
8269         * breakpoint.c: All implementations adjusted.
8270         * bsd-kvm.c: All implementations adjusted.
8271         * bsd-uthread.c: All implementations adjusted.
8272         * corelow.c: All implementations adjusted.
8273         * ctf.c: All implementations adjusted.
8274         * darwin-nat.c: All implementations adjusted.
8275         * darwin-nat.h: All implementations adjusted.
8276         * exec.c: All implementations adjusted.
8277         * fbsd-nat.c: All implementations adjusted.
8278         * fbsd-nat.h: All implementations adjusted.
8279         * gnu-nat.c: All implementations adjusted.
8280         * gnu-nat.h: All implementations adjusted.
8281         * go32-nat.c: All implementations adjusted.
8282         * ia64-linux-nat.c: All implementations adjusted.
8283         * inf-child.c: All implementations adjusted.
8284         * inf-child.h: All implementations adjusted.
8285         * inf-ptrace.c: All implementations adjusted.
8286         * inf-ptrace.h: All implementations adjusted.
8287         * linux-nat.c: All implementations adjusted.
8288         * linux-nat.h: All implementations adjusted.
8289         * mips-linux-nat.c: All implementations adjusted.
8290         * nto-procfs.c: All implementations adjusted.
8291         * ppc-linux-nat.c: All implementations adjusted.
8292         * procfs.c: All implementations adjusted.
8293         * ravenscar-thread.c: All implementations adjusted.
8294         * record-btrace.c: All implementations adjusted.
8295         * record-full.c: All implementations adjusted.
8296         * remote-sim.c: All implementations adjusted.
8297         * remote.c: All implementations adjusted.
8298         * s390-linux-nat.c: All implementations adjusted.
8299         * sol-thread.c: All implementations adjusted.
8300         * spu-multiarch.c: All implementations adjusted.
8301         * target-delegates.c: All implementations adjusted.
8302         * target.c: All implementations adjusted.
8303         * target.h: All implementations adjusted.
8304         * tracefile-tfile.c: All implementations adjusted.
8305         * tracefile.c: All implementations adjusted.
8306         * tracefile.h: All implementations adjusted.
8307         * windows-nat.c: All implementations adjusted.
8308         * x86-linux-nat.h: All implementations adjusted.
8309         * x86-nat.h: All implementations adjusted.
8310
8311 2018-05-02  Pedro Alves  <palves@redhat.com>
8312
8313         * make-target-delegates (scan_target_h): Don't trim lines here.
8314         Replace sequences of tabs and/or whitespace with a single
8315         whitespace.
8316         (top level, parsing methods): Trim each line before processing it
8317         here.
8318
8319 2018-05-02  Pedro Alves  <palves@redhat.com>
8320             John Baldwin  <jhb@freebsd.org>
8321
8322         * target.h (enum strata) <debug_stratum>: New.
8323         (struct target_ops) <all delegation methods>: Replace by C++
8324         virtual methods, and drop "to_" prefix.  All references updated
8325         throughout.
8326         <to_shortname, to_longname, to_doc, to_data,
8327         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8328         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8329         virtual methods.  All references updated throughout.
8330         <can_attach, supports_terminal_ours, can_create_inferior,
8331         get_thread_control_capabilities, attach_no_wait>: New
8332         virtual methods.
8333         <insert_breakpoint, remove_breakpoint>: Now
8334         TARGET_DEFAULT_NORETURN methods.
8335         <info_proc>: Now returns bool.
8336         <to_magic>: Delete.
8337         (OPS_MAGIC): Delete.
8338         (current_target): Delete.  All references replaced by references
8339         to ...
8340         (target_stack): ... this.  New.
8341         (target_shortname, target_longname): Adjust.
8342         (target_can_run): Now a function declaration.
8343         (default_child_has_all_memory, default_child_has_memory)
8344         (default_child_has_stack, default_child_has_registers)
8345         (default_child_has_execution): Remove target_ops parameter.
8346         (complete_target_initialization): Delete.
8347         (memory_breakpoint_target): New template class.
8348         (test_target_ops): Refactor as a C++ class with virtual methods.
8349         * make-target-delegates (NAME_PART): Tighten.
8350         (POINTER_PART, CP_SYMBOL): New.
8351         (SIMPLE_RETURN_PART): Reimplement.
8352         (VEC_RETURN_PART): Expect less.
8353         (RETURN_PART, VIRTUAL_PART): New.
8354         (METHOD): Adjust to C++ virtual methods.
8355         (scan_target_h): Remove reference to C99.
8356         (dname): Output "target_ops::" prefix.
8357         (write_function_header): Adjust to output a C++ class method.
8358         (write_declaration): New.
8359         (write_delegator): Adjust to output a C++ class method.
8360         (tdname): Output "dummy_target::" prefix.
8361         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8362         method.
8363         (tdefault_names, debug_names): Delete.
8364         (return_types, tdefaults, styles, argtypes_array): New.
8365         (top level): All methods are delegators.
8366         (print_class): New.
8367         (top level): Print dummy_target and debug_target classes.
8368         * target-delegates.c: Regenerate.
8369         * target-debug.h (target_debug_print_enum_info_proc_what)
8370         (target_debug_print_thread_control_capabilities)
8371         (target_debug_print_thread_info_p): New.
8372         * target.c (dummy_target): Delete.
8373         (the_dummy_target, the_debug_target): New.
8374         (target_stack): Now extern.
8375         (set_targetdebug): Push/unpush debug target.
8376         (default_child_has_all_memory, default_child_has_memory)
8377         (default_child_has_stack, default_child_has_registers)
8378         (default_child_has_execution): Remove target_ops parameter.
8379         (complete_target_initialization): Delete.
8380         (add_target_with_completer): No longer call
8381         complete_target_initialization.
8382         (target_supports_terminal_ours): Use regular delegation.
8383         (update_current_target): Delete.
8384         (push_target): No longer check magic number.  Don't call
8385         update_current_target.
8386         (unpush_target): Don't call update_current_target.
8387         (target_is_pushed): No longer check magic number.
8388         (target_require_runnable): Skip for all stratums over
8389         process_stratum.
8390         (target_ops::info_proc): New.
8391         (target_info_proc): Use find_target_at and
8392         find_default_run_target.
8393         (target_supports_disable_randomization): Use regular delegation.
8394         (target_get_osdata): Use find_target_at.
8395         (target_ops::open, target_ops::close, target_ops::can_attach)
8396         (target_ops::attach, target_ops::can_create_inferior)
8397         (target_ops::create_inferior, target_ops::can_run)
8398         (target_can_run): New.
8399         (default_fileio_target): Use regular delegation.
8400         (target_ops::fileio_open, target_ops::fileio_pwrite)
8401         (target_ops::fileio_pread, target_ops::fileio_fstat)
8402         (target_ops::fileio_close, target_ops::fileio_unlink)
8403         (target_ops::fileio_readlink): New.
8404         (target_fileio_open_1, target_fileio_unlink)
8405         (target_fileio_readlink): Always call the target method.  Handle
8406         FILEIO_ENOSYS.
8407         (return_zero, return_zero_has_execution): Delete.
8408         (init_dummy_target): Delete.
8409         (dummy_target::dummy_target, dummy_target::shortname)
8410         (dummy_target::longname, dummy_target::doc)
8411         (debug_target::debug_target, debug_target::shortname)
8412         (debug_target::longname, debug_target::doc): New.
8413         (target_supports_delete_record): Use regular delegation.
8414         (setup_target_debug): Delete.
8415         (maintenance_print_target_stack): Skip debug_stratum.
8416         (initialize_targets): Instantiate the_dummy_target and
8417         the_debug_target.
8418         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8419         use target_stack.
8420         (target_auxv_search, fprint_target_auxv): Adjust.
8421         (info_auxv_command): Adjust to use target_stack.
8422         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8423         * exceptions.c (print_flush): Handle a NULL target_stack.
8424         * regcache.c (target_ops_no_register): Refactor as class with
8425         virtual methods.
8426
8427         * exec.c (exec_target): New class.
8428         (exec_ops): Now an exec_target.
8429         (exec_open, exec_close_1, exec_get_section_table)
8430         (exec_xfer_partial, exec_files_info, exec_has_memory)
8431         (exec_make_note_section): Refactor as exec_target methods.
8432         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8433         Delete.
8434         (exec_target::find_memory_regions): New.
8435         (_initialize_exec): Don't call init_exec_ops.
8436         * gdbcore.h (exec_file_clear): Delete.
8437
8438         * corefile.c (core_target): Delete.
8439         (core_file_command): Adjust.
8440         * corelow.c (core_target): New class.
8441         (the_core_target): New.
8442         (core_close): Remove target_ops parameter.
8443         (core_close_cleanup): Adjust.
8444         (core_target::close): New.
8445         (core_open, core_detach, get_core_registers, core_files_info)
8446         (core_xfer_partial, core_thread_alive, core_read_description)
8447         (core_pid_to_str, core_thread_name, core_has_memory)
8448         (core_has_stack, core_has_registers, core_info_proc): Rework as
8449         core_target methods.
8450         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8451         (_initialize_corelow): Initialize the_core_target.
8452         * gdbcore.h (core_target): Delete.
8453         (the_core_target): New.
8454
8455         * ctf.c: (ctf_target): New class.
8456         (ctf_ops): Now a ctf_target.
8457         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8458         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8459         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8460         methods.
8461         (init_ctf_ops): Delete.
8462         (_initialize_ctf): Don't call it.
8463         * tracefile-tfile.c (tfile_target): New class.
8464         (tfile_ops): Now a tfile_target.
8465         (tfile_open, tfile_close, tfile_files_info)
8466         (tfile_get_tracepoint_status, tfile_trace_find)
8467         (tfile_fetch_registers, tfile_xfer_partial)
8468         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8469         Refactor as tfile_target methods.
8470         (tfile_xfer_partial_features): Remove target_ops parameter.
8471         (init_tfile_ops): Delete.
8472         (_initialize_tracefile_tfile): Don't call it.
8473         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8474         (tracefile_has_stack, tracefile_has_registers)
8475         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8476         tracefile_target methods.
8477         (init_tracefile_ops): Delete.
8478         (tracefile_target::tracefile_target): New.
8479         * tracefile.h: Include "target.h".
8480         (tracefile_target): New class.
8481         (init_tracefile_ops): Delete.
8482
8483         * spu-multiarch.c (spu_multiarch_target): New class.
8484         (spu_ops): Now a spu_multiarch_target.
8485         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8486         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8487         (spu_search_memory, spu_mourn_inferior): Refactor as
8488         spu_multiarch_target methods.
8489         (init_spu_ops): Delete.
8490         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8491         complete_target_initialization.
8492
8493         * ravenscar-thread.c (ravenscar_thread_target): New class.
8494         (ravenscar_ops): Now a ravenscar_thread_target.
8495         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8496         (ravenscar_thread_alive, ravenscar_pid_to_str)
8497         (ravenscar_fetch_registers, ravenscar_store_registers)
8498         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8499         (ravenscar_stopped_by_hw_breakpoint)
8500         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8501         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8502         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8503         methods.
8504         (init_ravenscar_thread_ops): Delete.
8505         (_initialize_ravenscar): Remove references to
8506         init_ravenscar_thread_ops and complete_target_initialization.
8507
8508         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8509         (bsd_uthread_target): New class.
8510         (bsd_uthread_ops): Now a bsd_uthread_target.
8511         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8512         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8513         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8514         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8515         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8516         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8517         (bsd_uthread_target): Delete function.
8518         (_initialize_bsd_uthread): Remove reference to
8519         complete_target_initialization.
8520
8521         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8522         (target_bfd): ... this new class.
8523         (target_bfd_xfer_partial, target_bfd_get_section_table)
8524         (target_bfd_close): Refactor as target_bfd methods.
8525         (target_bfd::~target_bfd): New.
8526         (target_bfd_reopen): Adjust.
8527         (target_bfd::close): New.
8528
8529         * record-btrace.c (record_btrace_target): New class.
8530         (record_btrace_ops): Now a record_btrace_target.
8531         (record_btrace_open, record_btrace_stop_recording)
8532         (record_btrace_disconnect, record_btrace_close)
8533         (record_btrace_async, record_btrace_info)
8534         (record_btrace_insn_history, record_btrace_insn_history_range)
8535         (record_btrace_insn_history_from, record_btrace_call_history)
8536         (record_btrace_call_history_range)
8537         (record_btrace_call_history_from, record_btrace_record_method)
8538         (record_btrace_is_replaying, record_btrace_will_replay)
8539         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8540         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8541         (record_btrace_store_registers, record_btrace_prepare_to_store)
8542         (record_btrace_to_get_unwinder)
8543         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8544         (record_btrace_commit_resume, record_btrace_wait)
8545         (record_btrace_stop, record_btrace_can_execute_reverse)
8546         (record_btrace_stopped_by_sw_breakpoint)
8547         (record_btrace_supports_stopped_by_sw_breakpoint)
8548         (record_btrace_stopped_by_hw_breakpoint)
8549         (record_btrace_supports_stopped_by_hw_breakpoint)
8550         (record_btrace_update_thread_list, record_btrace_thread_alive)
8551         (record_btrace_goto_begin, record_btrace_goto_end)
8552         (record_btrace_goto, record_btrace_stop_replaying_all)
8553         (record_btrace_execution_direction)
8554         (record_btrace_prepare_to_generate_core)
8555         (record_btrace_done_generating_core): Refactor as
8556         record_btrace_target methods.
8557         (init_record_btrace_ops): Delete.
8558         (_initialize_record_btrace): Remove reference to
8559         init_record_btrace_ops.
8560         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8561         the execution_direction global.
8562         (record_full_base_target, record_full_target)
8563         (record_full_core_target): New classes.
8564         (record_full_ops): Now a record_full_target.
8565         (record_full_core_ops): Now a record_full_core_target.
8566         (record_full_target::detach, record_full_target::disconnect)
8567         (record_full_core_target::disconnect)
8568         (record_full_target::mourn_inferior, record_full_target::kill):
8569         New.
8570         (record_full_open, record_full_close, record_full_async): Refactor
8571         as methods of the record_full_base_target class.
8572         (record_full_resume, record_full_commit_resume): Refactor
8573         as methods of the record_full_target class.
8574         (record_full_wait, record_full_stopped_by_watchpoint)
8575         (record_full_stopped_data_address)
8576         (record_full_stopped_by_sw_breakpoint)
8577         (record_full_supports_stopped_by_sw_breakpoint)
8578         (record_full_stopped_by_hw_breakpoint)
8579         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8580         methods of the record_full_base_target class.
8581         (record_full_store_registers, record_full_xfer_partial)
8582         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8583         Refactor as methods of the record_full_target class.
8584         (record_full_can_execute_reverse, record_full_get_bookmark)
8585         (record_full_goto_bookmark, record_full_execution_direction)
8586         (record_full_record_method, record_full_info, record_full_delete)
8587         (record_full_is_replaying, record_full_will_replay)
8588         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8589         (record_full_stop_replaying): Refactor as methods of the
8590         record_full_base_target class.
8591         (record_full_core_resume, record_full_core_kill)
8592         (record_full_core_fetch_registers)
8593         (record_full_core_prepare_to_store)
8594         (record_full_core_store_registers, record_full_core_xfer_partial)
8595         (record_full_core_insert_breakpoint)
8596         (record_full_core_remove_breakpoint)
8597         (record_full_core_has_execution): Refactor
8598         as methods of the record_full_core_target class.
8599         (record_full_base_target::supports_delete_record): New.
8600         (init_record_full_ops): Delete.
8601         (init_record_full_core_ops): Delete.
8602         (record_full_save): Refactor as method of the
8603         record_full_base_target class.
8604         (_initialize_record_full): Remove references to
8605         init_record_full_ops and init_record_full_core_ops.
8606
8607         * remote.c (remote_target, extended_remote_target): New classes.
8608         (remote_ops): Now a remote_target.
8609         (extended_remote_ops): Now an extended_remote_target.
8610         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8611         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8612         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8613         (remote_pass_signals, remote_set_syscall_catchpoint)
8614         (remote_program_signals, )
8615         (remote_thread_always_alive): Remove target_ops parameter.
8616         (remote_thread_alive, remote_thread_name)
8617         (remote_update_thread_list, remote_threads_extra_info)
8618         (remote_static_tracepoint_marker_at)
8619         (remote_static_tracepoint_markers_by_strid)
8620         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8621         (remote_open): Refactor as methods of remote_target.
8622         (extended_remote_open, extended_remote_detach)
8623         (extended_remote_attach, extended_remote_post_attach):
8624         (extended_remote_supports_disable_randomization)
8625         (extended_remote_create_inferior): : Refactor as method of
8626         extended_remote_target.
8627         (remote_set_permissions, remote_open_1, remote_detach)
8628         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8629         (remote_resume, remote_commit_resume, remote_stop)
8630         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8631         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8632         (remote_prepare_to_store, remote_store_registers)
8633         (remote_flash_erase, remote_flash_done, remote_files_info)
8634         (remote_kill, remote_mourn, remote_insert_breakpoint)
8635         (remote_remove_breakpoint, remote_insert_watchpoint)
8636         (remote_watchpoint_addr_within_range)
8637         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8638         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8639         (remote_supports_stopped_by_sw_breakpoint)
8640         (remote_stopped_by_hw_breakpoint)
8641         (remote_supports_stopped_by_hw_breakpoint)
8642         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8643         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8644         (remote_verify_memory): Refactor as methods of remote_target.
8645         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8646         parameter.
8647         (remote_xfer_partial, remote_get_memory_xfer_limit)
8648         (remote_search_memory, remote_rcmd, remote_memory_map)
8649         (remote_pid_to_str, remote_get_thread_local_address)
8650         (remote_get_tib_address, remote_read_description): Refactor as
8651         methods of remote_target.
8652         (remote_target::fileio_open, remote_target::fileio_pwrite)
8653         (remote_target::fileio_pread, remote_target::fileio_close): New.
8654         (remote_hostio_readlink, remote_hostio_fstat)
8655         (remote_filesystem_is_local, remote_can_execute_reverse)
8656         (remote_supports_non_stop, remote_supports_disable_randomization)
8657         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8658         (remote_supports_enable_disable_tracepoint)
8659         (remote_supports_string_tracing)
8660         (remote_can_run_breakpoint_commands, remote_trace_init)
8661         (remote_download_tracepoint, remote_can_download_tracepoint)
8662         (remote_download_trace_state_variable, remote_enable_tracepoint)
8663         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8664         (remote_trace_start, remote_get_trace_status)
8665         (remote_get_tracepoint_status, remote_trace_stop)
8666         (remote_trace_find, remote_get_trace_state_variable_value)
8667         (remote_save_trace_data, remote_get_raw_trace_data)
8668         (remote_set_disconnected_tracing, remote_core_of_thread)
8669         (remote_set_circular_trace_buffer, remote_traceframe_info)
8670         (remote_get_min_fast_tracepoint_insn_len)
8671         (remote_set_trace_buffer_size, remote_set_trace_notes)
8672         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8673         (remote_disable_btrace, remote_teardown_btrace)
8674         (remote_read_btrace, remote_btrace_conf)
8675         (remote_augmented_libraries_svr4_read, remote_load)
8676         (remote_pid_to_exec_file, remote_can_do_single_step)
8677         (remote_execution_direction, remote_thread_handle_to_thread_info):
8678         Refactor as methods of remote_target.
8679         (init_remote_ops, init_extended_remote_ops): Delete.
8680         (remote_can_async_p, remote_is_async_p, remote_async)
8681         (remote_thread_events, remote_upload_tracepoints)
8682         (remote_upload_trace_state_variables): Refactor as methods of
8683         remote_target.
8684         (_initialize_remote): Remove references to init_remote_ops and
8685         init_extended_remote_ops.
8686
8687         * remote-sim.c (gdbsim_target): New class.
8688         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8689         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8690         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8691         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8692         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8693         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8694         Refactor as methods of gdbsim_target.
8695         (gdbsim_ops): Now a gdbsim_target.
8696         (init_gdbsim_ops): Delete.
8697         (gdbsim_cntrl_c): Adjust.
8698         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8699
8700         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8701         (the_amd64_linux_nat_target): New.
8702         (amd64_linux_fetch_inferior_registers)
8703         (amd64_linux_store_inferior_registers): Refactor as methods of
8704         amd64_linux_nat_target.
8705         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8706         * i386-linux-nat.c: Don't include "linux-nat.h".
8707         (i386_linux_nat_target): New class.
8708         (the_i386_linux_nat_target): New.
8709         (i386_linux_fetch_inferior_registers)
8710         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8711         as methods of i386_linux_nat_target.
8712         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8713         * inf-child.c (inf_child_ops): Delete.
8714         (inf_child_fetch_inferior_registers)
8715         (inf_child_store_inferior_registers): Delete.
8716         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8717         methods of inf_child_target.
8718         (inf_child_target::supports_terminal_ours)
8719         (inf_child_target::terminal_init)
8720         (inf_child_target::terminal_inferior)
8721         (inf_child_target::terminal_ours_for_output)
8722         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8723         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8724         New.
8725         (inf_child_open, inf_child_disconnect, inf_child_close)
8726         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8727         (inf_child_post_startup_inferior, inf_child_can_run)
8728         (inf_child_pid_to_exec_file): Refactor as methods of
8729         inf_child_target.
8730         (inf_child_follow_fork): Delete.
8731         (inf_child_target::can_create_inferior)
8732         (inf_child_target::can_attach): New.
8733         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8734         (inf_child_target::has_stack, inf_child_target::has_registers)
8735         (inf_child_target::has_execution): New.
8736         (inf_child_fileio_open, inf_child_fileio_pwrite)
8737         (inf_child_fileio_pread, inf_child_fileio_fstat)
8738         (inf_child_fileio_close, inf_child_fileio_unlink)
8739         (inf_child_fileio_readlink, inf_child_use_agent)
8740         (inf_child_can_use_agent): Refactor as methods of
8741         inf_child_target.
8742         (return_zero, inf_child_target): Delete.
8743         (inf_child_target::inf_child_target): New.
8744         * inf-child.h: Include "target.h".
8745         (inf_child_target): Delete function prototype.
8746         (inf_child_target): New class.
8747         (inf_child_open_target, inf_child_mourn_inferior)
8748         (inf_child_maybe_unpush_target): Delete.
8749         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8750         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8751         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8752         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8753         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8754         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8755         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8756         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8757         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8758         methods of inf_ptrace_target.
8759         (inf_ptrace_target): Delete function.
8760         * inf-ptrace.h: Include "inf-child.h".
8761         (inf_ptrace_target): Delete function declaration.
8762         (inf_ptrace_target): New class.
8763         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8764         * linux-nat.c (linux_target): New.
8765         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8766         (linux_nat_target::~linux_nat_target): New.
8767         (linux_child_post_attach, linux_child_post_startup_inferior)
8768         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8769         (linux_child_remove_fork_catchpoint)
8770         (linux_child_insert_vfork_catchpoint)
8771         (linux_child_remove_vfork_catchpoint)
8772         (linux_child_insert_exec_catchpoint)
8773         (linux_child_remove_exec_catchpoint)
8774         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8775         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8776         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8777         (linux_nat_stopped_data_address)
8778         (linux_nat_stopped_by_sw_breakpoint)
8779         (linux_nat_supports_stopped_by_sw_breakpoint)
8780         (linux_nat_stopped_by_hw_breakpoint)
8781         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8782         (linux_nat_kill, linux_nat_mourn_inferior)
8783         (linux_nat_xfer_partial, linux_nat_thread_alive)
8784         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8785         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8786         (linux_child_static_tracepoint_markers_by_strid)
8787         (linux_nat_is_async_p, linux_nat_can_async_p)
8788         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8789         (linux_nat_supports_multi_process)
8790         (linux_nat_supports_disable_randomization, linux_nat_async)
8791         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8792         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8793         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8794         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8795         methods of linux_nat_target.
8796         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8797         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8798         parameter.
8799         (check_stopped_by_watchpoint): Adjust.
8800         (linux_xfer_partial): Delete.
8801         (linux_target_install_ops, linux_target, linux_nat_add_target):
8802         Delete.
8803         (linux_nat_target::linux_nat_target): New.
8804         * linux-nat.h: Include "inf-ptrace.h".
8805         (linux_nat_target): New.
8806         (linux_target, linux_target_install_ops, linux_nat_add_target):
8807         Delete function declarations.
8808         (linux_target): Declare global.
8809         * linux-thread-db.c (thread_db_target): New.
8810         (thread_db_target::thread_db_target): New.
8811         (thread_db_ops): Delete.
8812         (the_thread_db_target): New.
8813         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8814         (thread_db_update_thread_list, thread_db_pid_to_str)
8815         (thread_db_extra_thread_info)
8816         (thread_db_thread_handle_to_thread_info)
8817         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8818         (thread_db_resume): Refactor as methods of thread_db_target.
8819         (init_thread_db_ops): Delete.
8820         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8821         * x86-linux-nat.c: Don't include "linux-nat.h".
8822         (super_post_startup_inferior): Delete.
8823         (x86_linux_nat_target::~x86_linux_nat_target): New.
8824         (x86_linux_child_post_startup_inferior)
8825         (x86_linux_read_description, x86_linux_enable_btrace)
8826         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8827         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8828         methods of x86_linux_nat_target.
8829         (x86_linux_create_target): Delete.  Bits folded ...
8830         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8831         pointer.
8832         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8833         (x86_linux_nat_target): New class.
8834         (x86_linux_create_target): Delete.
8835         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8836         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8837         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8838         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8839         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8840         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8841         make extern.
8842         (x86_use_watchpoints): Delete.
8843         * x86-nat.h: Include "breakpoint.h" and "target.h".
8844         (x86_use_watchpoints): Delete.
8845         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8846         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8847         (x86_insert_watchpoint, x86_remove_watchpoint)
8848         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8849         (x86_stopped_by_hw_breakpoint): New declarations.
8850         (x86_nat_target): New template class.
8851
8852         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8853         (the_ppc_linux_nat_target): New.
8854         (ppc_linux_fetch_inferior_registers)
8855         (ppc_linux_can_use_hw_breakpoint)
8856         (ppc_linux_region_ok_for_hw_watchpoint)
8857         (ppc_linux_ranged_break_num_registers)
8858         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8859         (ppc_linux_insert_mask_watchpoint)
8860         (ppc_linux_remove_mask_watchpoint)
8861         (ppc_linux_can_accel_watchpoint_condition)
8862         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8863         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8864         (ppc_linux_watchpoint_addr_within_range)
8865         (ppc_linux_masked_watch_num_registers)
8866         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8867         (ppc_linux_read_description): Refactor as methods of
8868         ppc_linux_nat_target.
8869         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8870
8871         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8872         (procfs_target): New class.
8873         (the_procfs_target): New.
8874         (procfs_target): Delete function.
8875         (procfs_auxv_parse, procfs_attach, procfs_detach)
8876         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8877         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8878         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8879         (procfs_create_inferior, procfs_update_thread_list)
8880         (procfs_thread_alive, procfs_pid_to_str)
8881         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8882         (procfs_stopped_data_address, procfs_insert_watchpoint)
8883         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8884         (proc_find_memory_regions, procfs_info_proc)
8885         (procfs_make_note_section): Refactor as methods of procfs_target.
8886         (_initialize_procfs): Adjust.
8887         * sol-thread.c (sol_thread_target): New class.
8888         (sol_thread_ops): Now a sol_thread_target.
8889         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8890         (sol_thread_fetch_registers, sol_thread_store_registers)
8891         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8892         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8893         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8894         (init_sol_thread_ops): Delete.
8895         (_initialize_sol_thread): Adjust.  Remove references to
8896         init_sol_thread_ops and complete_target_initialization.
8897
8898         * windows-nat.c (windows_nat_target): New class.
8899         (windows_fetch_inferior_registers)
8900         (windows_store_inferior_registers, windows_resume, windows_wait)
8901         (windows_attach, windows_detach, windows_pid_to_exec_file)
8902         (windows_files_info, windows_create_inferior)
8903         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8904         (windows_close, windows_pid_to_str, windows_xfer_partial)
8905         (windows_get_tib_address, windows_get_ada_task_ptid)
8906         (windows_thread_name, windows_thread_alive): Refactor as
8907         windows_nat_target methods.
8908         (do_initial_windows_stuff): Adjust.
8909         (windows_target): Delete function.
8910         (_initialize_windows_nat): Adjust.
8911
8912         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8913         (darwin_mourn_inferior, darwin_kill_inferior)
8914         (darwin_create_inferior, darwin_attach, darwin_detach)
8915         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8916         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8917         (darwin_supports_multi_process): Refactor as darwin_nat_target
8918         methods.
8919         (darwin_resume_to, darwin_files_info): Delete.
8920         (_initialize_darwin_inferior): Rename to ...
8921         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8922         * darwin-nat.h: Include "inf-child.h".
8923         (darwin_nat_target): New class.
8924         (darwin_complete_target): Delete.
8925         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8926         (darwin_target): New.
8927         (i386_darwin_fetch_inferior_registers)
8928         (i386_darwin_store_inferior_registers): Refactor as methods of
8929         darwin_nat_target.
8930         (darwin_complete_target): Delete, with ...
8931         (_initialize_i386_darwin_nat): ... bits factored out here.
8932
8933         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8934         (the_alpha_linux_nat_target): New.
8935         (alpha_linux_register_u_offset): Refactor as
8936         alpha_linux_nat_target method.
8937         (_initialize_alpha_linux_nat): Adjust.
8938         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8939         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8940         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8941         methods of linux_nat_trad_target.
8942         (linux_trad_target): Delete.
8943         * linux-nat-trad.h (linux_trad_target): Delete function.
8944         (linux_nat_trad_target): New class.
8945         * mips-linux-nat.c (mips_linux_nat_target): New class.
8946         (super_fetch_registers, super_store_registers, super_close):
8947         Delete.
8948         (the_mips_linux_nat_target): New.
8949         (mips64_linux_regsets_fetch_registers)
8950         (mips64_linux_regsets_store_registers)
8951         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8952         (mips_linux_register_u_offset, mips_linux_read_description)
8953         (mips_linux_can_use_hw_breakpoint)
8954         (mips_linux_stopped_by_watchpoint)
8955         (mips_linux_stopped_data_address)
8956         (mips_linux_region_ok_for_hw_watchpoint)
8957         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8958         (mips_linux_close): Refactor as methods of mips_linux_nat.
8959         (_initialize_mips_linux_nat): Adjust to C++ification.
8960
8961         * aix-thread.c (aix_thread_target): New class.
8962         (aix_thread_ops): Now an aix_thread_target.
8963         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8964         (aix_thread_fetch_registers, aix_thread_store_registers)
8965         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8966         (aix_thread_thread_alive, aix_thread_pid_to_str)
8967         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8968         Refactor as methods of aix_thread_target.
8969         (init_aix_thread_ops): Delete.
8970         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8971         and complete_target_initialization.
8972         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8973         (rs6000_nat_target): New class.
8974         (the_rs6000_nat_target): New.
8975         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8976         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8977         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8978         (super_create_inferior): Delete.
8979         (_initialize_rs6000_nat): Adjust to C++ification.
8980
8981         * arm-linux-nat.c (arm_linux_nat_target): New class.
8982         (the_arm_linux_nat_target): New.
8983         (arm_linux_fetch_inferior_registers)
8984         (arm_linux_store_inferior_registers, arm_linux_read_description)
8985         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8986         (arm_linux_remove_hw_breakpoint)
8987         (arm_linux_region_ok_for_hw_watchpoint)
8988         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8989         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8990         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8991         arm_linux_nat_target.
8992         (_initialize_arm_linux_nat): Adjust to C++ification.
8993
8994         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8995         (the_aarch64_linux_nat_target): New.
8996         (aarch64_linux_fetch_inferior_registers)
8997         (aarch64_linux_store_inferior_registers)
8998         (aarch64_linux_child_post_startup_inferior)
8999         (aarch64_linux_read_description)
9000         (aarch64_linux_can_use_hw_breakpoint)
9001         (aarch64_linux_insert_hw_breakpoint)
9002         (aarch64_linux_remove_hw_breakpoint)
9003         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9004         (aarch64_linux_region_ok_for_hw_watchpoint)
9005         (aarch64_linux_stopped_data_address)
9006         (aarch64_linux_stopped_by_watchpoint)
9007         (aarch64_linux_watchpoint_addr_within_range)
9008         (aarch64_linux_can_do_single_step): Refactor as methods of
9009         aarch64_linux_nat_target.
9010         (super_post_startup_inferior): Delete.
9011         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9012
9013         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9014         (the_hppa_linux_nat_target): New.
9015         (hppa_linux_fetch_inferior_registers)
9016         (hppa_linux_store_inferior_registers): Refactor as methods of
9017         hppa_linux_nat_target.
9018         (_initialize_hppa_linux_nat): Adjust to C++ification.
9019
9020         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9021         (the_ia64_linux_nat_target): New.
9022         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9023         (ia64_linux_stopped_data_address)
9024         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9025         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9026         ia64_linux_nat_target methods.
9027         (super_xfer_partial): Delete.
9028         (_initialize_ia64_linux_nat): Adjust to C++ification.
9029
9030         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9031         (the_m32r_linux_nat_target): New.
9032         (m32r_linux_fetch_inferior_registers)
9033         (m32r_linux_store_inferior_registers): Refactor as
9034         m32r_linux_nat_target methods.
9035         (_initialize_m32r_linux_nat): Adjust to C++ification.
9036
9037         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9038         (the_m68k_linux_nat_target): New.
9039         (m68k_linux_fetch_inferior_registers)
9040         (m68k_linux_store_inferior_registers): Refactor as
9041         m68k_linux_nat_target methods.
9042         (_initialize_m68k_linux_nat): Adjust to C++ification.
9043
9044         * s390-linux-nat.c (s390_linux_nat_target): New class.
9045         (the_s390_linux_nat_target): New.
9046         (s390_linux_fetch_inferior_registers)
9047         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9048         (s390_insert_watchpoint, s390_remove_watchpoint)
9049         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9050         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9051         (s390_auxv_parse, s390_read_description): Refactor as methods of
9052         s390_linux_nat_target.
9053         (_initialize_s390_nat): Adjust to C++ification.
9054
9055         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9056         (the_sparc_linux_nat_target): New.
9057         (_initialize_sparc_linux_nat): Adjust to C++ification.
9058         * sparc-nat.c (sparc_fetch_inferior_registers)
9059         (sparc_store_inferior_registers): Remove target_ops parameter.
9060         * sparc-nat.h (sparc_fetch_inferior_registers)
9061         (sparc_store_inferior_registers): Remove target_ops parameter.
9062         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9063         (the_sparc64_linux_nat_target): New.
9064         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9065
9066         * spu-linux-nat.c (spu_linux_nat_target): New class.
9067         (the_spu_linux_nat_target): New.
9068         (spu_child_post_startup_inferior, spu_child_post_attach)
9069         (spu_child_wait, spu_fetch_inferior_registers)
9070         (spu_store_inferior_registers, spu_xfer_partial)
9071         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9072         methods.
9073         (_initialize_spu_nat): Adjust to C++ification.
9074
9075         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9076         (the_tilegx_linux_nat_target): New.
9077         (fetch_inferior_registers, store_inferior_registers):
9078         Refactor as methods.
9079         (_initialize_tile_linux_nat): Adjust to C++ification.
9080
9081         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9082         (the_xtensa_linux_nat_target): New.
9083         (xtensa_linux_fetch_inferior_registers)
9084         (xtensa_linux_store_inferior_registers): Refactor as
9085         xtensa_linux_nat_target methods.
9086         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9087
9088         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9089         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9090         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9091         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9092         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9093         (fbsd_stopped_by_sw_breakpoint)
9094         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9095         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9096         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9097         (fbsd_post_startup_inferior, fbsd_post_attach)
9098         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9099         (fbsd_set_syscall_catchpoint)
9100         (super_xfer_partial, super_resume, super_wait)
9101         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9102         (fbsd_handle_debug_trap): Remove target_ops parameter.
9103         (fbsd_nat_add_target): Delete.
9104         * fbsd-nat.h: Include "inf-ptrace.h".
9105         (fbsd_nat_add_target): Delete.
9106         (USE_SIGTRAP_SIGINFO): Define.
9107         (fbsd_nat_target): New class.
9108
9109         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9110         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9111         (amd64bsd_target): Delete.
9112         * amd64-bsd-nat.h: New file.
9113         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9114         "x86-bsd-nat.h".
9115         (amd64_fbsd_nat_target): New class.
9116         (the_amd64_fbsd_nat_target): New.
9117         (amd64fbsd_read_description): Refactor as method of
9118         amd64_fbsd_nat_target.
9119         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9120         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9121         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9122         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9123         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9124         (i386bsd_target): Delete.
9125         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9126         (i386bsd_fetch_inferior_registers)
9127         (i386bsd_store_inferior_registers): Declare.
9128         (i386_bsd_nat_target): New class.
9129         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9130         (the_i386_fbsd_nat_target): New.
9131         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9132         i386_fbsd_nat_target methods.
9133         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9134         (_initialize_i386fbsd_nat): Adjust to C++ification.
9135         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9136         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9137         (_initialize_x86_bsd_nat): Adjust to C++ification.
9138         * x86-bsd-nat.h: Include "x86-nat.h".
9139         (x86bsd_target): Delete declaration.
9140         (x86bsd_nat_target): New class.
9141
9142         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9143         (the_aarch64_fbsd_nat_target): New.
9144         (aarch64_fbsd_fetch_inferior_registers)
9145         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9146         aarch64_fbsd_nat_target.
9147         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9148         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9149         (the_alpha_bsd_nat_target): New.
9150         (alphabsd_fetch_inferior_registers)
9151         (alphabsd_store_inferior_registers): Refactor as
9152         alpha_bsd_nat_target methods.
9153         (_initialize_alphabsd_nat): Refactor as methods of
9154         alpha_bsd_nat_target.
9155         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9156         (the_amd64_nbsd_nat_target): New.
9157         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9158         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9159         (the_amd64_obsd_nat_target): New.
9160         (_initialize_amd64obsd_nat): Adjust to C++ification.
9161         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9162         (the_arm_fbsd_nat_target): New.
9163         (arm_fbsd_fetch_inferior_registers)
9164         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9165         (_initialize_arm_fbsd_nat): Refactor as methods of
9166         arm_fbsd_nat_target.
9167         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9168         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9169         (the_arm_netbsd_nat_target): New.
9170         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9171         arm_netbsd_nat_target.
9172         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9173         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9174         (the_hppa_nbsd_nat_target): New.
9175         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9176         hppa_nbsd_nat_target methods.
9177         (_initialize_hppanbsd_nat): Adjust to C++ification.
9178         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9179         (the_hppa_obsd_nat_target): New.
9180         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9181         methods of hppa_obsd_nat_target.
9182         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9183         add_target.
9184         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9185         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9186         add_target.
9187         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9188         (_initialize_i386obsd_nat): Use add_target.
9189         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9190         (the_m68k_bsd_nat_target): New.
9191         (m68kbsd_fetch_inferior_registers)
9192         (m68kbsd_store_inferior_registers): Refactor as methods of
9193         m68k_bsd_nat_target.
9194         (_initialize_m68kbsd_nat): Adjust to C++ification.
9195         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9196         (the_mips_fbsd_nat_target): New.
9197         (mips_fbsd_fetch_inferior_registers)
9198         (mips_fbsd_store_inferior_registers): Refactor as methods of
9199         mips_fbsd_nat_target.
9200         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9201         add_target.
9202         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9203         (the_mips_nbsd_nat_target): New.
9204         (mipsnbsd_fetch_inferior_registers)
9205         (mipsnbsd_store_inferior_registers): Refactor as methods of
9206         mips_nbsd_nat_target.
9207         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9208         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9209         (the_mips64_obsd_nat_target): New.
9210         (mips64obsd_fetch_inferior_registers)
9211         (mips64obsd_store_inferior_registers): Refactor as methods of
9212         mips64_obsd_nat_target.
9213         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9214         add_target.
9215         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9216         nbsd_nat_target.
9217         * nbsd-nat.h: Include "inf-ptrace.h".
9218         (nbsd_nat_target): New class.
9219         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9220         (obsd_wait): Refactor as methods of obsd_nat_target.
9221         (obsd_add_target): Delete.
9222         * obsd-nat.h: Include "inf-ptrace.h".
9223         (obsd_nat_target): New class.
9224         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9225         (the_ppc_fbsd_nat_target): New.
9226         (ppcfbsd_fetch_inferior_registers)
9227         (ppcfbsd_store_inferior_registers): Refactor as methods of
9228         ppc_fbsd_nat_target.
9229         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9230         add_target.
9231         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9232         (the_ppc_nbsd_nat_target): New.
9233         (ppcnbsd_fetch_inferior_registers)
9234         (ppcnbsd_store_inferior_registers): Refactor as methods of
9235         ppc_nbsd_nat_target.
9236         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9237         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9238         (the_ppc_obsd_nat_target): New.
9239         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9240         methods of ppc_obsd_nat_target.
9241         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9242         add_target.
9243         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9244         (the_sh_nbsd_nat_target): New.
9245         (shnbsd_fetch_inferior_registers)
9246         (shnbsd_store_inferior_registers): Refactor as methods of
9247         sh_nbsd_nat_target.
9248         (_initialize_shnbsd_nat): Adjust to C++ification.
9249         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9250         (inf_ptrace_xfer_partial): Delete.
9251         (sparc_xfer_partial, sparc_target): Delete.
9252         * sparc-nat.h (sparc_fetch_inferior_registers)
9253         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9254         (sparc_target): Delete function declaration.
9255         (sparc_target): New template class.
9256         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9257         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9258         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9259         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9260         add_target.
9261         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9262         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9263         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9264         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9265         add_target.
9266         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9267         (the_vax_bsd_nat_target): New.
9268         (vaxbsd_fetch_inferior_registers)
9269         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9270         methods.
9271         (_initialize_vaxbsd_nat): Adjust to C++ification.
9272
9273         * bsd-kvm.c (bsd_kvm_target): New class.
9274         (bsd_kvm_ops): Now a bsd_kvm_target.
9275         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9276         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9277         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9278         bsd_kvm_target.
9279         (bsd_kvm_return_one): Delete.
9280         (bsd_kvm_add_target): Adjust to C++ification.
9281
9282         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9283         (nto_procfs_target_procfs): New classes.
9284         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9285         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9286         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9287         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9288         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9289         (procfs_remove_hw_breakpoint, procfs_resume)
9290         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9291         (procfs_kill_inferior, procfs_store_registers)
9292         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9293         as methods of nto_procfs_target.
9294         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9295         (nto_native_ops): Delete.
9296         (procfs_open, procfs_native_open): Delete.
9297         (nto_native_ops): Now an nto_procfs_target_native.
9298         (init_procfs_targets): Adjust to C++ification.
9299         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9300         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9301         Refactor as methods of nto_procfs_target.
9302
9303         * go32-nat.c (go32_nat_target): New class.
9304         (the_go32_nat_target): New.
9305         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9306         (go32_store_registers, go32_xfer_partial, go32_files_info)
9307         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9308         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9309         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9310         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9311         (go32_target): Delete.
9312         (_initialize_go32_nat): Adjust to C++ification.
9313
9314         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9315         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9316         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9317         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9318         gnu_nat_target.
9319         (gnu_target): Delete.
9320         * gnu-nat.h (gnu_target): Delete.
9321         (gnu_nat_target): New class.
9322         * i386-gnu-nat.c (gnu_base_target): New.
9323         (i386_gnu_nat_target): New class.
9324         (the_i386_gnu_nat_target): New.
9325         (_initialize_i386gnu_nat): Adjust to C++ification.
9326
9327 2018-05-02  Pedro Alves  <palves@redhat.com>
9328
9329         * bfd-target.c (target_bfd_xclose): Rename to ...
9330         (target_bfd_close): ... this.
9331         (target_bfd_reopen): Adjust.
9332         * target.c (target_close): Remove references to to_xclose.
9333         * target.h (target_ops::to_xclose): Delete.
9334         (target_ops::to_close): Update comments.
9335
9336 2018-05-02  Pedro Alves  <palves@redhat.com>
9337
9338         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9339         "linux-nat.h".
9340         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9341         * inf-ptrace.c (inf_ptrace_register_u_offset)
9342         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9343         (inf_ptrace_store_register, inf_ptrace_store_registers)
9344         (inf_ptrace_trad_target): Move to ...
9345         * linux-nat-trad.c: ... this new file.
9346         * linux-nat-trad.h: New file.
9347         * linux-nat.c (linux_target_install_ops): Make extern.
9348         (linux_trad_target): Delete.
9349         * linux-nat.h (linux_trad_target): Delete declaration.
9350         (linux_target_install_ops): Declare.
9351         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9352         "linux-nat.h".
9353
9354 2018-05-02  Pedro Alves  <palves@redhat.com>
9355
9356         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9357         procfs_target/add_target here.
9358         * procfs.c (procfs_target): Make static.
9359         (_initialize_procfs): Call add_target here.
9360         * procfs.h (struct target_ops): Remove forward declaration.
9361         (procfs_target): Remove declaration.
9362         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9363
9364 2018-05-02  Pedro Alves  <palves@redhat.com>
9365
9366         * procfs.c (procfs_stopped_by_watchpoint)
9367         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9368         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9369         Forward declare.
9370         (procfs_use_watchpoints): Delete, move contents...
9371         (procfs_target): ... here.
9372         * procfs.h (procfs_use_watchpoints): Delete declaration.
9373         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9374         procfs_use_watchpoints.
9375         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9376         procfs_use_watchpoints.
9377
9378 2018-05-02  Tom Tromey  <tom@tromey.com>
9379
9380         PR python/20084:
9381         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9382         and var_zuinteger_unlimited.
9383         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9384         and PARAM_ZUINTEGER_UNLIMITED.
9385         (set_parameter_value): Handle var_zuinteger and
9386         var_zuinteger_unlimited.
9387         (add_setshow_generic): Likewise.
9388         (parmpy_init): Likewise.
9389
9390 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9391
9392         PR rust/23124
9393         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9394         pointer is not null before dereferencing it.
9395
9396 2018-04-30  Tom Tromey  <tom@tromey.com>
9397
9398         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9399         is_mi_like_p.
9400
9401 2018-04-30  Tom Tromey  <tom@tromey.com>
9402
9403         * breakpoint.c (mention): Remove use of is_mi_like_p.
9404         (print_mention_ranged_breakpoint): Likewise.
9405         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9406         of is_mi_like_p.
9407
9408 2018-04-30  Tom Tromey  <tom@tromey.com>
9409
9410         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9411
9412 2018-04-30  Tom Tromey  <tom@tromey.com>
9413
9414         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9415         (info_spu_event_command): Remove some uses of is_mi_like_p.
9416
9417 2018-04-30  Tom Tromey  <tom@tromey.com>
9418
9419         * python/py-framefilter.c (py_print_single_arg)
9420         (enumerate_locals, py_print_args, py_print_frame): Remove some
9421         uses of is_mi_like_p.
9422
9423 2018-04-30  Tom Tromey  <tom@tromey.com>
9424
9425         * ui-out.c: Update.
9426         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9427         * ui-out.h (ui_out::is_mi_like_p): Now const.
9428         (ui_out::do_is_mi_like_p): Now const.
9429         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9430
9431 2018-04-30  Tom Tromey  <tom@tromey.com>
9432
9433         * varobj.c (varobj_set_visualizer): Use new_reference.
9434         * python/python.c (gdbpy_decode_line): Use new_reference.
9435         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9436         new_reference.
9437
9438 2018-04-30  Tom Tromey  <tom@tromey.com>
9439
9440         * varobj.c (install_new_value): Use new_reference.
9441         * value.h (value_incref): Return void.  Swap intro comment with
9442         value_decref.
9443         * value.c (set_value_parent): Use new_reference.
9444         (value_incref): Return void.  Update intro comment.
9445         (release_value): Use new_reference.
9446         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9447
9448 2018-04-30  Tom Tromey  <tom@tromey.com>
9449
9450         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9451         * gdb_bfd.h (new_bfd_ref): Remove.
9452         (gdb_bfd_open): Update comment.
9453         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9454         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9455         (gdb_bfd_fdopenr): Use new_reference.
9456         * exec.c (exec_file_attach): Use new_reference.
9457
9458 2018-04-30  Tom Tromey  <tom@tromey.com>
9459
9460         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9461         method.
9462
9463 2018-04-30  Tom Tromey  <tom@tromey.com>
9464
9465         * jit.c (jit_read_code_entry): Use type_align.
9466         * i386-tdep.c (i386_gdbarch_init): Don't call
9467         set_gdbarch_long_long_align_bit.
9468         * gdbarch.sh: Remove long_long_align_bit.
9469         * gdbarch.c, gdbarch.h: Rebuild.
9470         * arc-tdep.c (arc_type_align): New function.
9471         (arc_gdbarch_init): Use arc_type_align.  Don't call
9472         set_gdbarch_long_long_align_bit.
9473
9474 2018-04-30  Tom Tromey  <tom@tromey.com>
9475
9476         * rust-lang.c (rust_type_alignment): Remove.
9477         (rust_composite_type): Use type_align.
9478
9479 2018-04-30  Tom Tromey  <tom@tromey.com>
9480
9481         * NEWS: Mention Type.align.
9482         * python/py-type.c (typy_get_alignof): New function.
9483         (type_object_getset): Add "alignof".
9484
9485 2018-04-30  Tom Tromey  <tom@tromey.com>
9486
9487         PR exp/17095:
9488         * NEWS: Update.
9489         * std-operator.def (UNOP_ALIGNOF): New operator.
9490         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9491         New.
9492         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9493         * c-lang.c (c_op_print_tab): Add alignof.
9494         * c-exp.y (ALIGNOF): New token.
9495         (exp): Add "ALIGNOF" production.
9496         (ident_tokens): Add _Alignof and alignof.
9497
9498 2018-04-30  Tom Tromey  <tom@tromey.com>
9499
9500         * i386-tdep.c (i386_type_align): New function.
9501         (i386_gdbarch_init): Update.
9502         * gdbarch.sh (type_align): New method.
9503         * gdbarch.c, gdbarch.h: Rebuild.
9504         * arch-utils.h (default_type_align): Declare.
9505         * arch-utils.c (default_type_align): New function.
9506         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9507         (struct type) <align_log2>: New field.
9508         <instance_flags>: Now a bitfield.
9509         (TYPE_RAW_ALIGN): New macro.
9510         (type_align, type_raw_align, set_type_align): Declare.
9511         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9512         functions.
9513         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9514         (get_alignment, maybe_set_alignment): New functions.
9515         (read_structure_type, read_enumeration_type, read_array_type)
9516         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9517         (read_subrange_type, read_base_type): Set type alignment.
9518
9519 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9520
9521         * dwarf2read.c (read_index_from_section): Use bool.
9522
9523 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9524
9525         PR gdb/22950
9526         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9527         with #ifdef.
9528
9529 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9530
9531         PR build/22873
9532         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9533         last step, and do it atomically.
9534
9535 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9536
9537         * compile/compile-c-types.c (convert_int, convert_float):
9538         Update for C FE v1.
9539
9540 2018-04-27  Tom Tromey  <tom@tromey.com>
9541
9542         PR rust/22545:
9543         * rust-lang.c (rust_inclusive_range_type_p): New function.
9544         (rust_range): Handle inclusive ranges.
9545         (rust_compute_range): Likewise.
9546         * rust-exp.y (struct rust_op) <inclusive>: New field.
9547         (DOTDOTEQ): New constant.
9548         (range_expr): Add "..=" productions.
9549         (operator_tokens): Add "..=" token.
9550         (ast_range): Add "inclusive" parameter.
9551         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9552         ranges.
9553         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9554         bounds values.
9555         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9556         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9557         Update comments.
9558         * expprint.c (print_subexp_standard): Handle new bounds values.
9559         (dump_subexp_body_standard): Likewise.
9560
9561 2018-04-27  Tom Tromey  <tom@tromey.com>
9562
9563         * configure: Rebuild.
9564         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9565         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9566         "OVERRIDE".
9567         (class symbol_needs_eval_context): Likewise.
9568         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9569         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9570         "virtual".
9571         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9572         "override".
9573         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9574         * aarch64-tdep.c (instruction_reader::read): Use "override".
9575         (instruction_reader_test::read): Likewise.
9576         * arm-tdep.c (instruction_reader::read): Use "override".
9577         (instruction_reader_thumb::read): Likewise.
9578
9579 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9580
9581         PR remote/9665
9582         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9583         instead of remote_send.
9584         (remote_send): Remove.
9585
9586 2018-04-26  Pedro Alves  <palves@redhat.com>
9587
9588         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9589         find_function_start_sal instead of find_pc_line.
9590
9591 2018-04-26  Pedro Alves  <palves@redhat.com>
9592
9593         * breakpoint.c (set_breakpoint_location_function): Handle
9594         mst_data_gnu_ifunc.
9595         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9596         * elfread.c (elf_symtab_read): Give data symbols with
9597         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9598         (elf_rel_plt_read): Update comment.
9599         * linespec.c (convert_linespec_to_sals): Handle
9600         mst_data_gnu_ifunc.
9601         (minsym_found): Handle mst_data_gnu_ifunc.
9602         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9603         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9604         * parse.c (find_minsym_type_and_address): Handle
9605         mst_data_gnu_ifunc.
9606         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9607         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9608         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9609         comment.
9610         <mst_data_gnu_ifunc>: New enumerator.
9611
9612 2018-04-26  Pedro Alves  <palves@redhat.com>
9613
9614         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9615         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9616         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9617         Handle it.
9618         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9619         (lookup_minimal_symbol_by_pc): Adjust.
9620         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9621         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9622         * minsyms.h (lookup_msym_prefer): New enum.
9623         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9624         parameter by a lookup_msym_prefer parameter.
9625
9626 2018-04-26  Pedro Alves  <palves@redhat.com>
9627
9628         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9629         ends in "@plt" instead of looking at the symbol's section.
9630
9631 2018-04-26  Pedro Alves  <palves@redhat.com>
9632
9633         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9634         all references.
9635         (find_pc_partial_function_gnu_ifunc): Rename to ...
9636         (find_pc_partial_function): ... this, and remove references to
9637         'is_gnu_ifunc_p'.
9638         (find_pc_partial_function): Delete old implementation.
9639         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9640
9641 2018-04-26  Pedro Alves  <palves@redhat.com>
9642
9643         * linespec.c (struct bound_minimal_symbol_search_key): New.
9644         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9645         skip first line if we found a GNU ifunc minimal symbol by name.
9646         (compare_msymbols): Change parameters to work with a destructured
9647         lhs minsym.
9648         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9649         functions.
9650
9651 2018-04-26  Pedro Alves  <palves@redhat.com>
9652
9653         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9654         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9655         address/name.
9656         (add_location_to_breakpoint): Store the minsym and the objfile in
9657         the breakpoint location.
9658         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9659         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9660         Record the minsym in the sal.
9661         * symtab.h (symtab_and_line) <msymbol>: New field.
9662
9663 2018-04-26  Pedro Alves  <palves@redhat.com>
9664
9665         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9666         unless we actually resolved the ifunc.
9667
9668 2018-04-26  Pedro Alves  <palves@redhat.com>
9669
9670         * c-exp.y (variable production): Prefer ifunc minsyms over
9671         regular function symbols.
9672         * symtab.c (find_gnu_ifunc): New function.
9673         * minsyms.h (lookup_msym_prefer): New enum.
9674         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9675         parameter by a lookup_msym_prefer parameter.
9676         * symtab.h (find_gnu_ifunc): New declaration.
9677
9678 2018-04-26  Pedro Alves  <palves@redhat.com>
9679
9680         * blockframe.c (find_gnu_ifunc_target_type): New function.
9681         (find_function_type): New.
9682         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9683         return a value with a memory address.
9684         (eval_call): For calls to GNU ifunc functions, try to find the
9685         type of the target function from the type that the resolver
9686         returns.
9687         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9688         symbols.
9689         * infcall.c (find_function_return_type): Delete.
9690         (find_function_addr): Add 'function_type' parameter.  For calls to
9691         GNU ifunc functions, try to find the type of the target function
9692         from the type that the resolver returns, and return it via
9693         FUNCTION_TYPE.
9694         (call_function_by_hand_dummy): Adjust to use the function type
9695         returned by find_function_addr.
9696         (find_function_addr): Add 'function_type' parameter and move
9697         description here.
9698         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9699         declarations.
9700
9701 2018-04-26  Pedro Alves  <palves@redhat.com>
9702
9703         * c-exp.y (variable production): Skip finding an alias for ifunc
9704         symbols.
9705
9706 2018-04-26  Pedro Alves  <palves@redhat.com>
9707
9708         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9709
9710 2018-04-25  Pedro Alves  <palves@redhat.com>
9711
9712         * infcmd.c (kill_command): Print the pid as string, not the whole
9713         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9714         message.
9715         * remote.c (remote_detach_1): Print the pid as string, not the
9716         whole thread's ptid.
9717
9718 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9719             Sergio Durigan Junior  <sergiodj@redhat.com>
9720             Pedro Alves  <palves@redhat.com>
9721
9722         * infcmd.c (kill_command): Print message when inferior has
9723         been killed.
9724         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9725         '1'.
9726         (add_inferior): Improve message printed when
9727         'print_inferior_events' is on.
9728         (exit_inferior): Remove message printed when
9729         'print_inferior_events' is on.
9730         (detach_inferior): Improve message printed when
9731         'print_inferior_events' is on.
9732         (initialize_inferiors): Use 'add_inferior_silent' to set
9733         'current_inferior_'.
9734         * inferior.h (print_inferior_events): Declare here as
9735         'extern'.
9736         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9737         '[Detaching...]' messages when 'print_inferior_events' is on.
9738         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9739         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9740         'Detaching after fork from child...', replace it by '... from
9741         parent...'.
9742         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9743         prefix/suffix when printing 'Detaching...' messages.  Print
9744         them when 'print_inferior_events' is on.
9745         * remote.c (remote_detach_1): Print message when detaching
9746         from inferior and '!is_fork_parent'.
9747
9748 2018-04-24  Tom Tromey  <tom@tromey.com>
9749
9750         * cli-out.h: Reindent.
9751
9752 2018-04-24  Tom Tromey  <tom@tromey.com>
9753
9754         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9755         (cli_ui_out::do_field_string): Use fputs_filtered.
9756         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9757
9758 2018-04-23  Tom Tromey  <tom@tromey.com>
9759
9760         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9761         gdb::unique_xmalloc_ptr.
9762
9763 2018-04-23  Tom Tromey  <tom@tromey.com>
9764
9765         * configure: Rebuild.
9766
9767 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9768
9769         PR gdb/23095
9770         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9771         prepare_for_testing.  Set normal_bp to r_debug_state if target
9772         is bsd.
9773
9774 2018-04-21  Pedro Alves  <palves@redhat.com>
9775             Rajendra SY  <rajendra.sy@gmail.com>
9776
9777         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9778         * remote.c (extended_remote_attach): In all-stop mode, mark the
9779         thread as executing.
9780
9781 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9782
9783         * thread.c (thread_apply_all_command): Fix comment.
9784         (thread_command): Fix comment.
9785
9786 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9787
9788         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9789         parameter.
9790         * features/aarch64-core.c (create_feature_aarch64_core):
9791         Regenerate.
9792         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9793         Likewise.
9794         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9795         Likewise.
9796         * features/i386/32bit-avx512.c
9797         (create_feature_i386_32bit_avx512): Likewise.
9798         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9799         Likewise.
9800         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9801         Likewise.
9802         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9803         Likewise.
9804         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9805         Likewise.
9806         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9807         Likewise.
9808         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9809         Likewise.
9810         * features/i386/64bit-avx512.c
9811         (create_feature_i386_64bit_avx512): Likewise.
9812         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9813         Likewise.
9814         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9815         Likewise.
9816         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9817         Likewise.
9818         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9819         Likewise.
9820         * features/i386/64bit-segments.c
9821         (create_feature_i386_64bit_segments): Likewise.
9822         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9823         Likewise.
9824         * features/i386/x32-core.c
9825         (create_feature_i386_x32_core): Likewise.
9826         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9827         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9828         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9829         * target-descriptions.c: In generated code, don't pass xml
9830         filename.
9831
9832 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9833
9834         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9835         (print_xml_feature::visit_post): Likewise.
9836         (print_xml_feature::visit): Likewise.
9837         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9838         (print_xml_feature): Add new class.
9839         * regformats/regdat.sh: Null xmltarget on feature targets.
9840         * target-descriptions.c (struct target_desc): Add xmltarget.
9841         (maintenance_check_tdesc_xml_convert): Add unittest function.
9842         (tdesc_get_features_xml): Add function to get xml.
9843         (maintenance_check_xml_descriptions): Test xml generation.
9844         * xml-tdesc.c (string_read_description_xml): Add function.
9845         * xml-tdesc.h (string_read_description_xml): Add declaration.
9846
9847 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9848
9849         * features/Makefile: Add feature marker to targets with new style
9850         target descriptions.
9851         * regformats/aarch64.dat: Regenerate.
9852         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9853         * regformats/i386/amd64-avx-linux.dat: Likewise.
9854         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9855         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9856         * regformats/i386/amd64-linux.dat: Likewise.
9857         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9858         * regformats/i386/amd64.dat: Likewise.
9859         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9860         * regformats/i386/i386-avx-linux.dat: Likewise.
9861         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9862         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9863         * regformats/i386/i386-linux.dat: Likewise.
9864         * regformats/i386/i386-mmx-linux.dat: Likewise.
9865         * regformats/i386/i386-mpx-linux.dat: Likewise.
9866         * regformats/i386/i386.dat: Likewise.
9867         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9868         * regformats/i386/x32-avx-linux.dat: Likewise.
9869         * regformats/i386/x32-linux.dat: Likewise.
9870         * regformats/tic6x-c62x-linux.dat: Likewise.
9871         * regformats/tic6x-c64x-linux.dat: Likewise.
9872         * regformats/tic6x-c64xp-linux.dat: Likewise.
9873         * regformats/regdat.sh: Parse feature marker.
9874
9875 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9876
9877         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9878         (tdesc_osabi_name): Likewise.
9879         * target-descriptions.c (tdesc_architecture_name): Add new
9880         function.
9881         (tdesc_osabi_name): Likewise.
9882
9883 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9884
9885         * common/tdesc.c (tdesc_predefined_type): Move to here.
9886         (tdesc_named_type): Likewise.
9887         (tdesc_create_vector): Likewise.
9888         (tdesc_create_struct): Likewise.
9889         (tdesc_set_struct_size): Likewise.
9890         (tdesc_create_union): Likewise.
9891         (tdesc_create_flags): Likewise.
9892         (tdesc_create_enum): Likewise.
9893         (tdesc_add_field): Likewise.
9894         (tdesc_add_typed_bitfield): Likewise.
9895         (tdesc_add_bitfield): Likewise.
9896         (tdesc_add_flag): Likewise.
9897         (tdesc_add_enum_value): Likewise.
9898         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9899         (struct tdesc_type_vector): Likewise.
9900         (struct tdesc_type_field): Likewise.
9901         (struct tdesc_type_with_fields): Likewise.
9902         (tdesc_create_enum): Add declaration.
9903         (tdesc_add_typed_bitfield): Likewise.
9904         (tdesc_add_enum_value): Likewise.
9905         * target-descriptions.c (tdesc_type_field): Move from here.
9906         (tdesc_type_builtin): Likewise.
9907         (tdesc_type_vector): Likewise.
9908         (tdesc_type_with_fields): Likewise.
9909         (tdesc_predefined_types): Likewise.
9910         (tdesc_named_type): Likewise.
9911         (tdesc_create_vector): Likewise.
9912         (tdesc_create_struct): Likewise.
9913         (tdesc_set_struct_size): Likewise.
9914         (tdesc_create_union): Likewise.
9915         (tdesc_create_flags): Likewise.
9916         (tdesc_create_enum): Likewise.
9917         (tdesc_add_field): Likewise.
9918         (tdesc_add_typed_bitfield): Likewise.
9919         (tdesc_add_bitfield): Likewise.
9920         (tdesc_add_flag): Likewise.
9921         (tdesc_add_enum_value): Likewise.
9922         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9923         (tdesc_add_typed_bitfield): Likewise.
9924         (tdesc_add_enum_value): Likewise.
9925
9926 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9927
9928         * common/tdesc.c (tdesc_feature::accept): Move to here.
9929         (tdesc_feature::operator==): Likewise.
9930         (tdesc_create_reg): Likewise.
9931         * common/tdesc.h (tdesc_type_kind): Likewise.
9932         (struct tdesc_type): Likewise.
9933         (struct tdesc_feature): Likewise.
9934         * regformats/regdat.sh: Create a feature.
9935         * target-descriptions.c (tdesc_type_kind): Move from here.
9936         (tdesc_type): Likewise.
9937         (tdesc_type_up): Likewise.
9938         (tdesc_feature): Likewise.
9939         (tdesc_create_reg): Likewise.
9940
9941 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9942
9943         * Makefile.in: Add arch/tdesc.c
9944         * common/tdesc.c: New file.
9945         * common/tdesc.h (tdesc_element_visitor): Move to here.
9946         (tdesc_element): Likewise.
9947         (tdesc_reg): Likewise.
9948         (tdesc_reg_up): Likewise.
9949         * regformats/regdef.h (reg): Add offset to constructors.
9950         * target-descriptions.c (tdesc_element_visitor): Move from here.
9951         (tdesc_element): Likewise.
9952         (tdesc_reg): Likewise.
9953         (tdesc_reg_up): Likewise.
9954
9955 2018-04-17  Tom Tromey  <tom@tromey.com>
9956
9957         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9958         discriminant field.
9959
9960 2018-04-17  Tom Tromey  <tom@tromey.com>
9961
9962         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9963
9964 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9965
9966         * symtab.c (print_symbol_info): Skip printing filename and line
9967         number when `last' is NULL.
9968         (symtab_symbol_info): Use empty string instead of NULL for first
9969         invocation of print_symbol_info.
9970         (rbreak_command): Pass NULL to `last' parameter of
9971         print_symbol_info.
9972
9973 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9974
9975         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9976         instead of nullptr.
9977
9978 2018-04-16  Pedro Alves  <palves@redhat.com>
9979
9980         * MAINTAINERS (sh): Remove.
9981         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9982         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9983         (ALLDEPFILES): Remove sh64-tdep.c.
9984         * NEWS: Mentions that support for SH-5/SH64 is removed.
9985         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9986         (sh*-*-openbsd*): Ditto.
9987         (sh64-*-elf*): Remove.
9988         (sh*): Remove.
9989         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9990         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9991         * sh-tdep.c: No longer include "sh64-tdep.h".
9992         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9993         * sh64-tdep.c, sh64-tdep.h: Remove files.
9994
9995 2018-04-16  Pedro Alves  <palves@redhat.com>
9996
9997         * MAINTAINERS: Remove m88k.
9998         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9999         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10000         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10001         * NEWS: Mention that support for m88k was removed.
10002         * configure.host (m88*-*-*): Remove support.
10003         * configure.nat (m88k-*-*): Remove support.
10004         * configure.tgt (m88*-*-openbsd*): Remove.
10005         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10006
10007 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10008
10009         * configure.tgt (x86_tobjs): New variable.
10010         (amd64_tobjs, i386_tobjs): Use it.
10011
10012 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10013
10014         * symtab.c (print_symbol_info): Precede the symbol definition by
10015         the line number when available.
10016         * NEWS: Advertise this enhancement.
10017
10018 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10019
10020         * NEWS (New options): announce set/show record btrace cpu.
10021         * btrace.c: Include record-btrace.h.
10022         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10023         the vendor is unknown.
10024         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10025         Maybe overwrite the btrace configuration's cpu.
10026         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10027         (btrace_fetch): Add cpu parameter.  Update callers.
10028         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10029         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10030         errata workarounds if the vendor is unknown.
10031         * python/py-record-btrace.c: Include record-btrace.h.
10032         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10033         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10034         * record-btrace.c (record_btrace_cpu_state_kind): New.
10035         (record_btrace_cpu): New.
10036         (set_record_btrace_cpu_cmdlist): New.
10037         (record_btrace_get_cpu): New.
10038         (require_btrace_thread, record_btrace_info)
10039         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10040         (cmd_set_record_btrace_cpu_none): New.
10041         (cmd_set_record_btrace_cpu_auto): New.
10042         (cmd_set_record_btrace_cpu): New.
10043         (cmd_show_record_btrace_cpu): New.
10044         (_initialize_record_btrace): Initialize set/show record btrace cpu
10045         commands.
10046         * record-btrace.h (record_btrace_get_cpu): New.
10047
10048 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10049
10050         * record.c (set_record_command): Fix typo in message.
10051
10052 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10053
10054         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10055
10056 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10057
10058         * infrun.c (process_event_stop_test): Call
10059         gdbarch_in_indirect_branch_thunk.
10060         * gdbarch.sh (in_indirect_branch_thunk): New.
10061         * gdbarch.c: Regenerated.
10062         * gdbarch.h: Regenerated.
10063         * x86-tdep.h: New.
10064         * x86-tdep.c: New.
10065         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10066         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10067         (ALLDEPFILES): Add x86-tdep.c.
10068         * arch-utils.h (default_in_indirect_branch_thunk): New.
10069         * arch-utils.c (default_in_indirect_branch_thunk): New.
10070         * i386-tdep: Include x86-tdep.h.
10071         (i386_in_indirect_branch_thunk): New.
10072         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10073         function.
10074         * amd64-tdep: Include x86-tdep.h.
10075         (amd64_in_indirect_branch_thunk): New.
10076         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10077
10078 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10079
10080         PR gdb/23053
10081         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10082         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10083         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10084         regression.
10085
10086 2018-04-12  Tom Tromey  <tom@tromey.com>
10087
10088         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10089         (rust_evaluate_subexp): Likewise.
10090
10091 2018-04-12  Pedro Alves  <palves@redhat.com>
10092
10093         * procfs.c (procfs_detach): Make forward declaration's prototype
10094         match definition's protototype.
10095         (proc_get_LDT_entry): Remove stale do_cleanups call.
10096
10097 2018-04-12  Pedro Alves  <palves@redhat.com>
10098
10099         * target.h (target_ops::to_has_exited): Delete.
10100         (target_has_exited): Delete.
10101         * target-delegates.c: Regenerate.
10102
10103 2018-04-11  Pedro Alves  <palves@redhat.com>
10104
10105         * target.c (fileio_fh_t::t): Add comment.
10106         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10107         (target_fileio_close): Handle a NULL target.
10108         (invalidate_fileio_fh): New.
10109         (target_close): Call it.
10110         * remote.c (remote_hostio_send_command): No longer check whether
10111         remote_desc is open.
10112
10113 2018-04-11  Pedro Alves  <palves@redhat.com>
10114
10115         * target.c (fileio_fh_t): Make it a named struct instead of a
10116         typedef.
10117         (fileio_fh_t::is_closed): New method.
10118         (DEF_VEC_O (fileio_fh_t)): Remove.
10119         (fileio_fhandles): Now a std::vector.
10120         (is_closed_fileio_fh): Delete.
10121         (acquire_fileio_fd): Adjust.  Rename parameters.
10122         (release_fileio_fd): Adjust.
10123         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10124         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10125         (target_fileio_close): Adjust.
10126
10127 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10128
10129         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10130         index.
10131
10132 2018-04-10  Pedro Alves  <palves@redhat.com>
10133
10134         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10135         (scoped_finish_thread_state): New class.
10136         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10137         cleanup.
10138         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10139         (fetch_inferior_event, normal_stop): Likewise.
10140         * thread.c (finish_thread_state_cleanup): Delete.
10141
10142 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10143             Pedro Alves  <palves@redhat.com>
10144
10145         * value.c: Include "selftest.h" and "common/array-view.h".
10146         (struct range) <operator ==>: New.
10147         (test_ranges_contain): New.
10148         (check_ranges_vector): New.
10149         (test_insert_into_bit_range_vector): New.
10150         (_initialize_values): Register selftests.
10151         * common/array-view.h (operator==, operator!=): New.
10152
10153 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10154
10155         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10156         an iterator.
10157         * inline-frame.c: Include <algorithm>.
10158         (struct inline_state): Add constructor.
10159         (inline_state_s): Remove.
10160         (DEF_VEC_O(inline_state_s)): Remove.
10161         (inline_states): Change type to std::vector.
10162         (find_inline_frame_state): Adjust to std::vector.
10163         (allocate_inline_frame_state): Remove.
10164         (clear_inline_frame_state): Adjust to std::vector.
10165         (skip_inline_frames): Adjust to std::vector.
10166
10167 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10168
10169         * tracepoint.h (struct trace_state_variable): Add constructor.
10170         <name>: Change type to std::string.
10171         * tracepoint.c (tsv_s): Remove.
10172         (DEF_VEC_O(tsv_s)): Remove.
10173         (tvariables): Change to std::vector.
10174         (create_trace_state_variable): Adjust to std::vector.
10175         (find_trace_state_variable): Likewise.
10176         (find_trace_state_variable_by_number): Likewise.
10177         (delete_trace_state_variable): Likewise.
10178         (trace_variable_command): Adjust to std::string.
10179         (delete_trace_variable_command): Likewise.
10180         (tvariables_info_1): Adjust to std::vector.
10181         (save_trace_state_variables): Likewise.
10182         (start_tracing): Likewise.
10183         (merge_uploaded_trace_state_variables): Adjust to std::vector
10184         and std::string.
10185         * target.h (struct target_ops)
10186         <to_download_trace_state_variable>: Pass reference to
10187         trace_state_variable.
10188         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10189         * target-delegates.c: Re-generate.
10190         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10191         (mi_tsv_deleted): Likewise.
10192         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10193         * remote.c (remote_download_trace_state_variable): Change
10194         pointer to reference and adjust.
10195         * make-target-delegates (parse_argtypes): Handle references.
10196         (write_function_header): Likewise.
10197         (munge_type): Likewise.
10198
10199 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10200
10201         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10202         string_view-selftests.c.
10203         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10204         testsuite.
10205         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10206         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10207         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10208         * unittests/basic_string_view/element_access/char/1.cc:
10209         Likewise.
10210         * unittests/basic_string_view/element_access/char/empty.cc:
10211         Likewise.
10212         * unittests/basic_string_view/element_access/char/front_back.cc:
10213         Likewise.
10214         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10215         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10216         Likewise.
10217         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10218         Likewise.
10219         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10220         Likewise.
10221         * unittests/basic_string_view/operations/compare/char/1.cc:
10222         Likewise.
10223         * unittests/basic_string_view/operations/compare/char/13650.cc:
10224         Likewise.
10225         * unittests/basic_string_view/operations/copy/char/1.cc:
10226         Likewise.
10227         * unittests/basic_string_view/operations/data/char/1.cc:
10228         Likewise.
10229         * unittests/basic_string_view/operations/find/char/1.cc:
10230         Likewise.
10231         * unittests/basic_string_view/operations/find/char/2.cc:
10232         Likewise.
10233         * unittests/basic_string_view/operations/find/char/3.cc:
10234         Likewise.
10235         * unittests/basic_string_view/operations/find/char/4.cc:
10236         Likewise.
10237         * unittests/basic_string_view/operations/rfind/char/1.cc:
10238         Likewise.
10239         * unittests/basic_string_view/operations/rfind/char/2.cc:
10240         Likewise.
10241         * unittests/basic_string_view/operations/rfind/char/3.cc:
10242         Likewise.
10243         * unittests/basic_string_view/operations/substr/char/1.cc:
10244         Likewise.
10245         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10246         * unittests/string_view-selftests.c: New file.
10247
10248 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10249
10250         * unittests/basic_string_view/capacity/1.cc: New file.
10251         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10252         * unittests/basic_string_view/cons/char/1.cc: New file.
10253         * unittests/basic_string_view/cons/char/2.cc: New file.
10254         * unittests/basic_string_view/cons/char/3.cc: New file.
10255         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10256         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10257         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10258         * unittests/basic_string_view/element_access/char/1.cc: New file.
10259         * unittests/basic_string_view/element_access/char/2.cc: New file.
10260         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10261         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10262         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10263         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10264         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10265         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10266         * unittests/basic_string_view/include.cc: New file.
10267         * unittests/basic_string_view/inserters/char/1.cc: New file.
10268         * unittests/basic_string_view/inserters/char/2.cc: New file.
10269         * unittests/basic_string_view/inserters/char/3.cc: New file.
10270         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10271         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10272         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10273         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10274         * unittests/basic_string_view/literals/types.cc: New file.
10275         * unittests/basic_string_view/literals/values.cc: New file.
10276         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10277         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10278         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10279         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10280         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10281         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10282         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10283         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10284         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10285         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10286         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10287         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10288         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10289         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10290         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10291         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10292         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10293         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10294         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10295         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10296         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10297         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10298         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10299         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10300         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10301         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10302         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10303         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10304         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10305         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10306         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10307         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10308         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10309         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10310         * unittests/basic_string_view/operators/char/2.cc: New file.
10311         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10312         * unittests/basic_string_view/range_access/char/1.cc: New file.
10313         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10314         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10315         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10316         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10317         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10318         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10319         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10320         * unittests/basic_string_view/typedefs.cc: New file.
10321         * unittests/basic_string_view/types/1.cc: New file.
10322
10323 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10324
10325         * common/gdb_string_view.h: Remove libstdc++ implementation
10326         details, adjust to gdb reality.
10327         * common/gdb_string_view.tcc: Likewise.
10328         * cli/cli-script.c (struct string_view): Remove.
10329         (user_args) <m_args>: Change element type to gdb::string_view.
10330         (user_args::insert_args): Adjust.
10331
10332 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10333
10334         * common/gdb_string_view.h: New file.
10335         * common/gdb_string_view.tcc: New file.
10336
10337 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10338
10339         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10340         * configure: Re-generate.
10341
10342 2018-04-09  Pedro Alves  <palves@redhat.com>
10343
10344         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10345         (set_target_gdbarch): Call
10346         gdb::observers::architecture_changed.notify instead of
10347         observer_notify_architecture_changed.
10348
10349 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10350
10351         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10352         (do_restore_current_traceframe_cleanup): Remove.
10353         (restore_current_traceframe_cleanup_dtor): Remove.
10354         (make_cleanup_restore_current_traceframe): Remove.
10355         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10356         New.
10357         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10358         * infrun.c (fetch_inferior_event): Use
10359         scoped_restore_current_traceframe.
10360
10361 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10362
10363         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10364         Remove.
10365         <n_allocated_type_units>: Remove.
10366         <all_type_units>: Change to std::vector.
10367         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10368         to std::vector change.
10369         (dwarf2_per_objfile::get_cutu): Likewise.
10370         (dwarf2_per_objfile::get_tu): Likewise.
10371         (create_signatured_type_table_from_index): Likewise.
10372         (create_signatured_type_table_from_debug_names): Likewise.
10373         (dw2_symtab_iter_next): Likewise.
10374         (dw2_print_stats): Likewise.
10375         (dw2_expand_all_symtabs): Likewise.
10376         (dw2_expand_marked_cus): Likewise.
10377         (dw2_debug_names_iterator::next): Likewise.
10378         (dwarf2_initialize_objfile): Likewise.
10379         (add_signatured_type_cu_to_table): Likewise.
10380         (create_all_type_units): Likewise.
10381         (add_type_unit): Likewise.
10382         (struct tu_abbrev_offset): Add constructor.
10383         (build_type_psymtabs_1): Adjust to std::vector change.
10384         (print_tu_stats): Likewise.
10385         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10386         (write_debug_names): Likewise.
10387
10388 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10389
10390         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10391         Make an std::vector.
10392         <n_comp_units>: Remove.
10393         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10394         to std::vector change.
10395         (dwarf2_per_objfile::get_cutu): Likewise.
10396         (dwarf2_per_objfile::get_cu): Likewise.
10397         (create_cus_from_index): Likewise.
10398         (create_addrmap_from_index): Likewise.
10399         (create_addrmap_from_aranges): Likewise.
10400         (dwarf2_read_index): Likewise.
10401         (dw2_find_last_source_symtab): Likewise.
10402         (dw2_map_symtabs_matching_filename): Likewise.
10403         (dw2_symtab_iter_next): Likewise.
10404         (dw2_print_stats): Likewise.
10405         (dw2_expand_all_symtabs): Likewise.
10406         (dw2_expand_symtabs_with_fullname): Likewise.
10407         (dw2_expand_marked_cus): Likewise.
10408         (dw2_map_symbol_filenames): Likewise.
10409         (create_cus_from_debug_names): Likewise.
10410         (dwarf2_read_debug_names): Likewise.
10411         (dw2_debug_names_iterator::next): Likewise.
10412         (dwarf2_initialize_objfile): Likewise.
10413         (set_partial_user): Likewise.
10414         (dwarf2_build_psymtabs_hard): Likewise.
10415         (read_comp_units_from_section): Remove arguments, adjust to
10416         std::vector change.
10417         (create_all_comp_units): Adjust to std::vector and
10418         read_comp_units_from_section changes.
10419         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10420         change.
10421         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10422         (psyms_seen_size): Likewise.
10423         (write_gdbindex): Likewise.
10424         (write_debug_names): Likewise.
10425
10426 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10427
10428         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10429         with dwarf2_per_objfile.
10430         (create_cus_from_index): Likewise.
10431         (create_signatured_type_table_from_index): Likewise.
10432         (dwarf2_read_index): Likewise.
10433         (dwarf2_initialize_objfile): Likewise.
10434         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10435         per_cu rather than get_dwarf2_per_objfile.
10436
10437 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10438
10439         * dwarf2read.h (struct signatured_type): Forward declare.
10440         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10441         New methods.
10442         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10443         (dw2_get_cutu): ...this.
10444         (dwarf2_per_objfile::get_cu): Rename from...
10445         (dw2_get_cu): ...this.
10446         (dwarf2_per_objfile::get_tu): New.
10447         (create_addrmap_from_index): Adjust.
10448         (create_addrmap_from_aranges): Adjust.
10449         (dw2_find_last_source_symtab): Adjust.
10450         (dw2_map_symtabs_matching_filename): Adjust.
10451         (dw2_symtab_iter_next): Adjust.
10452         (dw2_print_stats): Adjust.
10453         (dw2_expand_all_symtabs): Adjust.
10454         (dw2_expand_symtabs_with_fullname): Adjust.
10455         (dw2_expand_marked_cus): Adjust.
10456         (dw_expand_symtabs_matching_file_matcher): Adjust.
10457         (dw2_map_symbol_filenames): Adjust.
10458         (dw2_debug_names_iterator::next): Adjust.
10459         (dwarf2_initialize_objfile): Adjust.
10460         (set_partial_user): Adjust.
10461         (dwarf2_build_psymtabs_hard): Adjust.
10462
10463 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10464
10465         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10466         Remove unused variables.
10467         (dw2_map_symtabs_matching_filename): Likewise.
10468         (dwarf2_record_block_ranges): Likewise.
10469         (dwarf2_read_addr_index): Likewise.
10470         (follow_die_offset): Likewise.
10471
10472 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10473
10474         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10475         to symbol_file_add_main.
10476
10477 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10478
10479         PR mi/22299
10480         * mi/mi-console.c (do_fputc_async_safe): New.
10481         (mi_console_file::write_async_safe): New.
10482         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10483         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10484         New.
10485         * ui-file.c (ui_file::putstrn): Adjust call to
10486         fputstrn_unfiltered.
10487         * utils.c (printchar): Replace do_fputs and do_fprintf
10488         parameters by do_fputc.
10489         (fputstr_filtered): Adjust call to printchar.
10490         (fputstr_unfiltered): Likewise.
10491         (fputstrn_filtered): Likewise.
10492         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10493         printchar.
10494         * utils.h (do_fputc_ftype): New typedef.
10495         (fputstrn_unfiltered): Add do_fputc parameter.
10496
10497 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10498
10499         * regformats/i386/i386-avx.dat: Remove.
10500
10501 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10502
10503         PR gdb/22979
10504         * amd64-tdep.c (amd64_none_init_abi): New function.
10505         (amd64_x32_none_init_abi): New function.
10506         (_initialize_amd64_tdep): Register handlers for x86-64 and
10507         x64_32 with GDB_OSABI_NONE.
10508         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10509         GDB_OSABI_NONE osabi.
10510
10511 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10512
10513         PR gdb/22980
10514         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10515         GDB_OSABI_NONE.
10516         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10517         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10518
10519 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10520
10521         * common/byte-vector.h (char_vector): New type.
10522         * target.h (target_read_alloc): Return
10523         gdb::optional<byte_vector>.
10524         (target_read_stralloc): Return gdb::optional<char_vector>.
10525         (target_get_osdata): Return gdb::optional<char_vector>.
10526         * target.c (target_read_alloc_1): Templatize.  Replacement
10527         manual memory management with vector.
10528         (target_read_alloc): Change return type, adjust.
10529         (target_read_stralloc): Change return type, adjust.
10530         (target_get_osdata): Change return type, adjust.
10531         * auxv.c (struct auxv_info) <length>: Remove.
10532         <data>: Change type to gdb::optional<byte_vector>.
10533         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10534         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10535         (target_auxv_search): Adjust.
10536         (fprint_target_auxv): Adjust.
10537         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10538         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10539         (linux_make_corefile_notes): Adjust.
10540         * osdata.c (get_osdata): Adjust.
10541         * remote.c (remote_get_threads_with_qxfer): Adjust.
10542         (remote_memory_map): Adjust.
10543         (remote_traceframe_info): Adjust.
10544         (btrace_read_config): Adjust.
10545         (remote_read_btrace): Adjust.
10546         (remote_pid_to_exec_file): Adjust.
10547         * solib-aix.c (solib_aix_get_library_list): Adjust.
10548         * solib-dsbt.c (decode_loadmap): Don't free buf.
10549         (dsbt_get_initial_loadmaps): Adjust.
10550         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10551         * solib-target.c (solib_target_current_sos): Adjust.
10552         * tracepoint.c (sdata_make_value): Adjust.
10553         * xml-support.c (xinclude_start_include): Adjust.
10554         (xml_fetch_content_from_file): Adjust.
10555         * xml-support.h (xml_fetch_another): Change return type.
10556         (xml_fetch_content_from_file): Change return type.
10557         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10558         * xml-tdesc.c (file_read_description_xml): Adjust.
10559         (fetch_available_features_from_target): Change return type.
10560         (target_fetch_description_xml): Adjust.
10561         (target_read_description_xml): Adjust.
10562
10563 2018-04-06  Tom Tromey  <tom@tromey.com>
10564
10565         * value.c (~value): Update.
10566         (struct value) <contents>: Now unique_xmalloc_ptr.
10567         (value_contents_bits_eq, allocate_value_contents)
10568         (value_contents_raw, value_contents_all_raw)
10569         (value_contents_for_printing, value_contents_for_printing_const)
10570         (set_value_enclosing_type): Update.
10571
10572 2018-04-06  Tom Tromey  <tom@tromey.com>
10573
10574         * value.c (range_s): Remove typedef, VEC.
10575         (struct range): Add operator<.
10576         (range_lessthan): Remove.
10577         (ranges_contain): Change type.
10578         (~value): Update.
10579         (struct value) <unavailable, optimized_out>: Now std::vector.
10580         (value_entirely_available)
10581         (value_entirely_covered_by_range_vector)
10582         (value_entirely_unavailable, value_entirely_optimized_out):
10583         Update.
10584         (insert_into_bit_range_vector): Change argument type.
10585         (find_first_range_overlap): Likewise.
10586         (struct ranges_and_idx, value_contents_bits_eq)
10587         (require_not_optimized_out, require_available): Update.
10588         (ranges_copy_adjusted): Change argument types.
10589         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10590
10591 2018-04-06  Tom Tromey  <tom@tromey.com>
10592
10593         * value.c (~value): Update.
10594         (struct value) <parent>: Now a value_ref_ptr.
10595         (value_parent, set_value_parent, value_address, value_copy):
10596         Update.
10597
10598 2018-04-06  Tom Tromey  <tom@tromey.com>
10599
10600         * value.c (struct value): Add constructor, destructor, and member
10601         initializers.
10602         (allocate_value_lazy, value_decref): Update.
10603
10604 2018-04-06  Tom Tromey  <tom@tromey.com>
10605
10606         * value.c (struct value) <released, next>: Remove.
10607         (all_values): Now a std::vector.
10608         (allocate_value_lazy): Update.
10609         (value_next): Remove.
10610         (value_mark, value_free_to_mark, release_value)
10611         (value_release_to_mark): Update.
10612
10613 2018-04-06  Tom Tromey  <tom@tromey.com>
10614
10615         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10616         (free_value_chain): Remove.
10617         * value.c (free_value_chain): Remove.
10618         (value_release_to_mark): Return a std::vector.
10619         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10620         std::vector.
10621         (check_condition): Update.
10622         * eval.c (fetch_subexp_value): Change "val_chain" to a
10623         std::vector.
10624         * breakpoint.c (update_watchpoint): Update.
10625         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10626
10627 2018-04-06  Tom Tromey  <tom@tromey.com>
10628
10629         * value.h (free_all_values): Remove.
10630         * value.c (free_all_values): Remove.
10631
10632 2018-04-06  Tom Tromey  <tom@tromey.com>
10633
10634         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10635         (value_history_chain, value_history_count): Remove.
10636         (value_history): New global.
10637         (record_latest_value, access_value_history, show_values)
10638         (preserve_values): Update.
10639
10640 2018-04-06  Tom Tromey  <tom@tromey.com>
10641
10642         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10643         * varobj.c (varobj_set_display_format, varobj_set_value)
10644         (install_default_visualizer, construct_visualizer)
10645         (install_new_value, ~varobj, varobj_get_value_type)
10646         (my_value_of_variable, varobj_editable_p): Update.
10647         * c-varobj.c (c_describe_child, c_value_of_variable)
10648         (cplus_number_of_children, cplus_describe_child): Update.
10649         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10650         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10651         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10652
10653 2018-04-06  Tom Tromey  <tom@tromey.com>
10654
10655         * printcmd.c (last_examine_address): Change type to
10656         value_ref_ptr.
10657         (do_examine, x_command): Update.
10658
10659 2018-04-06  Tom Tromey  <tom@tromey.com>
10660
10661         * value.c (release_value): Update.
10662         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10663         (struct bpstats) <val>: Now a value_ref_ptr.
10664         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10665         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10666         (~watchpoint, print_it_watchpoint, watch_command_1)
10667         (invalidate_bp_value_on_memory_change): Update.
10668
10669 2018-04-06  Tom Tromey  <tom@tromey.com>
10670
10671         * varobj.c (varobj_clear_saved_item)
10672         (update_dynamic_varobj_children, install_new_value, ~varobj):
10673         Update.
10674         * value.h (value_incref): Move declaration earlier.
10675         (value_decref): Rename from value_free.
10676         (struct value_ref_policy): New.
10677         (value_ref_ptr): New typedef.
10678         (struct value_deleter): Remove.
10679         (gdb_value_up): Remove typedef.
10680         (release_value): Change return type.
10681         (release_value_or_incref): Remove.
10682         * value.c (set_value_parent): Update.
10683         (value_incref): Change return type.
10684         (value_decref): Rename from value_free.
10685         (value_free_to_mark, free_all_values, free_value_chain): Update.
10686         (release_value): Return value_ref_ptr.
10687         (release_value_or_incref): Remove.
10688         (record_latest_value, set_internalvar, clear_internalvar):
10689         Update.
10690         * stack.c (info_frame_command): Don't call value_free.
10691         * python/py-value.c (valpy_dealloc, valpy_new)
10692         (value_to_value_object): Update.
10693         * printcmd.c (do_examine): Update.
10694         * opencl-lang.c (lval_func_free_closure): Update.
10695         * mi/mi-main.c (register_changed_p): Don't call value_free.
10696         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10697         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10698         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10699         value_free.
10700         * guile/scm-value.c (vlscm_free_value_smob)
10701         (vlscm_scm_from_value): Update.
10702         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10703         (frame_unwind_register_unsigned, get_frame_register_bytes)
10704         (put_frame_register_bytes): Don't call value_free.
10705         * findvar.c (address_from_register): Don't call value_free.
10706         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10707         * dwarf2loc.c (entry_data_value_free_closure)
10708         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10709         (dwarf2_evaluate_loc_desc_full): Update.
10710         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10711         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10712         (~watchpoint, watch_command_1)
10713         (invalidate_bp_value_on_memory_change): Update.
10714         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10715
10716 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10717
10718         PR gdb/23022
10719         * warning.m4: Add -Wno-error=deprecated-register.
10720         * configure: Re-generate.
10721
10722 2018-04-05  Tom Tromey  <tom@tromey.com>
10723
10724         * linespec.h: Remove include of "vec.h".
10725
10726 2018-04-05  Tom Tromey  <tom@tromey.com>
10727
10728         * linespec.c (typep): Remove typedef.
10729         (find_methods, find_superclass_methods): Take a std::vector.
10730         (find_method): Use std::vector.
10731
10732 2018-04-05  Tom Tromey  <tom@tromey.com>
10733
10734         * utils.c (compare_strings): Remove.
10735         * utils.h (compare_strings): Remove.
10736         * objc-lang.h (find_imps): Update.
10737         * objc-lang.c (find_methods): Take a std::vector.
10738         (uniquify_strings, find_imps): Likewise.
10739         * linespec.c (find_methods): Take a std::vector.
10740         (decode_objc): Use std::vector.
10741         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10742         a std::vector.
10743         (find_method, find_function_symbols): Use std::vector.
10744
10745 2018-04-05  Tom Tromey  <tom@tromey.com>
10746
10747         * completer.c (completion_tracker::completion_tracker): Remove
10748         cast.
10749         (completion_tracker::discard_completions): Likewise.
10750         * breakpoint.c (ambiguous_names_p): Remove cast.
10751         * ada-lang.c (_initialize_ada_language): Remove cast.
10752         * utils.h (streq): Update.
10753         (streq_hash): Add new declaration.
10754         * utils.c (streq): Return bool.
10755         (streq_hash): New function.
10756
10757 2018-04-05  Tom Tromey  <tom@tromey.com>
10758
10759         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10760         Remove a string copy.
10761
10762 2018-04-05  Tom Tromey  <tom@tromey.com>
10763
10764         * linespec.c (filter_results): Use std::vector.
10765         (decode_line_2, decode_line_full): Update.
10766
10767 2018-04-05  Tom Tromey  <tom@tromey.com>
10768
10769         * linespec.c (canonical_to_fullform): Return std::string.
10770         (filter_results): Update.
10771         (struct decode_line_2_item): Add constructor.
10772         <fullform, displayform>: Now std::string.
10773         (decode_line_2_compare_items): Now a std::sort comparator.
10774         (decode_line_2): Update.
10775
10776 2018-04-05  Tom Tromey  <tom@tromey.com>
10777
10778         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10779         (unexpected_linespec_error): Update.
10780         (linespec_parse_basic, parse_linespec): Update.
10781
10782 2018-04-05  Tom Tromey  <tom@tromey.com>
10783
10784         * linespec.c (linespec_parse_basic): Reindent.
10785
10786 2018-04-05  Tom Tromey  <tom@tromey.com>
10787
10788         * minsyms.h (iterate_over_minimal_symbols): Update.
10789         * minsyms.c (iterate_over_minimal_symbols): Take a
10790         gdb::function_view.
10791         * linespec.c (struct collect_minsyms): Remove.
10792         (compare_msyms): Now a std::sort comparator.
10793         (add_minsym): Add parameters.
10794         (search_minsyms_for_name): Update.  Use std::vector.
10795
10796 2018-04-03  Tom Tromey  <tom@tromey.com>
10797
10798         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10799         gdb::byte_vector.
10800
10801 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10802
10803         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10804
10805 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10806
10807         PR gdb/16959
10808         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10809         printing static type.
10810
10811 2018-04-01  Tom Tromey  <tom@tromey.com>
10812
10813         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10814         (rs6000_xfer_shared_libraries): Update.
10815
10816 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10817
10818         * common/gdb_vecs.h (char_ptr): Remove.
10819         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10820
10821 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10822
10823         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10824         with std::vector.
10825         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10826
10827 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10828
10829         * tracepoint.h (struct uploaded_tp): Initialize fields.
10830         <actions, step_actions, cmd_strings>: Change type to
10831         std::vector<char *>.
10832         * tracepoint.c (get_uploaded_tp): Allocate with new.
10833         (free_uploaded_tps): Free with delete.
10834         (parse_tracepoint_definition): Adjust to std::vector change.
10835         * breakpoint.c (read_uploaded_action): Likewise.
10836         (create_tracepoint_from_upload): Likewise.
10837         * ctf.c (ctf_write_uploaded_tp): Likewise.
10838         (SET_ARRAY_FIELD): Likewise.
10839         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10840
10841 2018-03-30  Tom Tromey  <tom@tromey.com>
10842
10843         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10844         std::unique_ptr.
10845         (svr4_keep_data_in_core): Update.
10846         (svr4_read_so_list): Update.
10847
10848 2018-03-30  Tom Tromey  <tom@tromey.com>
10849
10850         * windows-nat.c (handle_output_debug_string, handle_exception):
10851         Update.
10852         * target.h (target_read_string): Update.
10853         * target.c (target_read_string): Change "string" to
10854         unique_xmalloc_ptr.
10855         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10856         Update.
10857         * solib-frv.c (frv_current_sos): Update.
10858         * solib-dsbt.c (dsbt_current_sos): Update.
10859         * solib-darwin.c (darwin_current_sos): Update.
10860         * linux-thread-db.c (inferior_has_bug): Update.
10861         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10862         Update.  Remove alloca.
10863         * ada-lang.c (ada_main_name): Update.
10864
10865 2018-03-30  Tom Tromey  <tom@tromey.com>
10866
10867         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10868         (struct dwo_file_deleter): New.
10869         (dwo_file_up): New typedef.
10870         (open_and_init_dwo_file): Use dwo_file_up.
10871         (free_dwo_file_cleanup): Remove.
10872
10873 2018-03-30  Tom Tromey  <tom@tromey.com>
10874
10875         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10876         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10877
10878 2018-03-30  Tom Tromey  <tom@tromey.com>
10879
10880         * dwarf2read.c (class free_cached_comp_units): New class.
10881         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10882         (free_cached_comp_units): Remove function.
10883
10884 2018-03-30  Tom Tromey  <tom@tromey.com>
10885
10886         * utils.h (make_cleanup_unpush_target): Remove.
10887         * inf-ptrace.c (struct target_unpusher): New.
10888         (target_unpush_up) New typedef.
10889         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10890         target_unpush_up.
10891         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10892
10893 2018-03-27  Tom Tromey  <tom@tromey.com>
10894
10895         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10896
10897 2018-03-27  Pedro Alves  <palves@redhat.com>
10898             Tom Tromey  <tom@tromey.com>
10899
10900         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10901         destructor.  Now a class.
10902         (gdb_readline_wrapper_cleanup): Remove function.
10903         (gdb_readline_wrapper): Remove cleanups.
10904
10905 2018-03-27  Tom Tromey  <tom@tromey.com>
10906
10907         * typeprint.h (struct type_print_options) <local_typedefs,
10908         global_typedefs>: Remove "struct" keyword.
10909         (class typedef_hash_table): New class.
10910         (recursively_update_typedef_hash, add_template_parameters)
10911         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10912         (find_typedef_in_hash): Don't declare.
10913         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10914         (typedef_hash_table::recursively_update): Rename from
10915         recursively_update_typedef_hash.  Now a member.
10916         (typedef_hash_table::add_template_parameters): Rename from
10917         add_template_parameters.  Now a member.
10918         (typedef_hash_table::typedef_hash_table): Now a constructor;
10919         rename from create_typedef_hash.
10920         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10921         rename from free_typedef_hash.
10922         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10923         (do_free_global_table): Remove.
10924         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10925         from copy_type_recursive.
10926         (create_global_typedef_table): Remove.
10927         (typedef_hash_table::find_global_typedef): Now a member of
10928         typedef_hash_table.
10929         (typedef_hash_table::find_typedef): Rename from
10930         find_typedef_in_hash; now a member.
10931         (whatis_exp): Update.
10932         * extension.h (struct ext_lang_type_printers): Add constructor and
10933         destructor.
10934         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10935         declare.
10936         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10937         Now a constructor; rename from start_ext_lang_type_printers.
10938         (ext_lang_type_printers): Now a destructor; rename from
10939         free_ext_lang_type_printers.
10940         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10941         Update.
10942         (c_type_print_base_struct_union): Update.  Remove cleanups.
10943
10944 2018-03-27  Tom Tromey  <tom@tromey.com>
10945
10946         * dwarf-index-write.c: Include <cmath>.
10947
10948 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10949
10950         * NEWS: Add entry describing new "set|show varsize-limit" command.
10951         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10952         command.
10953         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10954         "set variable".
10955
10956 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10957
10958         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10959         dwarf-index-write.c
10960         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10961         * dwarf-index-common.c: New file.
10962         * dwarf-index-common.h: New file.
10963         * dwarf-index-write.c: New file.
10964         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10965         (struct dwarf2_section_info): Move from here.
10966         (dwarf2_section_info_def): Likewise.
10967         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10968         (offset_type): Likewise.
10969         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10970         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10971         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10972         (byte_swap): Likewise.
10973         (MAYBE_SWAP): Likewise.
10974         (dwarf2_per_cu_ptr): Likewise.
10975         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10976         (struct tu_stats): Likewise.
10977         (struct dwarf2_per_objfile): Likewise.
10978         (struct dwarf2_per_cu_data): Likewise.
10979         (struct signatured_type): Likewise.
10980         (sig_type_ptr): Likewise.
10981         (DEF_VEC_P (sig_type_ptr)): Likewise.
10982         (INDEX4_SUFFIX): Likewise.
10983         (INDEX5_SUFFIX): Likewise.
10984         (DEBUG_STR_SUFFIX): Likewise.
10985         (dwarf2_read_section): Make non-static.
10986         (mapped_index_string_hash): Move from here.
10987         (dwarf5_djb_hash): Likewise.
10988         (file_write): Likewise.
10989         (class data_buf): Likewise.
10990         (struct symtab_index_entry): Likewise.
10991         (struct mapped_symtab): Likewise.
10992         (find_slot): Likewise.
10993         (hash_expand): Likewise.
10994         (add_index_entry): Likewise.
10995         (uniquify_cu_indices): Likewise.
10996         (class c_str_view): Likewise.
10997         (class c_str_view_hasher): Likewise.
10998         (class vector_hasher): Likewise.
10999         (write_hash_table): Likewise.
11000         (psym_index_map): Likewise.
11001         (struct addrmap_index_data): Likewise.
11002         (add_address_entry): Likewise.
11003         (add_address_entry_worker): Likewise.
11004         (write_address_map): Likewise.
11005         (symbol_kind): Likewise.
11006         (write_psymbols): Likewise.
11007         (struct signatured_type_index_data): Likewise.
11008         (write_one_signatured_type): Likewise.
11009         (recursively_count_psymbols): Likewise.
11010         (recursively_write_psymbols): Likewise.
11011         (class debug_names): Likewise.
11012         (check_dwarf64_offsets): Likewise.
11013         (psyms_seen_size): Likewise.
11014         (write_gdbindex): Likewise.
11015         (write_debug_names): Likewise.
11016         (assert_file_size): Likewise.
11017         (write_psymtabs_to_index): Likewise.
11018         (save_gdb_index_command): Likewise.
11019         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11020         command.
11021         * dwarf2read.h: New file.
11022
11023 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11024
11025         PR gdb/22670
11026         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11027         symbol name if the CU's language stores symbol names in linkage
11028         format.
11029         * language.h (struct language_defn)
11030         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11031         all instances of this struct.
11032
11033 2018-03-26  Tom Tromey  <tom@tromey.com>
11034
11035         * stack.c (backtrace_command_1): Remove verbose code.
11036
11037 2018-03-26  Tom Tromey  <tom@tromey.com>
11038
11039         * python/py-framefilter.c (py_print_type): Don't catch
11040         exceptions.  Return void.
11041         (py_print_value): Likewise.
11042         (py_print_single_arg): Likewise.
11043         (enumerate_args): Don't catch exceptions.
11044         (py_print_args): Likewise.
11045         (py_print_frame): Likewise.
11046         (gdbpy_apply_frame_filter): Catch exceptions here.
11047
11048 2018-03-26  Tom Tromey  <tom@tromey.com>
11049
11050         * stack.c (_initialize_stack): Remove trailing newlines from help
11051         text.  Add "Usage" line to "backtrace" help.
11052
11053 2018-03-26  Tom Tromey  <tom@tromey.com>
11054
11055         PR python/16486:
11056         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11057
11058 2018-03-26  Tom Tromey  <tom@tromey.com>
11059
11060         * python/py-framefilter.c (py_print_single_arg): Return
11061         EXT_LANG_BT_ERROR from catch.
11062
11063 2018-03-26  Tom Tromey  <tom@tromey.com>
11064
11065         PR backtrace/15584:
11066         * stack.c (backtrace_command_1): Move some code into no-filters
11067         "if".
11068
11069 2018-03-26  Tom Tromey  <tom@tromey.com>
11070
11071         * python/py-framefilter.c (throw_quit_or_print_exception): New
11072         function.
11073         (gdbpy_apply_frame_filter): Use it.
11074
11075 2018-03-26  Tom Tromey  <tom@tromey.com>
11076
11077         PR cli/17716:
11078         * python/py-framefilter.c (py_print_type, py_print_value)
11079         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11080         RETURN_MASK_ERROR.
11081
11082 2018-03-26  Tom Tromey  <tom@tromey.com>
11083
11084         * python/py-framefilter.c (enumerate_args): Use
11085         gdb::unique_xmalloc_ptr.
11086
11087 2018-03-26  Tom Tromey  <tom@tromey.com>
11088
11089         * python/py-framefilter.c (py_print_frame): Return
11090         EXT_LANG_BT_OK.
11091         (gdbpy_apply_frame_filter): Update comment.
11092         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11093         Remove.
11094         <EXT_LANG_BT_NO_FILTERS>: Change value.
11095
11096 2018-03-26  Tom Tromey  <tom@tromey.com>
11097
11098         PR backtrace/15582:
11099         * stack.c (backtrace_command): Parse "hide" argument.
11100         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11101         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11102         constant.
11103
11104 2018-03-26  Tom Tromey  <tom@tromey.com>
11105
11106         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11107         add "flags".
11108         (backtrace_command): Remove "fulltrace", add "flags".
11109
11110 2018-03-26  Tom Tromey  <tom@tromey.com>
11111
11112         * stack.c (backtrace_command): Rewrite command line parsing.
11113
11114 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11115
11116         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11117
11118 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11119
11120         * filename-seen-cache.h: Add include guard.
11121
11122 2018-03-26  Keith Seitz  <keiths@redhat.com>
11123
11124         * symfile.c (place_section): Remove "struct" from section_addr_info
11125         in comment.
11126         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11127         "struct" keyword from section_addr_info.
11128
11129 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11130
11131         * regformats/regdef.h (reg): Add constructors.
11132
11133 2018-03-25  Pedro Alves  <palves@redhat.com>
11134
11135         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11136         if then/else bodies in var_func_name extraction.
11137
11138 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11139
11140         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11141         lookup_minimal_symbol() to find symbol entry.
11142         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11143
11144 2018-03-23  Keith Seitz  <keiths@redhat.com>
11145
11146         PR c++/22968
11147         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11148         nested type definitions for C++, too.
11149
11150 2018-03-23  Tom Tromey  <tom@tromey.com>
11151
11152         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11153         a typedef.
11154         (macho_register_oso): Remove.
11155         (macho_symtab_read): Take a std::vector.
11156         (oso_el_compare_name): Now a std::sort comparator.
11157         (macho_symfile_read_all_oso): Take a std::vector.
11158         (macho_symfile_read): Use std::vector.  Remove cleanups.
11159
11160 2018-03-22  Tom Tromey  <tom@tromey.com>
11161
11162         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11163         (record_full_goto_bookmark): Use std::string.
11164
11165 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11166
11167         PR tdep/18295
11168         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11169         a single mask.
11170
11171 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11172
11173         * rs6000-tdep.c (store_insn_p): New function.
11174         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11175         and cr_reg to their unshifted values. Use store_insn_p to
11176         match LR saves using either R1 or fdata->alloca_reg. Use
11177         store_insn_p to match CR saves. Set alloca_reg_offset
11178         when alloca_reg and framep are set. Remove lr_reg shift
11179         when assigning to fdata->lr_register.
11180
11181 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11182
11183         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11184         command line args instead of emitting a warning.
11185
11186 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11187
11188         * tracepoint.h (struct static_tracepoint_marker): Initialize
11189         fields, define default constructor, move constructor and move
11190         assignment, disable the rest.
11191         <str_id, extra>: Make std::string.
11192         (release_static_tracepoint_marker): Remove.
11193         (free_current_marker): Remove.
11194         * tracepoint.c (free_current_marker): Remove.
11195         (parse_static_tracepoint_marker_definition): Adjust to
11196         std::string, use new hex2str overload.
11197         (release_static_tracepoint_marker): Remove.
11198         (print_one_static_tracepoint_marker): Get marker by reference
11199         and adjust to std::string.
11200         (info_static_tracepoint_markers_command): Adjust to std::vector
11201         changes
11202         * target.h (static_tracepoint_marker_p): Remove typedef.
11203         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11204         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11205         bool.
11206         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11207         * target-debug.h
11208         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11209         (target_debug_print_std_vector_static_tracepoint_marker): New.
11210         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11211         to...
11212         (target_debug_print_static_tracepoint_marker_p): ... this.
11213         * target-delegates.c: Re-generate.
11214         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11215         Make std::string.
11216         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11217         (decode_static_tracepoint_spec): Adjust to std::vector.
11218         (tracepoint_print_one_detail): Adjust to std::string.
11219         (strace_marker_decode_location): Adjust to std::string.
11220         (update_static_tracepoint): Adjust to std::string, remove call
11221         to release_static_tracepoint_marker.
11222         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11223         Adjust to std::vector.
11224         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11225         (remote_static_tracepoint_markers_by_strid): Adjust to
11226         std::vector.
11227         * common/rsp-low.h (hex2str): New overload with explicit count
11228         of bytes.
11229         * common/rsp-low.c (hex2str): New overload with explicit count
11230         of bytes.
11231         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11232         (_initialize_rsp_low_selftests): Add test_hex2str test.
11233         * unittests/tracepoint-selftests.c
11234         (test_parse_static_tracepoint_marker_definition): Adjust to
11235         std::string.
11236
11237 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11238
11239         * tracepoint.c (parse_static_tracepoint_marker_definition):
11240         Consider case where the definition is followed by more
11241         definitions.
11242         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11243         tracepoint-selftests.c.
11244         * unittests/tracepoint-selftests.c: New.
11245
11246 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11247
11248         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11249         Carvalho.
11250
11251 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11252
11253         * symtab.c (find_pc_sect_line): fixed indentation.
11254
11255 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11256
11257         * symtab.c (find_pc_sect_line): now uses binary search.
11258
11259 2018-03-19  Tom Tromey  <tom@tromey.com>
11260
11261         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11262         "IDENT" production.
11263
11264 2018-03-19  Pedro Alves  <palves@redhat.com>
11265             Tom Tromey  <tom@tromey.com>
11266
11267         * unittests/observable-selftests.c: New file.
11268         * common/observable.h: New file.
11269         * observable.h: New file.
11270         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11271         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11272         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11273         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11274         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11275         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11276         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11277         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11278         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11279         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11280         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11281         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11282         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11283         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11284         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11285         tui/tui-interp.c, valops.c: Update all users.
11286         * tui/tui-hooks.c (tui_bp_created_observer)
11287         (tui_bp_deleted_observer, tui_bp_modified_observer)
11288         (tui_inferior_exit_observer, tui_before_prompt_observer)
11289         (tui_normal_stop_observer, tui_register_changed_observer):
11290         Remove.
11291         (tui_observers_token): New global.
11292         (attach_or_detach, tui_attach_detach_observers): New functions.
11293         (tui_install_hooks, tui_remove_hooks): Use
11294         tui_attach_detach_observers.
11295         * record-btrace.c (record_btrace_thread_observer): Remove.
11296         (record_btrace_thread_observer_token): New global.
11297         * observer.sh: Remove.
11298         * observer.c: Rename to observable.c.
11299         * observable.c (namespace gdb_observers): Define new objects.
11300         (observer_debug): Move into gdb_observers namespace.
11301         (struct observer, struct observer_list, xalloc_observer_list_node)
11302         (xfree_observer_list_node, generic_observer_attach)
11303         (generic_observer_detach, generic_observer_notify): Remove.
11304         (_initialize_observer): Update.
11305         Don't include observer.inc.
11306         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11307         (clean mostlyclean): Likewise.
11308         (observer.h, observer.inc): Remove targets.
11309         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11310         (COMMON_SFILES): Use observable.c, not observer.c.
11311         * .gitignore: Remove observer.h.
11312
11313 2018-03-18  Tom Tromey  <tom@tromey.com>
11314
11315         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11316         gdb::def_vector.
11317         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11318
11319 2018-03-17  Tom Tromey  <tom@tromey.com>
11320
11321         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11322
11323 2018-03-17  Tom Tromey  <tom@tromey.com>
11324
11325         * target.c (class scoped_target_fd): New.
11326         (target_fileio_close_cleanup): Remove.
11327         (target_fileio_read_alloc_1): Use scoped_target_fd.
11328
11329 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11330
11331         * silent-rules.mk: New.
11332         * Makefile.in: Include silent-rules.mk
11333         (srcdir, VPATH, top_srcdir): Move up.
11334         (COMPILE): Add ECHO_CXX.
11335         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11336         (init.c): Add ECHO_INIT_C.
11337         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11338         (version.c): Add ECHO_GEN.
11339         (printcmd.o): Add ECHO_CXX.
11340         (target-float.o): Add ECHO_CXX.
11341         (ada-exp.o): Add ECHO_CXX.
11342         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11343         (insight$(EXEEXT)): Add ECHO_CXXLD.
11344         * gnulib/configure.ac: Add AM_SILENT_RULES.
11345         * gnulib/aclocal.m4: Re-generate.
11346         * gnulib/configure: Re-generate.
11347         * gnulib/import/Makefile.in: Re-generate.
11348
11349 2018-03-16  Tom Tromey  <tom@tromey.com>
11350
11351         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11352         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11353         * utils.c (do_free_section_addr_info)
11354         (make_cleanup_free_section_addr_info): Remove.
11355         * symfile.h (struct other_sections): Add constructor.
11356         (struct section_addr_info): Remove.
11357         (section_addr_info): New typedef.
11358         (struct sym_fns) <sym_offsets>: Change type of parameter.
11359         (build_section_addr_info_from_objfile)
11360         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11361         (default_symfile_offsets, symbol_file_add)
11362         (symbol_file_add_from_bfd)
11363         (build_section_addr_info_from_section_table): Update.
11364         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11365         * symfile.c (alloc_section_addr_info): Remove.
11366         (build_section_addr_info_from_section_table): Change return type.
11367         Update.
11368         (build_section_addr_info_from_bfd)
11369         (build_section_addr_info_from_objfile): Likewise.
11370         (free_section_addr_info): Remove.
11371         (relative_addr_info_to_section_offsets): Change type of "addrs".
11372         (addrs_section_compar): Now a std::sort comparator.
11373         (addrs_section_sort): Change return type.
11374         (addr_info_make_relative): Change type of "addrs".  Update.
11375         (default_symfile_offsets, syms_from_objfile_1)
11376         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11377         (symbol_file_add_separate): Update.
11378         (symbol_file_add): Change type of "addrs".  Update.
11379         (add_symbol_file_command): Update.  Remove cleanups.
11380         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11381         cleanups.
11382         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11383         * solib.c (solib_read_symbols): Update.
11384         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11385         * machoread.c (macho_symfile_offsets): Update.
11386         * jit.c (jit_bfd_try_read_symtab): Update.
11387
11388 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11389
11390         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11391         unittests/utils-selftests.c.
11392         * unittests/utils-selftests.c: New file.
11393
11394 2018-03-14  Tom Tromey  <tom@tromey.com>
11395
11396         PR cli/14977:
11397         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11398         for NULL.
11399
11400 2018-03-14  Tom Tromey  <tom@tromey.com>
11401
11402         PR cli/19918:
11403         * printcmd.c (printf_pointer): Allow "-" in format.
11404
11405 2018-03-14  Tom Tromey  <tom@tromey.com>
11406
11407         * printcmd.c (_initialize_printcmd): Add usage to printf.
11408
11409 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11410
11411         * MAINTAINERS: Update my email address.
11412
11413 2018-03-13  Tom Tromey  <tom@tromey.com>
11414
11415         * machoread.c (macho_check_dsym): Change filenamep to a
11416         std::string*.
11417         (macho_symfile_read): Update.
11418         * symfile.c (load_command): Use std::string.
11419
11420 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11421
11422         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11423         to error message string.
11424         (riscv_register_name): Use xsnprintf instead of sprintf.
11425         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11426         internal_error.
11427         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11428         error.
11429         (riscv_push_dummy_call): Likewise.
11430
11431 2018-03-12  Tom Tromey  <tom@tromey.com>
11432
11433         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11434         Use gdb::byte_vector.
11435         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11436
11437 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11438
11439         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11440         parameter type to readable_regcache.
11441         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11442         the declaration.
11443
11444 2018-03-11  Tom Tromey  <tom@tromey.com>
11445
11446         * dwarf2read.c (struct nextfield): Add initializers.
11447         (struct nextfnfield): Remove.
11448         (struct fnfieldlist): Add initializers.  Remove "length" and
11449         "head", use std::vector.
11450         (struct decl_field_list): Remove.
11451         (struct field_info): Add initializers.
11452         <fields, baseclasses>: Now std::vector.
11453         <nbaseclasses, nfnfields, typedef_field_list_count,
11454         nested_types_list_count>: Remove.
11455         (dwarf2_add_field, dwarf2_add_type_defn)
11456         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11457         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11458         (process_structure_scope): Update.
11459
11460 2018-03-11  Tom Tromey  <tom@tromey.com>
11461
11462         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11463         for use by std::sort.
11464         (build_type_psymtabs_1): Use std::vector.
11465
11466 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11467
11468         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11469         and LIBMPFR in the printed configuration.
11470
11471 2018-03-08  Tom Tromey  <tom@tromey.com>
11472
11473         * source.c (get_filename_and_charpos): Use scoped_fd.
11474         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11475         (procfs_pidlist): Likewise.
11476         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11477         (iterate_over_mappings): Likewise.
11478
11479 2018-03-08  Tom Tromey  <tom@tromey.com>
11480
11481         * infcall.c (struct call_return_meta_info)
11482         <stack_temporaries_enabled>: Remove.
11483         (get_call_return_value, call_function_by_hand_dummy): Update.
11484         * thread.c (disable_thread_stack_temporaries): Remove.
11485         (enable_thread_stack_temporaries): Remove.
11486         (thread_stack_temporaries_enabled_p): Return bool.
11487         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11488         (get_last_thread_stack_temporary): Update.
11489         * eval.c (evaluate_subexp): Update.
11490         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11491         class, not a function.
11492         (value_ptr, value_vec): Remove typedefs.
11493         (class thread_info) <stack_temporaries_enabled>: Now bool.
11494         <stack_temporaries>: Now a std::vector.
11495         (thread_stack_temporaries_enabled_p)
11496         (value_in_thread_stack_temporaries): Return bool.
11497
11498 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11499
11500         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11501         (getpkt_or_notif_sane_1): Likewise.
11502
11503 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11504
11505         * build-id.c (build_id_to_debug_bfd): Use std::string.
11506
11507 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11508
11509         * build-id.c (find_separate_debug_file_by_buildid): Return
11510         std::string.
11511         * build-id.h (find_separate_debug_file_by_buildid): Return
11512         std::string.
11513         * coffread.c (coff_symfile_read): Adjust to std::string.
11514         * elfread.c (elf_symfile_read): Adjust to std::string.
11515         * symfile.c (separate_debug_file_exists): Change parameter to
11516         std::string.
11517         (find_separate_debug_file): Return std::string.
11518         (find_separate_debug_file_by_debuglink): Return std::string.
11519         * symfile.h (find_separate_debug_file_by_debuglink): Return
11520         std::string.
11521
11522 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11523
11524         * common/xml-utils.c (xml_escape_text): Move code to...
11525         (xml_escape_text_append): ... this new function.
11526         * common/xml-utils.h (xml_escape_text_append): New declaration.
11527         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11528         New function.
11529         (_initialize_xml_utils): register test_xml_escape_text_append as
11530         a selftest.
11531
11532 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11533
11534         * defs.h: Remove MAX_REGISTER_SIZE.
11535         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11536         asserts.
11537         * python/py-unwind.c (pyuw_sniffer): Likewise.
11538
11539 2018-03-07  Tom Tromey  <tom@tromey.com>
11540
11541         * linux-tdep.c (linux_info_proc): Update.
11542         * target.h (struct target_ops) <to_fileio_readlink>: Return
11543         optional<string>.
11544         (target_fileio_readlink): Return optional<string>.
11545         * remote.c (remote_hostio_readlink): Return optional<string>.
11546         * inf-child.c (inf_child_fileio_readlink): Return
11547         optional<string>.
11548         * target.c (target_fileio_readlink): Return optional<string>.
11549
11550 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11551
11552         * regcache.c (cooked_read_test): Add riscv to the list of
11553         architectures that have a save_reggroup.
11554
11555 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11556
11557         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11558         value is not a dynamic class object.
11559
11560 2018-03-06  Tom Tromey  <tom@tromey.com>
11561
11562         * rust-exp.y: Formatting fixes.
11563
11564 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11565
11566         * riscv-tdep.c (riscv_register_name): Remove target description
11567         support.
11568         (riscv_gdbarch_init): Remove target description check.
11569
11570 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11571
11572         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11573         comment.
11574         * riscv-tdep.h: Likewise.
11575
11576 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11577
11578         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11579         (riscv_pseudo_register_write): Delete.
11580         (riscv_gdbarch_init): Remove all use of pseudo registers.
11581
11582 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11583
11584         * record-btrace.c (btrace_print_lines): Replace cleanup
11585         parameter with RAII equivalents.
11586         (btrace_insn_history): Replace cleanup with RAII equivalents.
11587         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11588         make_cleanup_ui_out_tuple_begin_end): Remove.
11589         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11590         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11591         make_cleanup_ui_out_list_begin_end): Remove.
11592
11593 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11594
11595         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11596         parameter types to std::vector.  Use bool.
11597         (record_btrace_wait): Replace VEC(tp_t) with
11598         std::vector<thread_info *>.
11599         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11600
11601 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11602
11603         * record-btrace.c (record_btrace_disable_callback): Remove.
11604         (struct scoped_btrace_disable): New.
11605         (record_btrace_open): Use scoped_btrace_disable.
11606
11607 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11608
11609         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11610         reading values from registers.
11611
11612 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11613
11614         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11615         where appropriate.
11616
11617 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11618
11619         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11620         change parameter type.  Use GDB's print functions, and use
11621         core_addr_to_string where appropriate.
11622         (riscv_push_dummy_call): Use core_addr_to_string where
11623         appropriate, update call to riscv_print_arg_location, and reindent
11624         a few lines.
11625         (riscv_return_value): Update call to riscv_print_arg_location.
11626
11627 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11628             Tim Newsome <tim@sifive.com>
11629             Albert Ou <a0u@eecs.berkeley.edu>
11630             Darius Rad <darius@bluespec.com>
11631
11632         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11633         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11634         (ALLDEPFILES): Add riscv-tdep.c
11635         * configure.tgt: Add riscv support.
11636         * riscv-tdep.c: New file.
11637         * riscv-tdep.h: New file.
11638         * NEWS: Mention new target.
11639         * MAINTAINERS: Add entry for riscv.
11640
11641 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11642
11643         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11644         fields within aggregates.
11645
11646 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11647
11648         * record-btrace.c (btrace_print_lines): Change type of flags to
11649         gdb_disassembly_flags.
11650
11651 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11652
11653         * fbsd-nat.c: Include "inf-ptrace.h".
11654         (USE_SIGTRAP_SIGINFO): Conditionally define.
11655         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11656         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11657         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11658         function.
11659         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11660         Likewise.
11661         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11662         Likewise.
11663         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11664         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11665         "supports_stopped_by_hw_breakpoint" target methods.
11666
11667 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11668
11669         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11670         * fbsd-nat.c (debug_fbsd_nat): New variable.
11671         (show_fbsd_nat_debug): New function.
11672         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11673         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11674
11675 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11676
11677         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11678         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11679         prototype.
11680         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11681         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11682         method.
11683
11684 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11685
11686         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11687         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11688
11689 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11690
11691         * charset.c (struct charset_vector): New.
11692         (charsets): Change type to charset_vector.
11693         (find_charset_names): Adjust.
11694         (add_one): Adjust.
11695         (_initialize_charset): Adjust.
11696
11697 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11698
11699         * progspace.h (struct program_space) <deleted_solibs>: Change
11700         type to std::vector<std::string>.
11701         * progspace.c (clear_program_space_solib_cache): Adjust.
11702         * breakpoint.c (print_solib_event): Adjust.
11703         (check_status_catch_solib): Adjust.
11704         * solib.c (update_solib_list): Adjust.
11705         * ui-out.h (class ui_out) <field_string>: New overload.
11706         * ui-out.c (ui_out::field_string): New overload.
11707
11708 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11709
11710         * progspace.h (struct program_space): Add constructor and
11711         destructor, initialize fields.
11712         (add_program_space): Remove.
11713         * progspace.c (add_program_space): Rename to...
11714         (program_space::program_space): ... this.
11715         (release_program_space): Rename to...
11716         (program_space::~program_space): ... this.
11717         (delete_program_space): Use delete to delete program_space.
11718         (initialize_progspace): Use new to allocate program_space.
11719         * inferior.c (add_inferior_with_spaces): Likewise.
11720         (clone_inferior_command): Likewise.
11721         * infrun.c (follow_fork_inferior): Likewise.
11722         (handle_vfork_child_exec_or_exit): Likewise.
11723
11724 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11725
11726         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11727         (delim_string_to_char_ptr_vec): Return std::vector of
11728         gdb::unique_xmalloc_ptr.
11729         (dirnames_to_char_ptr_vec_append): Take std::vector of
11730         gdb::unique_xmalloc_ptr.
11731         (dirnames_to_char_ptr_vec): Return std::vector of
11732         gdb::unique_xmalloc_ptr.
11733         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11734         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11735         (delim_string_to_char_ptr_vec): Return an std::vector of
11736         gdb::unique_xmalloc_ptr, adjust the code.
11737         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11738         gdb::unique_xmalloc_ptr, adjust the code.
11739         (dirnames_to_char_ptr_vec): Return an std::vector of
11740         gdb::unique_xmalloc_ptr, adjust the code.
11741         * auto-load.c (auto_load_safe_path_vec): Change type to
11742         std::vector of gdb::unique_xmalloc_ptr.
11743         (auto_load_expand_dir_vars): Return an std::vector of
11744         gdb::unique_xmalloc_ptr, adjust the code.
11745         (auto_load_safe_path_vec_update): Adjust.
11746         (filename_is_in_auto_load_safe_path_vec): Adjust.
11747         (auto_load_objfile_script_1): Adjust.
11748         * build-id.c (build_id_to_debug_bfd): Adjust.
11749         * linux-thread-db.c (thread_db_load_search): Adjust.
11750         * source.c (add_path): Adjust.
11751         (openp): Adjust.
11752         * symfile.c (find_separate_debug_file): Adjust.
11753         * utils.c (do_free_char_ptr_vec): Remove.
11754         (make_cleanup_free_char_ptr_vec): Remove.
11755
11756 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11757
11758         PR gdb/22907
11759         * common/pathstuff.c: Conditionally include "<windows.h>".
11760
11761 2018-03-01  Georg Sauthoff  <mail@georg.so>
11762
11763         PR gdb/22888
11764         * gcore.in: Quote variables and switch interpreter to bash.
11765
11766 2018-03-01  Tom Tromey  <tom@tromey.com>
11767
11768         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11769         assertion.  Add assertion for discriminant_index.
11770         (quirk_rust_enum): Use correct base type name in univariant case.
11771
11772 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11773
11774         * record.c (get_call_history_modifiers): Return a
11775         record_print_flags.
11776         (cmd_record_call_history): Adjust.
11777         * record-btrace.c (record_btrace_call_history): Adjust.
11778         (record_btrace_call_history_range): Adjust.
11779         (record_btrace_call_history_from): Adjust.
11780         * target-debug.h (target_debug_print_record_print_flags): New.
11781         * target-delegates.c: Re-generate.
11782         * target.c (target_call_history): Change flags type.
11783         (target_call_history_from): Likewise.
11784         (target_call_history_range): Likewise.
11785         * target.h (struct target_ops) <target_call_history>: Likewise.
11786         (target_call_history_from): Likewise.
11787         (target_call_history_range): Likewise.
11788
11789 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11790             Simon Marchi  <simon.marchi@polymtl.ca>
11791
11792         * common/common-utils.c: Include "sys/stat.h".
11793         (is_regular_file): Move here from "source.c"; change return
11794         type to "bool".
11795         * common/common-utils.h (is_regular_file): New prototype.
11796         * common/pathstuff.c (contains_dir_separator): New function.
11797         * common/pathstuff.h (contains_dir_separator): New prototype.
11798         * source.c: Don't include "sys/stat.h".
11799         (is_regular_file): Move to "common/common-utils.c".
11800
11801 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11802
11803         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11804         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11805         * auto-load.c: Include "common/pathstuff.h".
11806         * common/common-def.h (current_directory): Move here.
11807         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11808         function.
11809         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11810         prototype.
11811         * common/pathstuff.c: New file.
11812         * common/pathstuff.h: New file.
11813         * compile/compile.c: Include "common/pathstuff.h".
11814         * defs.h (current_directory): Move to "common/common-defs.h".
11815         * dwarf2read.c: Include "common/pathstuff.h".
11816         * exec.c: Likewise.
11817         * guile/scm-safe-call.c: Likewise.
11818         * linux-thread-db.c: Likewise.
11819         * main.c: Likewise.
11820         * nto-tdep.c: Likewise.
11821         * objfiles.c: Likewise.
11822         * source.c: Likewise.
11823         * symtab.c: Likewise.
11824         * utils.c: Include "common/pathstuff.h".
11825         (gdb_realpath): Move to "common/pathstuff.c".
11826         (gdb_realpath_keepfile): Likewise.
11827         (gdb_abspath): Likewise.
11828         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11829         (gdb_realpath_keepfile): Likewise.
11830         (gdb_abspath): Likewise.
11831
11832 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11833
11834         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11835         wildcard process pid for super_resume for kernels with a
11836         specific bug.
11837
11838 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11839
11840         * compile/compile.c (get_args): Add additional comments
11841         explaining function.
11842
11843 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11844             Tom Tromey  <tom@tromey.com>
11845
11846         * target.h (memory_write_request_s): Remove typedef.  Don't define
11847         VEC.
11848         (target_write_memory_blocks): Change argument to std::vector.
11849         (struct memory_write_request): Add constructor.
11850         * target-memory.c (compare_block_starting_address): Return bool.
11851         Change argument types.
11852         (claim_memory): Change arguments to use std::vector.
11853         (split_regular_and_flash_blocks, blocks_to_erase)
11854         (compute_garbled_blocks): Likewise.
11855         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11856         (target_write_memory_blocks): Change argument to std::vector.
11857         * symfile.c (struct load_section_data): Add constructor and
11858         destructor.  Use std::vector for "requests".
11859         (struct load_progress_data): Add initializers.
11860         (load_section_callback): Update.  Use "new".
11861         (clear_memory_write_data): Remove.
11862         (generic_load): Update.
11863
11864 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11865
11866         * arch/aarch64.h: Use common/tdesc.h.
11867
11868 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11869
11870         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11871         architecture with a 64-bit ABI.
11872
11873 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11874
11875         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11876         ahead of target description loading.
11877
11878 2018-02-26  Tom Tromey  <tom@tromey.com>
11879
11880         * stack.c (backtrace_command_1): Update.
11881         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11882         of "flags".
11883         * python/py-framefilter.c (py_print_frame)
11884         (gdbpy_apply_frame_filter): Change type of "flags".
11885         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11886         of "flags".
11887         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11888         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11889         * extension.h (enum frame_filter_flag): Rename from
11890         frame_filter_flags.
11891         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11892         (apply_ext_lang_frame_filter): Change type of "flags".
11893         * extension.c (apply_ext_lang_frame_filter): Change type of
11894         "flags".
11895         * extension-priv.h (struct extension_language_ops)
11896         <apply_frame_filter>: Change type of "flags".
11897
11898 2018-02-26  Tom Tromey  <tom@tromey.com>
11899
11900         PR python/16497:
11901         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11902         off-by-one in py_end computation.
11903         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11904         PRINT_MORE_FRAMES.
11905         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11906         constant.
11907
11908 2018-02-26  Tom Tromey  <tom@tromey.com>
11909
11910         * dwarf2read.c (struct variant_field): New.
11911         (struct nextfield) <variant>: New field.
11912         (dwarf2_add_field): Handle DW_TAG_variant_part.
11913         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11914         discriminated union.
11915         (read_structure_type): Handle DW_TAG_variant_part.
11916         (handle_struct_member_die): New function, extracted from
11917         process_structure_scope.  Handle DW_TAG_variant.
11918         (process_structure_scope): Handle discriminated unions.  Call
11919         handle_struct_member_die.
11920
11921 2018-02-26  Tom Tromey  <tom@tromey.com>
11922
11923         * rust-lang.h (rust_last_path_segment): Declare.
11924         * rust-lang.c (rust_last_path_segment): Now public.  Change
11925         contract.
11926         (struct disr_info): Remove.
11927         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11928         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11929         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11930         (rust_enum_p, rust_enum_variant): New function.
11931         (rust_underscore_fields): Remove "offset" parameter.
11932         (rust_print_enum): New function.
11933         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11934         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11935         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11936         enums.
11937         (rust_internal_print_type): New function, from rust_print_type.
11938         Remove enum code.
11939         (rust_print_type): Call rust_internal_print_type.
11940         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11941         Update enum handling.
11942         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11943         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11944         (rust_union_quirks): New functions.
11945         (process_full_comp_unit, process_full_type_unit): Call
11946         rust_union_quirks.
11947         (process_structure_scope): Update rust_unions if necessary.
11948
11949 2018-02-26  Tom Tromey  <tom@tromey.com>
11950
11951         * value.h (value_union_variant): Declare.
11952         * valops.c (value_union_variant): New function.
11953         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11954         (struct discriminant_info): New.
11955         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11956         enumerator.
11957         (struct main_type) <flag_discriminated_union>: New field.
11958
11959 2018-02-26  Tom Tromey  <tom@tromey.com>
11960
11961         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11962         unittests/unpack-selftests.c.
11963         * unittests/unpack-selftests.c: New file.
11964         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11965
11966 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11967
11968         * dwarf2read.c (struct partial_die_info) <read>: New method.
11969         (read_partial_die): Remove the declaration.
11970         (load_partial_dies): Update.
11971         (partial_die_info::partial_die_info):
11972         (read_partial_die): Change it to partial_die_info::read.
11973
11974 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11975
11976         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11977         (fixup_partial_die): Remove declaration.
11978         (scan_partial_symbols): Update.
11979         (partial_die_parent_scope): Likewise.
11980         (partial_die_full_name): Likewise.
11981         (fixup_partial_die): Change it to partial_die_info::fixup.
11982
11983 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11984
11985         * dwarf2read.c (read_partial_die): Update the declaration.
11986         (load_partial_dies): Caller update.
11987         (read_partial_die): Remove one argument abbrev_len.
11988
11989 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11990
11991         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11992         assignment operator.
11993         (load_partial_dies): Use ctor and copy ctor.
11994         (read_partial_die): Update.
11995         (dwarf2_cu::find_partial_die): Use ctor.
11996
11997 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11998
11999         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12000         (find_partial_die_in_comp_unit): Change it to
12001         dwarf2_cu::find_partial_die.
12002         (find_partial_die): Update.
12003
12004 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12005
12006         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12007         is NULL.
12008
12009 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12010
12011         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12012
12013 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12014
12015         * arch/amd64.h: Use common/tdesc.h.
12016         * arch/i386.c: Likewise.
12017         * arch/i386.h: Likewise.
12018         * arch/tic6x.c: Likewise.
12019         * arch/tdesc.h: Move file from here...
12020         * common/tdesc.h: ...to here.
12021         * features/aarch64-core.c: Regenerate.
12022         * features/aarch64-fpu.c: Regenerate.
12023         * features/i386/32bit-avx.c: Regenerate.
12024         * features/i386/32bit-avx512.c: Regenerate.
12025         * features/i386/32bit-core.c: Regenerate.
12026         * features/i386/32bit-linux.c: Regenerate.
12027         * features/i386/32bit-mpx.c: Regenerate.
12028         * features/i386/32bit-pkeys.c: Regenerate.
12029         * features/i386/32bit-sse.c: Regenerate.
12030         * features/i386/64bit-avx.c: Regenerate.
12031         * features/i386/64bit-avx512.c: Regenerate.
12032         * features/i386/64bit-core.c: Regenerate.
12033         * features/i386/64bit-linux.c: Regenerate.
12034         * features/i386/64bit-mpx.c: Regenerate.
12035         * features/i386/64bit-pkeys.c: Regenerate.
12036         * features/i386/64bit-segments.c: Regenerate.
12037         * features/i386/64bit-sse.c: Regenerate.
12038         * features/i386/x32-core.c: Regenerate.
12039         * features/tic6x-c6xp.c: Regenerate.
12040         * features/tic6x-core.c: Regenerate.
12041         * features/tic6x-gp.c: Regenerate.
12042         * target-descriptions.c: Use common/tdesc.h.
12043         * target-descriptions.h: Likewise.
12044
12045 2018-02-24  Tom Tromey  <tom@tromey.com>
12046
12047         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12048         (try_thread_db_load_from_dir, thread_db_load_search): Use
12049         std::string.
12050         (info_auto_load_libthread_db_compare): Return bool.  Change
12051         argument types.
12052         (info_auto_load_libthread_db): Use std::vector, std::string.
12053         Remove cleanups.
12054
12055 2018-02-24  Tom Tromey  <tom@tromey.com>
12056
12057         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12058         std::string.
12059         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12060         std::string*.
12061         * gdbarch.c: Rebuild.
12062         * gdbarch.h: Rebuild.
12063         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12064         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12065         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12066         std::string*.
12067
12068 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12069
12070         * gdbtypes.h (sect_offset): Change type to uint64_t.
12071         (sect_offset_str): New function.
12072         * dwarf2read.c (create_addrmap_from_aranges): Use
12073         sect_offset_str.
12074         (error_check_comp_unit_head): Likewise.
12075         (create_debug_type_hash_table): Likewise.
12076         (read_cutu_die_from_dwo): Likewise.
12077         (init_cutu_and_read_dies): Likewise.
12078         (init_cutu_and_read_dies_no_follow): Likewise.
12079         (process_psymtab_comp_unit_reader): Likewise.
12080         (partial_die_parent_scope): Likewise.
12081         (peek_die_abbrev): Likewise.
12082         (process_queue): Likewise.
12083         (dwarf2_physname): Likewise.
12084         (read_namespace_alias): Likewise.
12085         (read_import_statement): Likewise.
12086         (create_dwo_cu_reader): Likewise.
12087         (create_cus_hash_table): Likewise.
12088         (lookup_dwo_cutu): Likewise.
12089         (inherit_abstract_dies): Likewise.
12090         (read_func_scope): Likewise.
12091         (read_call_site_scope): Likewise.
12092         (dwarf2_add_member_fn): Likewise.
12093         (read_common_block): Likewise.
12094         (read_module_type): Likewise.
12095         (read_typedef): Likewise.
12096         (read_subrange_type): Likewise.
12097         (load_partial_dies): Likewise.
12098         (read_partial_die): Likewise.
12099         (find_partial_die): Likewise.
12100         (read_str_index): Likewise.
12101         (dwarf2_string_attr): Likewise.
12102         (build_error_marker_type): Likewise.
12103         (lookup_die_type): Likewise.
12104         (dump_die_shallow): Likewise.
12105         (follow_die_ref): Likewise.
12106         (dwarf2_fetch_die_loc_sect_off): Likewise.
12107         (dwarf2_fetch_constant_bytes): Likewise.
12108         (follow_die_sig): Likewise.
12109         (get_signatured_type): Likewise.
12110         (get_DW_AT_signature_type): Likewise.
12111         (dwarf2_find_containing_comp_unit): Likewise.
12112         (set_die_type): Likewise.
12113
12114 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12115
12116         * arch/aarch64.c: Include "common-defs.h".
12117         * arch/amd64.c: Likewise.
12118         * arch/i386.c: Likewise.
12119
12120 2018-02-21  Tom Tromey  <tom@tromey.com>
12121
12122         * value.h: (extract_field_op): Update.
12123         * eval.c (extract_field_op): Return a const char *.
12124         * expression.h (parse_expression_for_completion): Update.
12125         * completer.c (complete_expression): Update.
12126         (add_struct_fields): Make fieldname const.
12127         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12128         (mark_completion_tag, parse_exp_in_context_1): Update.
12129         (parse_expression_for_completion): Change "name" to
12130         unique_xmalloc_ptr*.
12131
12132 2018-02-21  Tom Tromey  <tom@tromey.com>
12133
12134         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12135
12136 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12137
12138         * avr-tdep.c (avr_read_pc): Change parameter type to
12139         readable_regcache.
12140         * gdbarch.sh (read_pc): Likewise.
12141         * gdbarch.c: Re-generated.
12142         * gdbarch.h: Re-generated.
12143         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12144         readable_regcache.
12145         * ia64-tdep.c (ia64_read_pc): Likewise.
12146         * mips-tdep.c (mips_read_pc): Likewise.
12147         * spu-tdep.c (spu_read_pc): Likewise.
12148
12149 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12150
12151         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12152         * regcache-dump.c: New file.
12153         * regcache.c: Move register_dump to regcache-dump.c.
12154         (maintenance_print_registers): Likewise.
12155         (maintenance_print_raw_registers): Likewise.
12156         (maintenance_print_cooked_registers): Likewise.
12157         (maintenance_print_register_groups): Likewise.
12158         (maintenance_print_remote_registers): Likewise.
12159         (_initialize_regcache): Likewise.
12160         * regcache.h (register_dump): Moved from regcache.c.
12161
12162 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12163
12164         * regcache.c (regcache::regcache): Update.
12165         (regcache::invalidate): Move it to detached_regcache::invalidate.
12166         (get_thread_arch_aspace_regcache): Update.
12167         (regcache::raw_update): Update.
12168         (regcache::cooked_read): Remove some code.
12169         (regcache::cooked_read_value): Likewise.
12170         (regcache::raw_write): Remove assert on m_readonly_p.
12171         (regcache::raw_supply_integer): Move it to
12172         detached_regcache::raw_supply_integer.
12173         (regcache::raw_supply_zeroed): Likewise.
12174         * regcache.h (detached_regcache) <raw_supply_integer>: New
12175         declaration.
12176         <raw_supply_zeroed, invalidate>: Likewise.
12177         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12178         <invalidate>: Likewise.
12179         <m_readonly_p>: Removed.
12180
12181 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12182
12183         * infcmd.c (get_return_value): Let stop_regs point to
12184         get_current_regcache.
12185         * regcache.c (regcache::regcache): Remove.
12186         (register_dump_reg_buffer): New class.
12187         (regcache_print): Adjust.
12188         * regcache.h (regcache): Remove constructors.
12189
12190 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12191
12192         * regcache.c (class register_dump): New class.
12193         (register_dump_regcache, register_dump_none): New class.
12194         (register_dump_remote, register_dump_groups): New class.
12195         (regcache_print): Update.
12196         * regcache.h (regcache_dump_what): Move it to regcache.c.
12197         (regcache) <dump>: Remove.
12198
12199 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12200
12201         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12202          reg_buffer_rw *.
12203         (jit_unwind_reg_set_impl): Call raw_supply.
12204         (jit_frame_sniffer): Use reg_buffer_rw.
12205         * record-full.c (record_full_core_regbuf): Change its type.
12206         (record_full_core_open_1): Use reg_buffer_rw.
12207         (record_full_close): Likewise.
12208         (record_full_core_fetch_registers): Use regcache->raw_supply.
12209         (record_full_core_store_registers): Likewise.
12210         * regcache.c (regcache::get_register_status): Move it to
12211         reg_buffer.
12212         (regcache_raw_set_cached_value): Remove.
12213         (regcache::raw_set_cached_value): Remove.
12214         (regcache::raw_write): Call raw_supply.
12215         (regcache::raw_supply): Move it to reg_buffer_rw.
12216         * regcache.h (regcache_raw_set_cached_value): Remove.
12217         (reg_buffer_rw): New class.
12218
12219 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12220
12221         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12222         readonly_detached_regcache.
12223         (dummy_frame_prev_register): Use regcache->cooked_read.
12224         * frame.c (frame_save_as_regcache): Change return type.
12225         (frame_pop): Update.
12226         * frame.h (frame_save_as_regcache): Update declaration.
12227         * inferior.h (get_infcall_suspend_state_regcache): Update
12228         declaration.
12229         * infrun.c (infcall_suspend_state) <registers>: use
12230         readonly_detached_regcache.
12231         (save_infcall_suspend_state): Don't use regcache_dup.
12232         (get_infcall_suspend_state_regcache): Change return type.
12233         * linux-fork.c (struct fork_info) <savedregs>: Change to
12234         readonly_detached_regcache.
12235         <pc>: New field.
12236         (fork_save_infrun_state): Don't use regcache_dup.
12237         (info_checkpoints_command): Adjust.
12238         * mi/mi-main.c (register_changed_p): Update declaration.
12239         (mi_cmd_data_list_changed_registers): Use
12240         readonly_detached_regcache.
12241         (register_changed_p): Change parameter type to
12242         readonly_detached_regcache.
12243         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12244         readonly_detached_regcache.
12245         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12246         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12247         New.
12248         (regcache::save): Move it to reg_buffer.
12249         (regcache::restore): Change parameter type.
12250         (regcache_dup): Remove.
12251         * regcache.h (reg_buffer) <save>: New method.
12252         (readonly_detached_regcache): New class.
12253         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12254         readonly_detached_regcache.
12255         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12256
12257 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12258
12259         * frame.c (frame_save_as_regcache): Use regcache method save.
12260         (frame_pop): Use regcache method restore.
12261         * infrun.c (restore_infcall_suspend_state): Likewise.
12262         * linux-fork.c (fork_load_infrun_state): Likewise.
12263         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12264         save.
12265         * regcache.c (regcache_save): Remove.
12266         (regcache::restore): More asserts.
12267         (regcache_cpy): Remove.
12268         * regcache.h (regcache_save): Remove the declaration.
12269         (regcache::restore): Move from private to public.
12270         Remove the friend declaration of regcache_cpy.
12271         (regcache_cpy): Remove declaration.
12272
12273 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12274
12275         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12276         parameter type to 'readable_regcache *'.
12277         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12278         * arm-tdep.c (arm_neon_quad_read): Likewise.
12279         (arm_pseudo_read): Likewise.
12280         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12281         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12282         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12283         * gdbarch.c: Re-generated.
12284         * gdbarch.h: Re-generated.
12285         * gdbarch.sh (pseudo_register_read): Change parameter type to
12286         'readable_regcache *'.
12287         (pseudo_register_read_value): Likewise.
12288         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12289         (h8300_pseudo_register_read): Likewise.
12290         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12291         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12292         (i386_pseudo_register_read_into_value): Likewise.
12293         (i386_pseudo_register_read_value): Likewise.
12294         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12295         declaration.
12296         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12297         * m32c-tdep.c (m32c_raw_read): Likewise.
12298         (m32c_read_flg): Likewise.
12299         (m32c_banked_register): Likewise.
12300         (m32c_banked_read): Likewise.
12301         (m32c_sb_read): Likewise.
12302         (m32c_part_read): Likewise.
12303         (m32c_cat_read): Likewise.
12304         (m32c_r3r2r1r0_read): Likewise.
12305         (m32c_pseudo_register_read): Likewise.
12306         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12307         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12308         (mep_pseudo_cr64_read): Likewise.
12309         (mep_pseudo_register_read): Likewise.
12310         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12311         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12312         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12313         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12314         (regcache::cooked_read): Likewise.
12315         (regcache::cooked_read_value): Likewise.
12316         (regcache_cooked_read_signed):
12317         (regcache::cooked_read): Likewise.
12318         * regcache.h (readable_regcache): New class.
12319         (regcache): Inherit readable_regcache.  Move some methods to
12320         readable_regcache.
12321         * rl78-tdep.c (rl78_pseudo_register_read): Change
12322         parameter type to 'readable_regcache *'.
12323         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12324         (e500_pseudo_register_read): Change parameter type to
12325         'readable_regcache *'.
12326         (dfp_pseudo_register_read): Likewise.
12327         (vsx_pseudo_register_read): Likewise.
12328         (efpr_pseudo_register_read): Likewise.
12329         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12330         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12331         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12332         (sh64_pseudo_register_read): Likewise.
12333         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12334         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12335         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12336         (spu_pseudo_register_read): Likewise.
12337         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12338         (xtensa_pseudo_register_read): Likewise.
12339
12340 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12341
12342         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12343         (regcache::arch): Move it to reg_buffer::arch.
12344         (regcache::register_buffer): Likewise.
12345         (regcache::assert_regnum): Likewise.
12346         (regcache::num_raw_registers): Likewise.
12347         * regcache.h (reg_buffer): New class.
12348         (regcache): Inherit reg_buffer.
12349
12350 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12351
12352         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12353         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12354
12355 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12356
12357         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12358
12359 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12360
12361         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12362         (SFILES): Remove common/*.c files.
12363         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12364         * common/common.host: Add common reference.
12365         * configure.ac: Likewise.
12366         * configure: Regenerate.
12367
12368 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12369
12370         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12371         (block_initialize_namespace): Use new.
12372         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12373         (dwarf2_free_objfile): Use delete.
12374         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12375         (copy_type_recursive): Use new.
12376         * gdb_obstack.h (allocate_on_obstack): New.
12377
12378 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12379
12380         PR gdb/22849
12381         * inferior.c (exit_inferior_1): Reset inf->control.
12382
12383 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12384
12385         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12386         declaration.
12387
12388 2018-02-14  Pedro Alves  <palves@redhat.com>
12389
12390         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12391         frame_cleanup_after_sniffer on exception.
12392
12393 2018-02-14  Tom Tromey  <tom@tromey.com>
12394
12395         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12396         const.
12397         (solib_bfd_open): Make pathname const.
12398         * solib.c (solib_bfd_open): Make pathname const.
12399         * solib-spu.c (spu_bfd_fopen): Make name const.
12400         (spu_bfd_open): Make pathname const.
12401         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12402         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12403
12404 2018-02-14  Tom Tromey  <tom@tromey.com>
12405
12406         * symfile.c (symfile_bfd_open): Update.
12407         * source.h (openp, source_full_path_of, find_and_open_source):
12408         Change argument type to unique_xmalloc_ptr.
12409         * source.c (openp): Take a unique_xmalloc_ptr.
12410         (source_full_path_of, find_and_open_source): Likewise.
12411         (open_source_file, symtab_to_fullname): Update.
12412         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12413         unique_xmalloc_ptr.
12414         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12415         (exec_file_find): Update.
12416         * psymtab.c (psymtab_to_fullname): Update.
12417         * nto-tdep.h (nto_find_and_open_solib): Update.
12418         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12419         unique_xmalloc_ptr.
12420         * exec.c (exec_file_attach): Update.
12421         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12422         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12423
12424 2018-02-14  Tom Tromey  <tom@tromey.com>
12425
12426         * solib.c: Include source.h.
12427         * nto-tdep.c: Include source.h.
12428         * mi/mi-cmd-env.c: Include source.h.
12429         * infcmd.c: Include source.h.
12430         * exec.c: Include source.h.
12431         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12432         (add_path, directory_switch, source_path, init_source_path): Move
12433         declarations...
12434         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12435         (add_path, directory_switch, source_path, init_source_path):
12436         ...here.
12437
12438 2018-02-14  Tom Tromey  <tom@tromey.com>
12439
12440         * solist.h (exec_file_find, solib_find): Return
12441         unique_xmalloc_ptr.
12442         (solib_bfd_fopen): Take a const char *.
12443         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12444         (exec_file_find, solib_find): Likewise.
12445         (solib_bfd_fopen): Do not take ownership of "pathname".
12446         (solib_bfd_open): Use unique_xmalloc_ptr.
12447         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12448         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12449         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12450         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12451
12452 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12453
12454         * ada-lang.c (name_match_type_from_name): Remove reference to
12455         ada_name_for_lookup in function's documentation.
12456         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12457
12458 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12459
12460         * defs.h (enum openp_flags): New enum.
12461         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12462         Move to enum openp_flags.
12463         (openp_flags): New enum flags.
12464         (openp): Change parameter type to openp_flags.
12465         * source.c (openp): Change parameter type to openp_flags.
12466         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12467         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12468
12469 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12470
12471         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12472         per-command.
12473
12474 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12475
12476         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12477         into...
12478         (class dwarf2_queue_guard): ...the destructor of this new class.
12479         (dw2_do_instantiate_symtab): Create instance of the new class
12480         dwarf2_queue_guard, remove cleanup.
12481
12482 2018-02-09  Tom Tromey  <tom@tromey.com>
12483
12484         * source.c (find_source_lines): Don't reference past the end of
12485         the vector.
12486
12487 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12488
12489         * remote.c (remote_btrace_maybe_reopen): Change error message.
12490         * btrace.c (btrace_enable): Likewise.
12491         (parse_xml_btrace): Likewise.
12492         (parse_xml_btrace_conf): Likewise.
12493
12494 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12495
12496         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12497         (linux_enable_pt, linux_enable_bts): Call
12498         diagnose_perf_event_open_fail.
12499
12500 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12501
12502         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12503         Remove parameter and change return type.  Update callers.  Move it.
12504         (linux_enable_bts, linux_enable_pt): Improve error message.
12505         (linux_enable_pt): Remove zero buffer size check.
12506         (linux_enable_btrace): Improve error messages.  Remove NULL return
12507         check.
12508
12509 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12510
12511         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12512         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12513         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12514         (linux_supports_pt, linux_supports_btrace): Remove.
12515         (linux_enable_bts): Call cpu_supports_bts.
12516         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12517         * remote.c (remote_supports_btrace): Remove.
12518         (init_remote_ops): Remove remote_supports_btrace.
12519         * target-delegates.c: Regenerated.
12520         * target.c (target_supports_btrace): Remove.
12521         * target.h (target_ops) <to_supports_btrace>: Remove
12522         (target_supports_btrace): Remove.
12523         * x86-linux-nat.c (x86_linux_create_target): Remove
12524         linux_supports_btrace.
12525
12526 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12527
12528         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12529         btrace failed.
12530         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12531         exception and use message in own exception.
12532
12533 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12534
12535         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12536         (perf_event_pt_event_type): Use gdb_file_up.
12537         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12538         scoped_fd, and scoped_mmap.
12539
12540 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12541
12542         * common/scoped_mmap.h: New.
12543         * unittests/scoped_mmap-selftest.c: New.
12544         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12545         unittests/scoped_mmap-selftest.c.
12546
12547 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12548
12549         * common/scoped_fd.h: New.
12550         * unittests/scoped_fd-selftest.c: New.
12551         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12552         unittests/scoped_fd-selftest.c.
12553
12554 2018-02-09  Tom Tromey  <tom@tromey.com>
12555
12556         * auto-load.c (auto_load_section_scripts): Use
12557         gdb::unique_xmalloc_ptr.
12558
12559 2018-02-09  Tom Tromey  <tom@tromey.com>
12560
12561         * auto-load.c (execute_script_contents): Use std::string.
12562
12563 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12564
12565         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12566         Python function, rather than a new command.
12567
12568 2018-02-08  Tom Tromey  <tom@tromey.com>
12569
12570         * solib.c (solib_find_1): Use std::string.
12571         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12572
12573 2018-02-08  Tom Tromey  <tom@tromey.com>
12574
12575         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12576
12577 2018-02-08  Tom Tromey  <tom@tromey.com>
12578
12579         * source.c (find_source_lines): Use gdb::def_vector.
12580
12581 2018-02-08  Tom Tromey  <tom@tromey.com>
12582
12583         * macrocmd.c (struct temporary_macro_definition): New.
12584         (macro_define_command): Use temporary_macro_definition.  Remove
12585         cleanups.
12586         (free_macro_definition_ptr): Remove.
12587
12588 2018-02-08  Tom Tromey  <tom@tromey.com>
12589
12590         * macroexp.c (maybe_expand): Use std::string.
12591
12592 2018-02-08  Tom Tromey  <tom@tromey.com>
12593
12594         * macroexp.c (struct macro_buffer): Add initializers for some
12595         members.
12596         (init_buffer, init_shared_buffer, free_buffer)
12597         (free_buffer_return_text): Remove.
12598         (macro_buffer): New constructors.
12599         (~macro_buffer): New destructor.
12600         (macro_buffer::set_shared): New method.
12601         (macro_buffer::resize_buffer, macro_buffer::appendc)
12602         (macro_buffer::appendmem): Now methods, not free functions.
12603         (set_token, append_tokens_without_splicing, stringify)
12604         (macro_stringify): Update.
12605         (gather_arguments): Change return type.  Remove argc_p argument,
12606         add args_ptr argument.  Use std::vector.
12607         (substitute_args): Remove argc argument.  Accept std::vector.
12608         (expand): Update.  Use std::vector.
12609         (scan, macro_expand, macro_expand_next): Update.
12610
12611 2018-02-08  Tom Tromey  <tom@tromey.com>
12612
12613         * symtab.c (default_collect_symbol_completion_matches_break_on):
12614         Use unique_xmalloc_ptr.
12615         * macroscope.h: (sal_macro_scope, user_macro_scope)
12616         (default_macro_scope): Return unique_xmalloc_ptr.
12617         * macroscope.c (sal_macro_scope, user_macro_scope)
12618         (default_macro_scope): Return unique_xmalloc_ptr.
12619         * macroexp.h (macro_expand, macro_expand_once): Return
12620         unique_xmalloc_ptr.
12621         * macroexp.c (macro_expand, macro_expand_once): Return
12622         unique_xmalloc_ptr.
12623         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12624         (info_macro_command, info_macros_command): Use
12625         unique_xmalloc_ptr.
12626         * compile/compile-c-support.c (write_macro_definitions): Use
12627         unique_xmalloc_ptr.
12628         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12629
12630 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12631
12632         * value.c (value_static_field): Assign field type instead of
12633         containing type when returning an optimized out value.
12634
12635 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12636
12637         * ft32-tdep.c (ft32_read_pc): Remove.
12638         (ft32_write_pc): Remove.
12639         (ft32_gdbarch_init): Update.
12640         * m32r-tdep.c (m32r_read_pc): Remove.
12641         (m32r_gdbarch_init): Update.
12642         * mep-tdep.c (mep_read_pc): Remove.
12643         (mep_gdbarch_init): Update.
12644         * microblaze-tdep.c (microblaze_write_pc): Remove.
12645         (microblaze_gdbarch_init): Update.
12646         * mn10300-tdep.c (mn10300_read_pc): Remove.
12647         (mn10300_write_pc): Remove.
12648         (mn10300_gdbarch_init): Update.
12649         * moxie-tdep.c (moxie_read_pc): Remove.
12650         (moxie_write_pc): Remove.
12651         (moxie_gdbarch_init): Update.
12652
12653 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12654
12655         * expprint.c (print_subexp_standard): Handle
12656         OP_F77_UNDETERMINED_ARGLIST.
12657         (dump_subexp_body_standard): Likewise.
12658
12659 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12660
12661         * target-descriptions.c (tdesc_element_visitor) Add empty
12662         implementations.
12663         (tdesc_type): Move make_gdb_type from here.
12664         (tdesc_type_builtin): Likewise.
12665         (tdesc_type_vector): Likewise.
12666         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12667         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12668         (make_gdb_type_union): Likewise.
12669         (make_gdb_type_flags): Likewise.
12670         (make_gdb_type_enum): Likewise.
12671         (make_gdb_type): New function.
12672         (tdesc_register_type): Use static make_gdb_type.
12673
12674 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12675
12676         * infcmd.c (default_print_one_register_info): Align natural-format
12677         column values consistently one under another.
12678         (pad_to_column): New function.
12679
12680 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12681
12682         * dwarf2read.c (dwarf2_physname): Move commment.
12683
12684 2018-02-01  Leszek Swirski  <leszeks@google.com>
12685
12686         * varobj.c (varobj_formatted_print_options): Allow recursive
12687         pretty printing if pretty printing is enabled.
12688
12689 2018-02-01  Leszek Swirski  <leszeks@google.com>
12690
12691         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12692         names after a structop as a filename.
12693
12694 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12695
12696         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12697         (arm_record_coproc_data_proc): Likewise.
12698
12699 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12700
12701         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12702
12703 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12704
12705         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12706         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12707
12708 2018-01-31  Pedro Alves  <palves@redhat.com>
12709
12710         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12711         * inflow.c (child_terminal_save_inferior): Wrap reference to
12712         tcgetpgrp in HAVE_TERMIOS_H.
12713         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12714         _WIN32.
12715         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12716         always iterate over all inferiors.
12717         (gdbsim_cntrl_c): Adjust.
12718         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12719
12720 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12721
12722         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12723         index type is objfile-owned if the element type is as well.
12724
12725 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12726
12727         GDB 8.1 released.
12728
12729 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12730
12731         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12732         "features/s390x-linux64.c".
12733         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12734         s390_linux32 and s390x_linux64.
12735         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12736         default tdesc.
12737         * s390-tdep.c: Include "features/s390-linux32.c" and
12738         "features/s390x-linux64.c".
12739         (s390_tdesc_valid): Add check for tdesc_has_registers.
12740         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12741         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12742         tdesc_s390x_linux64.
12743         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12744         tdesc_s390x_linux64 to...
12745         * s390-tdep.h: ...here.
12746
12747 2018-01-30  Pedro Alves  <palves@redhat.com>
12748
12749         PR gdb/13211
12750         * config.in, configure: Regenerate.
12751         * configure.ac: Check for getpgid.
12752         * go32-nat.c (go32_pass_ctrlc): New.
12753         (go32_target): Install it.
12754         * inf-child.c (inf_child_target): Install
12755         child_terminal_save_inferior, child_pass_ctrlc and
12756         child_interrupt.
12757         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12758         (inf_ptrace_target): No longer install it.
12759         * infcmd.c (interrupt_target_1): Adjust.
12760         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12761         (child_interrupt): Declare.
12762         (inferior::terminal_state): New.
12763         * inflow.c (struct terminal_info): Update comments.
12764         (inferior_process_group): Delete.
12765         (terminal_is_ours): Delete.
12766         (gdb_tty_state): New.
12767         (child_terminal_init): Adjust.
12768         (is_gdb_terminal, sharing_input_terminal_1)
12769         (sharing_input_terminal): New functions.
12770         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12771         Set the process's actual process group in the foreground if
12772         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12773         mark terminal as the inferior's if not sharing GDB's terminal.
12774         Don't check attach_flag.
12775         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12776         pass down a target_terminal_state.
12777         (child_terminal_save_inferior): New, factored out from ...
12778         (child_terminal_ours_1): ... this.  Handle
12779         target_terminal_state::is_ours_for_output.
12780         (child_interrupt, child_pass_ctrlc): New.
12781         (inflow_inferior_exit): Clear the inferior's terminal_state.
12782         (copy_terminal_info): Copy the inferior's terminal state.
12783         (_initialize_inflow): Remove reference to terminal_is_ours.
12784         * inflow.h (inferior_process_group): Delete.
12785         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12786         * procfs.c (procfs_target): Don't install procfs_interrupt.
12787         (procfs_interrupt): Delete.
12788         * remote.c (remote_serial_quit_handler): Adjust.
12789         (remote_interrupt): Remove ptid parameter.  Adjust.
12790         * target-delegates.c: Regenerate.
12791         * target.c: Include "terminal.h".
12792         (target_terminal::terminal_state): Rename to ...
12793         (target_terminal::m_terminal_state): ... this.
12794         (target_terminal::init): Adjust.
12795         (target_terminal::inferior): Adjust to per-inferior
12796         terminal_state.
12797         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12798         (target_terminal::ours, target_terminal::ours_for_output): Use
12799         target_terminal_is_ours_kind.
12800         (target_interrupt): Remove ptid parameter.  Adjust.
12801         (default_target_pass_ctrlc): Adjust.
12802         * target.h (target_ops::to_terminal_save_inferior): New field.
12803         (target_ops::to_interrupt): Remove ptid_t parameter.
12804         (target_interrupt): Remove ptid_t parameter.  Update comment.
12805         (target_pass_ctrlc): Update comment.
12806         * target/target.h (target_terminal_state): New scoped enum,
12807         factored out of ...
12808         (target_terminal::terminal_state): ... here.
12809         (target_terminal::inferior): Update comments.
12810         (target_terminal::restore_inferior): New.
12811         (target_terminal::is_inferior, target_terminal::is_ours)
12812         (target_terminal::is_ours_for_output): Adjust.
12813         (target_terminal::scoped_restore_terminal_state): Adjust to
12814         rename, and call restore_inferior() instead of inferior().
12815         (target_terminal::scoped_restore_terminal_state::m_state): Change
12816         type.
12817         (target_terminal::terminal_state): Rename to ...
12818         (target_terminal::m_terminal_state): ... this and change type.
12819
12820 2018-01-30  Pedro Alves  <palves@redhat.com>
12821
12822         * linux-nat.c (wait_for_signal): New function.
12823         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12824         directly.
12825         (async_terminal_is_ours)
12826         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12827         (linux_nat_add_target): Don't override
12828         to_terminal_inferior/to_terminal_ours.
12829
12830 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12831
12832         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12833
12834 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12835
12836         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12837         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12838         dwarf2_per_objfile_free here.
12839         (dwarf2_per_objfile_free): Remove.
12840         (_initialize_dwarf2_read): Don't register
12841         dwarf2_per_objfile_free as a registry cleanup.
12842
12843 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12844
12845         Avoid compilation errors in MinGW native builds
12846
12847         The error is triggered by including python-internal.h, and the
12848         error message is:
12849
12850              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12851                       from build-gnulib/import/math.h:27,
12852                       from d:/usr/Python26/include/pyport.h:235,
12853                       from d:/usr/Python26/include/Python.h:58,
12854                       from python/python-internal.h:94,
12855                       from python/py-arch.c:24:
12856              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12857         using ::hypot;
12858                 ^~~~~
12859
12860         This happens because Python headers define 'hypot' to expand t
12861         '_hypot' in the Windows builds.
12862         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12863         'hypoth'.  This avoids a compilation error.
12864
12865 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12866
12867         * MAINTAINERS (Write After Approval): Fix ordering.
12868
12869 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12870
12871         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12872
12873 2018-01-26  Alan Modra  <amodra@gmail.com>
12874
12875         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12876         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12877         Remove nop.  Make const.  Comment.
12878         (powerpc32_plt_stub_so_2): New.
12879         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12880         Correct count.  Update uses.
12881         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12882         Move common code reading PLT entry word.  Correct
12883         powerpc32_plt_stub PLT address calculation.
12884         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12885         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12886         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12887         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12888         (ppc64_standard_linkage8): Likewise.
12889         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12890         Correct insns description.
12891         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12892
12893 2018-01-24  Pedro Alves  <palves@redhat.com>
12894
12895         GCC PR libstdc++/83906
12896         * gdbtypes.c (operator==(const dynamic_prop &,
12897         const dynamic_prop &)): New.
12898         (operator==(const range_bounds &, const range_bounds &)): New.
12899         (check_types_equal): Use them instead of memcmp.
12900         * gdbtypes.h (operator==(const dynamic_prop &,
12901         const dynamic_prop &)): Declare.
12902         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12903         (operator==(const range_bounds &, const range_bounds &)): Declare.
12904         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12905
12906 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12907
12908         * s390-linux-tdep.c (s390_record_address_mask)
12909         (s390_record_calc_disp_common, s390_record_calc_disp)
12910         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12911         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12912         (s390_process_record): Move to s390-tdep.c.
12913         (s390_linux_init_abi_any): Adjust.
12914         * s390-tdep.c (s390_record_address_mask)
12915         (s390_record_calc_disp_common, s390_record_calc_disp)
12916         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12917         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12918         (s390_process_record): Moved from s390-linux-tdep.c
12919         (s390_gdbarch_init): Adjust.
12920
12921 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12922
12923         * s390-linux-nat.c (s390-tdep.h): New include.
12924         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12925         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12926         (ALLDEPFILES): Add s390-tdep.c.
12927         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12928         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12929         * s390-tdep.h: ...this.  New file.
12930         * s390-linux-tdep.c (s390-tdep.h): New include.
12931         (_initialize_s390_tdep): Rename to...
12932         (_initialize_s390_linux_tdep): ...this and adjust.
12933         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12934         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12935         s390-tdep.h.
12936         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12937         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12938         (s390_is_partial_instruction, s390_software_single_step)
12939         (is_non_branch_ril, s390_displaced_step_copy_insn)
12940         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12941         (s390_prologue_data, s390_addr, s390_store, s390_load)
12942         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12943         (s390_register_call_saved, s390_guess_tracepoint_registers)
12944         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12945         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12946         (s390_pseudo_register_name, s390_pseudo_register_type)
12947         (s390_pseudo_register_read, s390_pseudo_register_write)
12948         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12949         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12950         (s390_addr_bits_remove, s390_address_class_type_flags)
12951         (s390_address_class_type_flags_to_name)
12952         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12953         (s390_function_arg_float, s390_function_arg_vector)
12954         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12955         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12956         (s390_frame_align, s390_register_return_value, s390_return_value)
12957         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12958         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12959         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12960         (s390_trad_frame_prev_register, s390_unwind_cache)
12961         (s390_prologue_frame_unwind_cache)
12962         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12963         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12964         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12965         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12966         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12967         (s390_frame_base_address, s390_local_base_address)
12968         (s390_frame_base, s390_gcc_target_options)
12969         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12970         (s390_validate_reg_range, s390_tdesc_valid)
12971         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12972         * s390-tdep.c: ...this.  New file.
12973
12974 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12975
12976         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12977         (s390_process_record, s390_gdbarch_tdep_alloc)
12978         (s390_linux_init_abi_any): Use/set new hook.
12979
12980 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12981
12982         * s390-linux-tdep.c (osabi.h): New include.
12983         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12984         (s390_linux_init_abi_any): New functions.
12985         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12986
12987 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12988
12989         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12990         tdesc_has_registers check
12991
12992 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12993
12994         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12995         (s390_validate_reg_range): New macro.
12996         (s390_gdbarch_init): Adjust.
12997
12998 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12999
13000         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13001         (s390_gdbarch_tdep_alloc): Adjust.
13002         (s390_gdbarch_init): Adjust.
13003
13004 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13005
13006         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13007         <have_tdb>: Change type to bool.
13008         (s390_gdbarch_tdep_alloc): Adjust.
13009         (s390_gdbarch_init): Adjust.
13010
13011 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13012
13013         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13014         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13015         (s390_gdbarch_tdep_alloc): New function.
13016         (s390_gdbarch_init): Allocate tdep at start and use its fields
13017         instead of separate variables.
13018
13019 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13020
13021         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13022         when looking for cached gdbarch and add comment for remaining.
13023
13024 2018-01-22  Pedro Alves  <palves@redhat.com>
13025             Sergio Durigan Junior  <sergiodj@redhat.com>
13026
13027         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13028         case.
13029
13030 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13031
13032         * MAINTAINERS: Update my company e-mail address.
13033
13034 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13035
13036         * regcache.c (cooked_write_test): New function.
13037         (_initialize_regcache): Register the test.
13038
13039 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13040
13041         * ia64-tdep.c (ia64_pseudo_register_read): Call
13042         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13043         * m32c-tdep.c (m32c_cat_read): Likewise.
13044         (m32c_r3r2r1r0_read): Likewise.
13045         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13046         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13047
13048 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13049
13050         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13051         method raw_read instead of regcache_raw_read.
13052         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13053         * arm-tdep.c (arm_neon_quad_read): Likewise.
13054         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13055         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13056         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13057         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13058         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13059         (i386_pseudo_register_read_into_value): Likewise.
13060         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13061         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13062         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13063         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13064         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13065         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13066         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13067         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13068         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13069
13070 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13071
13072         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13073         * configure.tgt: Remove target mt.
13074         * mt-tdep.c: Remove.
13075         * regcache.c (cooked_read_test): Remove the check for mt.
13076
13077 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13078
13079         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13080         instead of gdbarch_pseudo_register_read_value.
13081
13082 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13083
13084         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13085         language is Ada.
13086
13087 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13088
13089         * linespec.c (create_sals_line_offset): Remove code that preserved
13090         the symtab_and_line's line number.
13091
13092 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13093
13094         * varobj.c (varobj_create): Don't set valid_block when creating a
13095         floating varobj.
13096
13097 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13098
13099         * varobj.c (varobj_create): Remove out of date comment.
13100
13101 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13102
13103         PR mi/20395
13104         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13105         updating innermost block.
13106         * parse.c (innermost_block_tracker::update): Take extra type
13107         parameter, and check types match before updating innermost block.
13108         (write_dollar_variable): Update innermost block for registers.
13109         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13110         (innermost_block_tracker::innermost_block_tracker): Initialise
13111         m_types member.
13112         (innermost_block_tracker::reset): Take type parameter.
13113         (innermost_block_tracker::update): Take type parameter, and pass
13114         type through as needed.
13115         (innermost_block_tracker::m_types): New member.
13116         * varobj.c (varobj_create): Pass type when reseting innermost
13117         block.
13118
13119 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13120
13121         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13122         * ada-lang.c (resolve_subexp): Likewise.
13123         * breakpoint.c (set_breakpoint_condition) Likewise.
13124         (watch_command_1) Likewise.
13125         * c-exp.y (variable): Likewise.
13126         * d-exp.y (PrimaryExpression): Likewise.
13127         * f-exp.y (variable): Likewise.
13128         * go-exp.y (variable): Likewise.
13129         * m2-exp.y (variable): Likewise.
13130         * objfiles.c (objfile::~objfile): Likewise.
13131         * p-exp.y (variable): Likewise.
13132         * parse.c (innermost_block): Change type.
13133         * parser-defs.h (class innermost_block_tracker): New.
13134         (innermost_block): Change to innermost_block_tracker.
13135         * printcmd.c (display_command): Switch to innermost_block API.
13136         (do_one_display): Likewise.
13137         * rust-exp.y (do_one_display): Likewise.
13138         * symfile.c (clear_symtab_users): Likewise.
13139         * varobj.c (varobj_create): Switch to innermost_block API, replace
13140         use of innermost_block with block stored on varobj object.
13141
13142 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13143
13144         * expression.h (innermost_block): Remove declaration.
13145         * varobj.c: Add 'parser-defs.h' include.
13146
13147 2018-01-19  Tom Tromey  <tom@tromey.com>
13148
13149         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13150         symbols in the static and global blocks.
13151
13152 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13153
13154         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13155         gdb_ptrace.h, and move including gdb_wait.h ...
13156         * nat/linux-ptrace.h: ... to here.
13157
13158 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13159
13160         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13161         inf_ptrace_detach_success.
13162         (inf_ptrace_detach_success): Add inferior parameter, use it
13163         instead of inferior_ptid, pass it to detach_inferior.
13164         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13165         parameter.
13166         * inferior.c (detach_inferior): Add overload that takes an
13167         inferior object.
13168         * inferior.h (detach_inferior): Likewise.
13169         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13170         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13171         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13172
13173 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13174
13175         * target.h (struct target_ops) <to_detach>: Add inferior
13176         parameter.
13177         (target_detach): Likewise.
13178         * target.c (dispose_inferior): Pass inferior down.
13179         (target_detach): Pass inferior down.  Assert that it is equal to
13180         the current inferior.
13181         * aix-thread.c (aix_thread_detach): Pass inferior down.
13182         * corefile.c (core_file_command): Pass current_inferior() down.
13183         * corelow.c (core_detach): Add inferior parameter.
13184         * darwin-nat.c (darwin_detach): Likewise.
13185         * gnu-nat.c (gnu_detach): Likewise.
13186         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13187         * infcmd.c (detach_command): Pass current_inferior() down to
13188         target_detach.
13189         * infrun.c (follow_fork_inferior): Pass parent_inf to
13190         target_detach.
13191         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13192         target_detach.
13193         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13194         * linux-thread-db.c (thread_db_detach): Likewise.
13195         * nto-procfs.c (procfs_detach): Likewise.
13196         * procfs.c (procfs_detach): Likewise.
13197         * record.c (record_detach): Likewise.
13198         * record.h (struct inferior): Forward-declare.
13199         (record_detach): Add inferior parameter.
13200         * remote-sim.c (gdbsim_detach): Likewise.
13201         * remote.c (remote_detach_1): Likewise.
13202         (remote_detach): Likewise.
13203         (extended_remote_detach): Likewise.
13204         * sol-thread.c (sol_thread_detach): Likewise.
13205         * target-debug.h (target_debug_print_inferior_p): New macro.
13206         * target-delegates.c: Re-generate.
13207         * top.c (kill_or_detach): Pass inferior down to target_detach.
13208         * windows-nat.c (windows_detach): Add inferior parameter.
13209
13210 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13211
13212         * target.h (struct target_ops) <to_detach>: Remove args
13213         parameter.
13214         (target_detach): Likewise.
13215         * target.c (dispose_inferior): Adjust.
13216         (target_detach): Remove args parameter, adjust.
13217         * aix-thread.c (aix_thread_detach): Adjust.
13218         * corefile.c (core_file_command): Adjust.
13219         * corelow.c (core_detach): Adjust.
13220         * darwin-nat.c (darwin_detach): Adjust.
13221         * gnu-nat.c (gnu_detach): Adjust.
13222         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13223         * infcmd.c (detach_command): Adjust
13224         * infrun.c (follow_fork_inferior): Adjust.
13225         (handle_vfork_child_exec_or_exit): Adjust.
13226         * linux-fork.c (linux_fork_detach): Remove args parameter.
13227         * linux-fork.h (linux_fork_detach): Likewise.
13228         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13229         * linux-thread-db.c (thread_db_detach): Likewise.
13230         * nto-procfs.c (procfs_detach): Likewise.
13231         * procfs.c (procfs_detach): Likewise.
13232         (do_detach): Remove signo parameter.
13233         * record.c (record_detach): Remove args parameter.
13234         * record.h (record_detach): Likewise.
13235         * remote-sim.c (gdbsim_detach): Likewise.
13236         * remote.c (remote_detach_1): Likewise.
13237         (remote_detach): Likewise.
13238         (extended_remote_detach): Likewise.
13239         * sol-thread.c (sol_thread_detach): Likewise.
13240         * target-delegates.c: Re-generate.
13241         * top.c (struct qt_args) <args>: Remove field.
13242         (kill_or_detach): Don't pass args.
13243         (quit_force): Don't set args.
13244         * windows-nat.c (windows_detach): Remove args parameter.
13245
13246 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13247
13248         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13249         (arm_linux_init_abi): Install it.
13250
13251 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13252
13253         * osabi.c (gdb_osabi_names): Extend the regexp for
13254         arm-linux-gnueabihf.
13255
13256 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13257
13258         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13259         m_abbrevs.
13260         (abbrev_table::add_abbrev): Update.
13261         (abbrev_table::lookup_abbrev): Update.
13262
13263 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13264
13265         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13266
13267 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13268
13269         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13270         to "std::string".
13271
13272 2018-01-17  Tom Tromey  <tom@tromey.com>
13273
13274         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13275
13276 2018-01-17  Tom Tromey  <tom@tromey.com>
13277
13278         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13279         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13280         (create_array_type_with_stride): Update.
13281         * dwarf2read.c (set_die_type): Update.
13282
13283 2018-01-17  Tom Tromey  <tom@tromey.com>
13284
13285         * dwarf2read.c (delayed_method_info): Remove typedef.
13286         (dwarf2_cu::method_info): Now a std::vector.
13287         (add_to_method_list): Update.
13288         (free_delayed_list): Remove.
13289         (compute_delayed_physnames): Update.
13290         (process_full_comp_unit, process_full_type_unit): Clear the method
13291         list.  Remove cleanups.
13292         (psymtab_include_file_name): Add name_holder parameter.  Use
13293         unique_xmalloc_ptr.
13294         (dwarf_decode_lines): Update.
13295
13296 2018-01-17  Tom Tromey  <tom@tromey.com>
13297             Simon Marchi  <simon.marchi@ericsson.com>
13298
13299         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13300         (dwarf2_per_objfile::free_cached_comp_units)
13301         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13302         (init_cutu_and_read_dies_no_follow): Update.
13303         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13304         (dwarf2_cu::~dwarf2_cu): New.
13305         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13306         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13307
13308 2018-01-17  Tom Tromey  <tom@tromey.com>
13309             Simon Marchi  <simon.marchi@ericsson.com>
13310
13311         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13312         (struct die_reader_specs) <abbrev_table>: New member.
13313         (struct abbrev_table): Add constructor.
13314         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13315         <abbrev_obstack>: Now an auto_obstack.
13316         (abbrev_table_up): New typedef.
13317         (init_cu_die_reader): Add abbrev_table parameter.
13318         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13319         Add result_dwo_abbrev_table.
13320         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13321         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13322         Update.
13323         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13324         parameter.
13325         (skip_children): Update.
13326         (abbrev_table::alloc_abbrev): Rename from
13327         abbrev_table_alloc_abbrev.
13328         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13329         (abbrev_table::lookup_abbrev): Rename from
13330         abbrev_table_lookup_abbrev.
13331         (abbrev_table_read_table): Return abbrev_table_up.
13332         (abbrev_table_free, abbrev_table_free_cleanup)
13333         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13334         (load_partial_dies): Update.
13335
13336 2018-01-17  Tom Tromey  <tom@tromey.com>
13337
13338         * dwarf2read.c (dwarf2_compute_name): Update comment.
13339         (read_func_scope, read_variable): Update.
13340         (new_symbol): Remove.
13341         (new_symbol_full): Rename to new_symbol.
13342
13343 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13344
13345         PR gdb/16577
13346         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13347         a warning instead of throwing an error, set section size to 0 and return
13348         NULL.
13349         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13350
13351 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13352
13353         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13354         std::string.
13355         (linux_ptrace_attach_fail_reason_string): Likewise.
13356         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13357         Likewise.
13358         (linux_ptrace_attach_fail_reason_string): Likewise.
13359         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13360
13361 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13362
13363         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13364
13365 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13366
13367         PR gdb/21559
13368         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13369         checking for fs_base/gs_base fields in struct user_regs_struct.
13370         * configure: Regenerate.
13371
13372 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13373
13374         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13375         function.
13376         (aarch64_linux_init_abi): Install it to gdbarch hook
13377         gcc_target_options.
13378
13379 2018-01-15  Pedro Alves  <palves@redhat.com>
13380
13381         * common/signals-state-save-restore.c
13382         (save_original_signals_state): Fix typos.
13383
13384 2017-01-12  Tom Tromey  <tom@tromey.com>
13385             Sergio Durigan Junior  <sergiodj@redhat.com>
13386
13387         * Makefile.in (install-only): Install gdb-add-index.
13388
13389 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13390
13391         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13392
13393 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13394
13395         * infrun.c (keep_going_pass_signal): Clear step-over info when
13396         insert_breakpoints fails.
13397
13398 2018-01-11  Pedro Alves  <palves@redhat.com>
13399
13400         PR gdb/22583
13401         * infrun.c (resume): Rename to ...
13402         (resume_1): ... this.
13403         (resume): Reimplement as wrapper around resume_1.
13404
13405 2018-01-11  Pedro Alves  <palves@redhat.com>
13406
13407         PR remote/22597
13408         * remote.c (remote_parse_stop_reply): Default to the last-set
13409         general thread instead of to 'magic_null_ptid'.
13410
13411 2018-01-10  Pedro Alves  <palves@redhat.com>
13412
13413         * language.h (language_get_symbol_name_matcher): Rename ...
13414         (get_symbol_name_matcher): ... this.
13415         * language.c (language_get_symbol_name_matcher): Ditto.
13416         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13417         callers adjusted.
13418
13419 2018-01-10  Pedro Alves  <palves@redhat.com>
13420
13421         PR gdb/22670
13422         * dwarf2read.c
13423         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13424         Adjust to use language_get_symbol_name_matcher instead of
13425         language_defn::la_get_symbol_name_matcher.
13426         * language.c (language_get_symbol_name_matcher): If in Ada mode
13427         and the lookup name is a verbatim match, return Ada's matcher.
13428         * language.h (language_get_symbol_name_matcher): Adjust comment.
13429         (ada_lookup_name_info::verbatim_p):: New method.
13430
13431 2018-01-10  Pedro Alves  <palves@redhat.com>
13432
13433         PR gdb/22670
13434         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13435         minsym's language is language_auto or language_cplus, pass down
13436         language_ada instead.
13437         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13438
13439 2018-01-10  Pedro Alves  <palves@redhat.com>
13440
13441         PR gdb/22670
13442         * minsyms.c (linkage_name_str): New function.
13443         (iterate_over_minimal_symbols): Use it.
13444
13445 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13446
13447         * NEWS: Document that 'info proc' now works on FreeBSD.
13448
13449 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13450
13451         * configure.ac: Check for kinfo_getfile in libutil.
13452         * configure: Regenerate.
13453         * config.in: Regenerate.
13454         * fbsd-nat.c: Include "fbsd-tdep.h".
13455         (fbsd_fetch_cmdline): New.
13456         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13457         rather than calling error.
13458         (fbsd_info_proc): New.
13459         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13460         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13461         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13462
13463 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13464
13465         * fbsd-nat.c (struct free_deleter): Remove.
13466         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13467
13468 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13469
13470         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13471         NULL for an empty pathname.
13472
13473 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13474
13475         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13476         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13477         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13478         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13479         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13480         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13481         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13482         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13483         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13484         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13485         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13486         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13487         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13488         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13489         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13490
13491 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13492
13493         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13494         (gnu_xfer_auxv): New function.
13495         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13496         TARGET_OBJECT_AUXV.
13497
13498 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13499             Simon Marchi  <simon.marchi@ericsson.com>
13500
13501         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13502         common/selftest.c.
13503         (COMMON_OBS): Remove selftest.o.
13504         * configure.ac: Append selftest-arch.c and common/selftest.c to
13505         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13506         * configure: Re-generated.
13507         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13508         GDB_SELF_TEST.
13509         (maintenance_info_selftests): Likewise.
13510
13511 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13512
13513         * ada-valprint.c (val_print_packed_array_elements): Use
13514         proper number of elements when printing an array indexed
13515         by an enumeration type.
13516
13517 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13518
13519         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13520         (dw2_get_file_names_reader): Adjust.
13521         (lookup_dwo_signatured_type): Adjust.
13522         (lookup_dwp_signatured_type): Adjust.
13523         (lookup_signatured_type): Adjust.
13524         (create_type_unit_group): Adjust.
13525         (get_type_unit_group): Adjust.
13526         (process_psymtab_comp_unit_reader): Adjust.
13527         (build_type_psymtabs_reader): Adjust.
13528         (scan_partial_symbols): Adjust.
13529         (add_partial_symbol): Adjust.
13530         (add_partial_subprogram): Adjust.
13531         (peek_die_abbrev): Adjust.
13532         (fixup_go_packaging): Adjust.
13533         (process_imported_unit_die): Adjust.
13534         (dwarf2_compute_name): Adjust.
13535         (dwarf2_physname): Adjust.
13536         (read_import_statement): Adjust.
13537         (handle_DW_AT_stmt_list): Adjust.
13538         (read_file_scope): Adjust.
13539         (read_func_scope): Adjust.
13540         (read_lexical_block_scope): Adjust.
13541         (read_call_site_scope): Adjust.
13542         (read_variable): Adjust.
13543         (dwarf2_rnglists_process): Adjust.
13544         (dwarf2_ranges_process): Adjust.
13545         (dwarf2_ranges_read): Adjust.
13546         (dwarf2_get_pc_bounds): Adjust.
13547         (dwarf2_record_block_ranges): Adjust.
13548         (dwarf2_add_field): Adjust.
13549         (dwarf2_add_member_fn): Adjust.
13550         (read_structure_type): Adjust.
13551         (process_structure_scope): Adjust.
13552         (read_enumeration_type): Adjust.
13553         (read_array_type): Adjust.
13554         (mark_common_block_symbol_computed): Adjust.
13555         (read_common_block): Adjust.
13556         (read_namespace_type): Adjust.
13557         (read_namespace): Adjust.
13558         (read_module_type): Adjust.
13559         (read_tag_pointer_type): Adjust.
13560         (read_tag_ptr_to_member_type): Adjust.
13561         (read_tag_string_type): Adjust.
13562         (read_subroutine_type): Adjust.
13563         (read_typedef): Adjust.
13564         (read_base_type): Adjust.
13565         (attr_to_dynamic_prop): Adjust.
13566         (read_subrange_type): Adjust.
13567         (read_unspecified_type): Adjust.
13568         (dwarf2_read_abbrevs): Adjust.
13569         (load_partial_dies): Adjust.
13570         (read_partial_die): Adjust.
13571         (find_partial_die): Adjust.
13572         (guess_partial_die_structure_name): Adjust.
13573         (fixup_partial_die): Adjust.
13574         (read_attribute_value): Adjust.
13575         (read_addr_index): Adjust.
13576         (read_addr_index_from_leb128): Adjust.
13577         (read_str_index): Adjust.
13578         (dwarf2_string_attr): Adjust.
13579         (get_debug_line_section): Adjust.
13580         (dwarf_decode_line_header): Adjust.
13581         (lnp_state_machine::check_line_address): Adjust.
13582         (dwarf_decode_lines_1): Adjust.
13583         (dwarf_decode_lines): Adjust.
13584         (dwarf2_start_symtab): Adjust.
13585         (var_decode_location): Adjust.
13586         (new_symbol_full): Adjust.
13587         (dwarf2_const_value_data): Adjust.
13588         (dwarf2_const_value_attr): Adjust.
13589         (dwarf2_const_value): Adjust.
13590         (die_type): Adjust.
13591         (die_containing_type): Adjust.
13592         (build_error_marker_type): Adjust.
13593         (lookup_die_type): Adjust.
13594         (guess_full_die_structure_name): Adjust.
13595         (anonymous_struct_prefix): Adjust.
13596         (determine_prefix): Adjust.
13597         (dwarf2_name): Adjust.
13598         (follow_die_ref_or_sig): Adjust.
13599         (follow_die_offset): Adjust.
13600         (follow_die_ref): Adjust.
13601         (follow_die_sig_1): Adjust.
13602         (follow_die_sig): Adjust.
13603         (get_signatured_type): Adjust.
13604         (get_DW_AT_signature_type): Adjust.
13605         (decode_locdesc): Adjust.
13606         (dwarf_decode_macros): Adjust.
13607         (cu_debug_loc_section): Adjust.
13608         (fill_in_loclist_baton): Adjust.
13609         (dwarf2_symbol_mark_computed): Adjust.
13610         (init_one_comp_unit): Don't assign
13611         dwarf2_cu::dwarf2_per_objfile.
13612         (set_die_type): Adjust.
13613
13614 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13615
13616         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13617         <dwarf2_per_objfile>: New field.
13618         (dwarf2_per_objfile): Remove global.
13619         (get_dwarf2_per_objfile): New function.
13620         (set_dwarf2_per_objfile): New function.
13621         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13622         dwarf2_per_objfile.
13623         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13624         (read_abbrev_offset): Likewise.
13625         (read_indirect_string): Likewise.
13626         (read_indirect_line_string): Likewise.
13627         (read_indirect_string_at_offset): Likewise.
13628         (read_indirect_string_from_dwz): Likewise.
13629         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13630         dwarf2_per_objfile.
13631         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13632         (create_all_comp_units): Change objfile parameter to
13633         dwarf2_per_objfile.
13634         (create_all_type_units): Likewise.
13635         (process_queue): Add dwarf2_per_objfile parameter.
13636         (read_and_check_comp_unit_head): Likewise.
13637         (lookup_dwo_unit_in_dwp): Likewise.
13638         (get_dwp_file): Likewise.
13639         (process_cu_includes): Likewise.
13640         (struct free_dwo_file_cleanup_data): New struct.
13641         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13642         set_dwarf2_per_objfile.
13643         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13644         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13645         context, adjust calls.
13646         (dw2_instantiate_symtab): Likewise.
13647         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13648         (dw2_get_cu): Likewise.
13649         (create_cu_from_index_list): Change objfile parameter to
13650         dwarf2_per_objfile.
13651         (create_cus_from_index_list): Get dwarf2_per_objfile from
13652         context, adjust calls.
13653         (create_cus_from_index): Likewise.
13654         (create_signatured_type_table_from_index): Change objfile
13655         parameter to dwarf2_per_objfile.
13656         (create_signatured_type_table_from_debug_names): Change objfile
13657         parameter to dwarf2_per_objfile.
13658         (create_addrmap_from_index): Likewise.
13659         (create_addrmap_from_aranges): Likewise.
13660         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13661         (dw2_setup): Remove.
13662         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13663         context.
13664         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13665         get_dwarf2_per_objfile.
13666         (dw2_forget_cached_source_info): Likewise.
13667         (dw2_map_symtabs_matching_filename): Likewise.
13668         (struct dw2_symtab_iterator) <index>: Remove.
13669         <dwarf2_per_objfile>: New field.
13670         (dw2_symtab_iter_init): Replace index parameter with
13671         dwarf2_per_objfile.
13672         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13673         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13674         (dw2_print_stats): Likewise.
13675         (dw2_dump): Likewise.
13676         (dw2_expand_symtabs_for_function): Likewise.
13677         (dw2_expand_all_symtabs): Likewise.
13678         (dw2_expand_symtabs_with_fullname): Likewise.
13679         (dw2_expand_marked_cus): Replace index and objfile parameters
13680         with dwarf2_per_objfile.
13681         (dw_expand_symtabs_matching_file_matcher): Add
13682         dwarf2_per_objfile parameter and adjust calls.
13683         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13684         adjust calls.
13685         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13686         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13687         adjust calls.
13688         (create_cus_from_debug_names_list): Replace objfile parameter
13689         with dwarf2_per_objfile and adjust calls.
13690         (create_cus_from_debug_names): Likewise.
13691         (dwarf2_read_debug_names): Likewise.
13692         (mapped_debug_names::namei_to_name): Adjust call.
13693         (dw2_debug_names_iterator::next): Likewise.
13694         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13695         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13696         (dw2_debug_names_dump): Likewise.
13697         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13698         (dw2_debug_names_expand_symtabs_matching): Likewise.
13699         (dwarf2_initialize_objfile): Likewise.
13700         (dwarf2_build_psymtabs): Likewise.
13701         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13702         this_cu.
13703         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13704         (read_and_check_comp_unit_head): Likewise.
13705         (read_abbrev_offset): Likewise.
13706         (create_debug_type_hash_table): Likewise.
13707         (create_debug_types_hash_table): Likewise.
13708         (create_all_type_units): Replace objfile parameter with
13709         dwarf2_per_objfile.
13710         (add_type_unit): Add dwarf2_per_objfile parameter.
13711         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13712         with dwarf2_per_objfile.
13713         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13714         (lookup_dwp_signatured_type): Likewise.
13715         (lookup_signatured_type): Likewise.
13716         (read_cutu_die_from_dwo): Likewise.
13717         (init_tu_and_read_dwo_dies): Likewise.
13718         (init_cutu_and_read_dies): Likewise.
13719         (init_cutu_and_read_dies_no_follow): Likewise.
13720         (allocate_type_unit_groups_table): Add objfile parameter.
13721         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13722         (get_type_unit_group): Likewise.
13723         (process_psymtab_comp_unit): Update call.
13724         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13725         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13726         (print_tu_stats): Likewise.
13727         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13728         in void* parameter.
13729         (build_type_psymtabs): Change objfile parameter to
13730         dwarf2_per_objfile.
13731         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13732         passed in void* parameter.
13733         (process_skeletonless_type_units): Change objfile parameter to
13734         dwarf2_per_objfile.
13735         (set_partial_user): Likewise.
13736         (dwarf2_build_psymtabs_hard): Likewise.
13737         (read_comp_units_from_section): Likewise.
13738         (create_all_comp_units): Likewise.
13739         (scan_partial_symbols): Update calls.
13740         (add_partial_symbol): Likewise.
13741         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13742         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13743         (process_queue): Add dwarf2_per_objfile parameter.
13744         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13745         (compute_compunit_symtab_includes): Likewise.
13746         (process_cu_includes): Add dwarf2_per_objfile parameter.
13747         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13748         (process_full_type_unit): Likewise.
13749         (process_imported_unit_die): Update call.
13750         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13751         (read_file_scope): Likewise.
13752         (allocate_dwo_file_hash_table): Add objfile parameter.
13753         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13754         (create_cus_hash_table): Likewise.
13755         (create_dwp_hash_table): Likewise.
13756         (create_dwo_unit_in_dwp_v1): Likewise.
13757         (create_dwp_v2_section): Likewise.
13758         (create_dwo_unit_in_dwp_v2): Likewise.
13759         (lookup_dwo_unit_in_dwp): Likewise.
13760         (try_open_dwop_file): Likewise.
13761         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13762         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13763         cleanup to include a reference to dwarf2_per_objfile.
13764         (open_dwp_file): Add dwarf2_per_objfile parameter.
13765         (open_and_init_dwp_file): Likewise.
13766         (get_dwp_file): Likewise.
13767         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13768         (queue_and_load_all_dwo_tus): Update call.
13769         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13770         data.
13771         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13772         (dwarf2_ranges_process): Likewise.
13773         (dwarf2_get_pc_bounds): Likewise.
13774         (mark_common_block_symbol_computed): Likewise.
13775         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13776         (dwarf2_read_abbrevs): Update call.
13777         (read_partial_die): Use dwarf2_per_objfile from cu.
13778         (find_partial_die): Likewise.
13779         (fixup_partial_die): Likewise.
13780         (read_attribute_value): Likewise.
13781         (read_indirect_string_at_offset_from): Add objfile parameter.
13782         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13783         parameter.
13784         (read_indirect_string_from_dwz): Add objfile parameter.
13785         (read_indirect_string): Add objfile parameter.
13786         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13787         (read_addr_index): Use dwarf2_per_objfile from cu.
13788         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13789         call dw2_setup.
13790         (read_str_index): Use dwarf2_per_objfile from cu.
13791         (get_debug_line_section): Likewise.
13792         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13793         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13794         (new_symbol_full): Use dwarf2_per_objfile from cu.
13795         (build_error_marker_type): Likewise.
13796         (lookup_die_type): Likewise.
13797         (determine_prefix): Likewise.
13798         (follow_die_offset): Likewise.
13799         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13800         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13801         (dwarf2_fetch_die_type_sect_off): Likewise.
13802         (dwarf2_get_die_type): Likewise.
13803         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13804         (get_signatured_type): Likewise.
13805         (get_DW_AT_signature_type): Likewise.
13806         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13807         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13808         (cu_debug_loc_section): Likewise.
13809         (fill_in_loclist_baton): Likewise.
13810         (dwarf2_symbol_mark_computed): Likewise.
13811         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13812         dwarf2_per_objfile.
13813         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13814         parameter.
13815         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13816         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13817         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13818         (set_die_type): Use dwarf2_free_objfile from cu.
13819         (get_die_type_at_offset): Likewise.
13820         (dwarf2_per_objfile_free): Don't assign global variable.
13821         (debug_names) <constructor>: Add dwarf2_per_objfile
13822         parameter, update m_debugstrlookup construction.
13823         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13824         parameter.
13825         <m_dwarf2_per_objfile>: New field.
13826         <lookup>: Use m_dwarf2_per_objfile.
13827         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13828         (psyms_seen_size): Likewise.
13829         (write_gdbindex): Replace objfile parameter with
13830         dwarf2_per_objfile.
13831         (write_debug_names): Likewise.
13832         (write_psymtabs_to_index): Likewise.
13833         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13834         calls.
13835
13836 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13837
13838         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13839         <dwarf2_per_objfile>: New field.
13840         (struct dwarf2_per_cu_data) <objfile>: Remove.
13841         <dwarf2_per_objfile>: New field.
13842         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13843         of objfile.
13844         (create_signatured_type_table_from_index): Likewise.
13845         (create_debug_type_hash_table): Likewise.
13846         (fill_in_sig_entry_from_dwo_entry): Likewise.
13847         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13848         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13849         objfile.
13850         (create_partial_symtab): Access objfile through
13851         dwarf2_per_objfile.
13852         (process_psymtab_comp_unit_reader): Likewise.
13853         (read_comp_units_from_section): Likewise.
13854         (scan_partial_symbols): Likewise.
13855         (add_partial_symbol): Likewise.
13856         (add_partial_subprogram): Likewise.
13857         (peek_die_abbrev): Likewise.
13858         (fixup_go_packaging): Likewise.
13859         (process_full_comp_unit): Likewise.
13860         (process_full_type_unit): Likewise.
13861         (process_imported_unit_die): Likewise.
13862         (dwarf2_compute_name): Likewise.
13863         (dwarf2_physname): Likewise.
13864         (read_import_statement): Likewise.
13865         (create_cus_hash_table): Assign dwarf2_physname instead of
13866         objfile.
13867         (read_func_scope): Access objfile through dwarf2_per_objfile.
13868         (read_lexical_block_scope): Likewise.
13869         (read_call_site_scope): Likewise.
13870         (read_variable): Likewise.
13871         (dwarf2_rnglists_process): Likewise.
13872         (dwarf2_ranges_process): Likewise.
13873         (dwarf2_ranges_read): Likewise.
13874         (dwarf2_record_block_ranges): Likewise.
13875         (dwarf2_add_field): Likewise.
13876         (dwarf2_add_member_fn): Likewise.
13877         (read_structure_type): Likewise.
13878         (process_structure_scope): Likewise.
13879         (read_enumeration_type): Likewise.
13880         (read_array_type): Likewise.
13881         (read_common_block): Likewise.
13882         (read_namespace_type): Likewise.
13883         (read_namespace): Likewise.
13884         (read_module_type): Likewise.
13885         (read_tag_pointer_type): Likewise.
13886         (read_tag_ptr_to_member_type): Likewise.
13887         (read_tag_string_type): Likewise.
13888         (read_subroutine_type): Likewise.
13889         (read_typedef): Likewise.
13890         (read_base_type): Likewise.
13891         (attr_to_dynamic_prop): Likewise.
13892         (read_subrange_type): Likewise.
13893         (read_unspecified_type): Likewise.
13894         (load_partial_dies): Likewise.
13895         (read_partial_die): Likewise.
13896         (find_partial_die): Likewise.
13897         (guess_partial_die_structure_name): Likewise.
13898         (fixup_partial_die): Likewise.
13899         (read_attribute_value): Likewise.
13900         (read_addr_index_from_leb128): Likewise.
13901         (dwarf2_read_addr_index): Likewise.
13902         (dwarf2_string_attr): Likewise.
13903         (lnp_state_machine::check_line_address): Likewise.
13904         (dwarf_decode_lines_1): Likewise.
13905         (dwarf_decode_lines): Likewise.
13906         (dwarf2_start_symtab): Likewise.
13907         (var_decode_location): Likewise.
13908         (new_symbol_full): Likewise.
13909         (dwarf2_const_value_data): Likewise.
13910         (dwarf2_const_value_attr): Likewise.
13911         (dwarf2_const_value): Likewise.
13912         (die_type): Likewise.
13913         (die_containing_type): Likewise.
13914         (lookup_die_type): Likewise.
13915         (guess_full_die_structure_name): Likewise.
13916         (anonymous_struct_prefix): Likewise.
13917         (dwarf2_name): Likewise.
13918         (follow_die_ref_or_sig): Likewise.
13919         (follow_die_offset): Likewise.
13920         (follow_die_ref): Likewise.
13921         (dwarf2_fetch_die_loc_sect_off): Likewise.
13922         (dwarf2_fetch_constant_bytes): Likewise.
13923         (dwarf2_fetch_die_type_sect_off): Likewise.
13924         (dwarf2_get_die_type): Likewise.
13925         (follow_die_sig): Likewise.
13926         (decode_locdesc): Likewise.
13927         (dwarf2_per_cu_objfile): Likewise.
13928         (dwarf2_per_cu_text_offset): Likewise.
13929         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13930         objfile.
13931         (set_die_type): Access objfile through
13932         dwarf2_per_objfile.
13933
13934 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13935
13936         * valprint.c (converted_character_d): Remove typedef.
13937         (DEF_VEC_O (converted_character_d)): Remove.
13938         (count_next_character): Use std::vector.
13939         (print_converted_chars_to_obstack): Likewise.
13940         (generic_printstr): Likewise.
13941
13942 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13943
13944         * xml-support.h (struct gdb_xml_value): Add constructor.
13945         <value>: Change type to unique_xmalloc_ptr.
13946         (gdb_xml_value_s): Remove typedef.
13947         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13948         (gdb_xml_element_start_handler): Change parameter type to
13949         std::vector.
13950         (xml_find_attribute): Likewise.
13951         * xml-support.c (xml_find_attribute): Change parameter type to
13952         std::vector and adjust.
13953         (gdb_xml_values_cleanup): Remove.
13954         (gdb_xml_parser::start_element): Adjust to std::vector.
13955         (xinclude_start_include): Change paraeter type to std::vector
13956         and adjust.
13957         * btrace.c (check_xml_btrace_version): Likewise.
13958         (parse_xml_btrace_block): Likewise.
13959         (parse_xml_btrace_pt_config_cpu): Likewise.
13960         (parse_xml_btrace_pt): Likewise.
13961         (parse_xml_btrace_conf_bts): Likewise.
13962         (parse_xml_btrace_conf_pt): Likewise.
13963         * memory-map.c (memory_map_start_memory): Likewise.
13964         (memory_map_start_property): Likewise.
13965         * osdata.c (osdata_start_osdata): Likewise.
13966         (osdata_start_item): Likewise.
13967         (osdata_start_column): Likewise.
13968         * remote.c (start_thread): Likewise.
13969         * solib-aix.c (library_list_start_library): Likewise.
13970         (library_list_start_list): Likewise.
13971         * solib-svr4.c (library_list_start_library): Likewise.
13972         (svr4_library_list_start_list): Likewise.
13973         * solib-target.c (library_list_start_segment): Likewise.
13974         (library_list_start_section): Likewise.
13975         (library_list_start_library): Likewise.
13976         (library_list_start_list): Likewise.
13977         * tracepoint.c (traceframe_info_start_memory): Likewise.
13978         (traceframe_info_start_tvar): Likewise.
13979         * xml-syscall.c (syscall_start_syscall): Likewise.
13980         * xml-tdesc.c (tdesc_start_target): Likewise.
13981         (tdesc_start_feature): Likewise.
13982         (tdesc_start_reg): Likewise.
13983         (tdesc_start_union): Likewise.
13984         (tdesc_start_struct): Likewise.
13985         (tdesc_start_flags): Likewise.
13986         (tdesc_start_enum): Likewise.
13987         (tdesc_start_field): Likewise.
13988         (tdesc_start_enum_value): Likewise.
13989         (tdesc_start_vector): Likewise.
13990
13991 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13992
13993         * extension.h (struct xmethod_worker) <clone>: Remove.
13994         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13995         Remove.
13996         (python_xmethod_worker::clone): Remove.
13997         * valops.c (find_overload_match): Use std::move instead of
13998         clone.
13999
14000 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14001
14002         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14003         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14004         <free_xmethod_worker_data>: Remove.
14005         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14006         <get_xmethod_arg_types>: Remove.
14007         <get_xmethod_result_type>: Remove.
14008         <invoke_xmethod>: Remove.
14009         * extension.c (new_xmethod_worker): Remove.
14010         (clone_xmethod_worker): Remove.
14011         (get_matching_xmethod_workers): Return void, pass std::vector by
14012         pointer.
14013         (get_xmethod_arg_types): Rename to...
14014         (xmethod_worker::get_arg_types): ... this, and adjust.
14015         (get_xmethod_result_type): Rename to...
14016         (xmethod_worker::get_result_type): ... this, and adjust.
14017         (invoke_xmethod): Remove.
14018         (free_xmethod_worker): Remove.
14019         (free_xmethod_worker_vec): Remove.
14020         * extension.h (enum ext_lang_rc): Move here from
14021         extension-priv.h.
14022         (struct xmethod_worker): Add constructor and destructor.
14023         <data>: Remove.
14024         <value>: Remove.
14025         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14026         virtual pure methods.
14027         <get_arg_types, get_result_type>: New methods.
14028         (xmethod_worker_ptr): Remove typedef.
14029         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14030         (xmethod_worker_vec): Remove typedef.
14031         (xmethod_worker_up): New typedef.
14032         (invoke_xmethod): Remove.
14033         (clone_xmethod_worker): Remove.
14034         (free_xmethod_worker): Remove.
14035         (free_xmethod_worker_vec): Remove.
14036         (get_xmethod_arg_types): Remove.
14037         (get_xmethod_result_type): Remove.
14038         * valops.c (find_method_list): Use std::vector, don't use
14039         intermediate vector.
14040         (value_find_oload_method_list): Use std::vector.
14041         (find_overload_match): Use std::vector.
14042         (find_oload_champ): Use std::vector.
14043         * value.c (value_free): Use operator delete.
14044         (value_of_xmethod): Rename to...
14045         (value_from_xmethod): ... this.  Don't assign
14046         xmethod_worker::value, take rvalue-reference.
14047         (result_type_of_xmethod): Adjust.
14048         (call_xmethod): Adjust.
14049         * value.h: Include extension.h.
14050         (struct xmethod_worker): Don't forward-declare.
14051         (value_of_xmethod): Rename to...
14052         (value_from_xmethod): ... this, take rvalue-reference.
14053         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14054         (struct python_xmethod_worker): ... this, add constructor and
14055         destructor.
14056         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14057         (gdbpy_free_xmethod_worker_data): Rename to...
14058         (python_xmethod_worker::~python_xmethod_worker): ... this and
14059         adjust.
14060         (gdbpy_clone_xmethod_worker_data): Rename to...
14061         (python_xmethod_worker::clone): ... this and adjust.
14062         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14063         temporary vector.
14064         (gdbpy_get_xmethod_arg_types): Rename to...
14065         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14066         (gdbpy_get_xmethod_result_type): Rename to...
14067         (python_xmethod_worker::do_get_result_type): ... this and
14068         adjust.
14069         (gdbpy_invoke_xmethod): Rename to...
14070         (python_xmethod_worker::invoke): ... this and adjust.
14071         (new_python_xmethod_worker): Rename to...
14072         (python_xmethod_worker::python_xmethod_worker): ... this and
14073         adjust.
14074         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14075         Remove.
14076         (gdbpy_free_xmethod_worker_data): Remove.
14077         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14078         (gdbpy_get_xmethod_arg_types): Remove.
14079         (gdbpy_get_xmethod_result_type): Remove.
14080         (gdbpy_invoke_xmethod): Remove.
14081         * python/python.c (python_extension_ops): Remove obsolete
14082         callbacks.
14083
14084 2018-01-05  Pedro Alves  <palves@redhat.com>
14085
14086         PR gdb/18653
14087         * common/signals-state-save-restore.c
14088         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14089         find a custom handler preinstalled, instead of internal erroring.
14090         But only warn if !quiet.
14091         * common/signals-state-save-restore.h
14092         (save_original_signals_state): New parameter 'quiet'.
14093         * main.c (captured_main_1): Move save_original_signals_state call
14094         after option handling, and pass QUIET.
14095
14096 2018-01-05  Pedro Alves  <palves@redhat.com>
14097
14098         * spu-tdep.c (spu_catch_start): Pass
14099         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14100
14101 2018-01-05  Pedro Alves  <palves@redhat.com>
14102
14103         PR gdb/22670
14104         * ada-lang.c (literal_symbol_name_matcher): New function.
14105         (ada_get_symbol_name_matcher): Use it for
14106         symbol_name_match_type::SEARCH_NAME.
14107         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14108         it down instead of assuming symbol_name_match_type::FULL.
14109         * block.h (block_lookup_symbol): New parameter 'match_type'.
14110         * c-valprint.c (print_unpacked_pointer): Use
14111         lookup_symbol_search_name instead of lookup_symbol.
14112         * compile/compile-object-load.c (get_out_value_type): Pass down
14113         symbol_name_match_type::SEARCH_NAME.
14114         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14115         symbol_name_match_type::FULL.
14116         * cp-support.c (cp_get_symbol_name_matcher): Handle
14117         symbol_name_match_type::SEARCH_NAME.
14118         * infrun.c (insert_exception_resume_breakpoint): Use
14119         lookup_symbol_search_name.
14120         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14121         * psymtab.c (maintenance_check_psymtabs): Use
14122         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14123         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14124         SYMBOL_SEARCH_NAME.
14125         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14126         if symbol_name_match_type::SEARCH_NAME.
14127         (lookup_symbol_in_language): Pass down
14128         symbol_name_match_type::FULL.
14129         (lookup_symbol_search_name): New.
14130         (lookup_language_this): Pass down
14131         symbol_name_match_type::SEARCH_NAME.
14132         (lookup_symbol_aux, lookup_local_symbol): New parameter
14133         'match_type'.  Pass it down.
14134         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14135         (lookup_symbol_search_name): New declaration.
14136         (lookup_symbol_in_block): New 'match_type' parameter.
14137
14138 2018-01-05  Pedro Alves  <palves@redhat.com>
14139
14140         PR gdb/22670
14141         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14142         ada_lookup_symbol.
14143         (ada_lookup_symbol): Reimplement in terms of
14144         ada_lookup_symbol_list, bits factored out from
14145         ada_lookup_encoded_symbol.
14146
14147 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14148
14149         * ada-exp.y (write_object_renaming): When subscripting an array
14150         using a symbol as the index, pass the block in call to
14151         ada_lookup_encoded_symbol when looking that symbol up.
14152
14153 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14154
14155         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14156         TYPE_INDEX_TYPE.
14157
14158 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14159
14160         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14161         the case where VALUE_LVAL (val0) is not lval_memory.
14162
14163 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14164
14165         * ada-valprint.c (print_optional_low_bound): Handle
14166         character-indexed array printing like boolean-indexed array
14167         printing.
14168
14169 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14170
14171         * NEWS: Create a new section for the next release branch.
14172         Rename the section of the current branch, now that it has
14173         been cut.
14174
14175 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14176
14177         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14178         * version.in: Bump version to 8.1.50.DATE-git.
14179
14180 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14181
14182         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14183         Add field.
14184         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14185         Add field.
14186         (default_exception_support_info) <catch_handlers_sym>: Add field.
14187         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14188         (ada_exception_name_addr_1): Add "catch handlers" handling.
14189         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14190         Update all callers.
14191         (create_excep_cond_exprs) <ex>: Add parameter.
14192         (re_set_exception): Update create_excep_cond_exprs call.
14193         (print_it_exception, print_one_exception, print_mention_exception)
14194         (print_recreate_exception): Add "catch handler" handling.
14195         (allocate_location_catch_handlers, re_set_catch_handlers)
14196         (check_status_catch_handlers, print_it_catch_handlers)
14197         (print_one_catch_handlers, print_mention_catch_handlers)
14198         (print_recreate_catch_handlers): New function.
14199         (catch_handlers_breakpoint_ops): New variable.
14200         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14201         Add parameter.  Add "catch handler" handling.
14202         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14203         Add "catch handler" handling.
14204         (ada_exception_catchpoint_cond_string): Add "catch handler"
14205         handling.
14206         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14207         call.
14208         (catch_ada_handlers_command): New function.
14209         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14210         operations structure.
14211         (_initialize_ada_language): Add "catch handlers" command entry.
14212         * NEWS: Document "catch handlers" feature.
14213
14214 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14215
14216         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14217         account when creating the array type of the slice.
14218         (ada_value_slice): Likewise.
14219
14220 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14221
14222         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14223         New enum value.
14224         (create_array_type_with_stride): Add byte_stride_prop parameter.
14225         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14226         New parameter.  Update all callers in this file.
14227         (array_type_has_dynamic_stride): New function.
14228         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14229         of arrays with dynamic byte strides.
14230         * dwarf2read.c (read_array_type): Add support for dynamic
14231         DW_AT_byte_stride attributes.
14232
14233 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14234
14235         * dwarf2read.c (read_unspecified_type): Treat
14236         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14237
14238 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14239
14240         Update copyright year range in all GDB files.
14241
14242 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14243
14244         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14245         and gdb/testsuite/gdb.base/step-line.c.
14246
14247 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14248
14249         * copyright.py (main): Dump the contents of
14250         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14251         even if BY_HAND is empty.
14252
14253 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14254
14255         * top.c (print_gdb_version): Update Copyright year in version
14256         message.
14257
14258 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14259
14260         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14261
14262 For older changes see ChangeLog-2017.
14263 \f
14264 Local Variables:
14265 mode: change-log
14266 left-margin: 8
14267 fill-column: 74
14268 version-control: never
14269 coding: utf-8
14270 End: