Remove struct keyword in range-based for
[external/binutils.git] / gdb / ChangeLog
1 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2
3         * dwarf2read.c (read_func_scope): Remove struct keyword in
4         range-based for.
5
6 2018-10-03  Tom Tromey  <tom@tromey.com>
7
8         * README: Mention --enable-ubsan.
9         * NEWS: Mention --enable-ubsan.
10         * acinclude.m4: Include sanitize.m4.
11         * configure: Rebuild.
12         * configure.ac: Call AM_GDB_UBSAN.
13         * sanitize.m4: New file.
14
15 2018-10-03  Tom Tromey  <tom@tromey.com>
16
17         * expression.h (enum exp_opcode): Use uint8_t as base type.
18         * expprint.c (op_name): Handle invalid opcodes.
19
20 2018-10-03  Tom Tromey  <tom@tromey.com>
21
22         * parse.c (prefixify_expression): Add assert.
23         (parse_exp_in_context_1): Throw exception if the expression is
24         empty.
25
26 2018-10-03  Tom Tromey  <tom@tromey.com>
27
28         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
29
30 2018-10-03  Tom Tromey  <tom@tromey.com>
31
32         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
33
34 2018-10-03  Tom Tromey  <tom@tromey.com>
35
36         * dwarf2read.c (read_subrange_type): Make "negative_mask"
37         unsigned.
38
39 2018-10-03  Tom Tromey  <tom@tromey.com>
40
41         * findvar.c (extract_integer): Do work in an unsigned type.
42
43 2018-10-03  Tom Tromey  <tom@tromey.com>
44
45         * common/enum-flags.h (enum_flags::operator~): Add static assert.
46         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
47         base type.
48         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
49         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
50         type.
51         * c-lang.h (enum c_string_type_values): Use unsigned as base
52         type.
53         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
54
55 2018-10-03  Tom Tromey  <tom@tromey.com>
56
57         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
58         <~dwarf2_frame_state_reg_info>: Update.
59         <dwarf2_frame_state_reg_info>: Update.
60         <alloc_regs>: Add assertion.  Update.
61         <reg>: Now a std::vector.
62         <num_regs>: Remove.
63         <swap>: Update.
64         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
65         (execute_cfa_program_test, dwarf2_frame_cache): Update.
66
67 2018-10-03  Tom Tromey  <tom@tromey.com>
68
69         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
70
71 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
72
73         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
74
75 2018-10-02  Tom Tromey  <tom@tromey.com>
76
77         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
78
79 2018-10-02  John Darrington <john@darrington.wattle.id.au>
80
81         * NEWS: Mention changed commands.
82         * ser-uds.c: New file.
83         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
84         * configure: Regenerate.
85         * Makefile.in: Add new file.
86         * serial.c (serial_open): Check if filename is a socket
87           and lookup the appropriate interface accordingly.
88
89 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
90
91         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
92         define.
93         (AARCH64_EXTRA_MAGIC): Likewise.
94         (AARCH64_FPSIMD_MAGIC): Likewise.
95         (AARCH64_SVE_MAGIC): Likewise.
96         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
97         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
98         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
99         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
100         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
101         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
102         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
103         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
104         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
105         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
106         (read_aarch64_ctx): Add function.
107         (aarch64_linux_sigframe_init): Detect FP registers.
108
109 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
110
111         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
112         (AARCH64_D0_REGNUM): Likewise.
113         (AARCH64_S0_REGNUM): Likewise.
114         (AARCH64_H0_REGNUM): Likewise.
115         (AARCH64_B0_REGNUM): Likewise.
116         (AARCH64_SVE_V0_REGNUM): Likewise.
117         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
118         (AARCH64_D0_REGNUM): Likewise.
119         (AARCH64_S0_REGNUM): Likewise.
120         (AARCH64_H0_REGNUM): Likewise.
121         (AARCH64_B0_REGNUM): Likewise.
122         (AARCH64_SVE_V0_REGNUM): Likewise.
123
124 2018-10-01  Gary Benson <gbenson@redhat.com>
125
126         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
127         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
128         prfpregset_t instead of gdb_prfpregset_t.
129         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
130         * configure, config.in: Rebuild.
131
132 2018-10-01  Gary Benson <gbenson@redhat.com>
133
134         * common/gdb_proc_service.h: New file, factored out from...
135         * gdb_proc_service.h: Moved common code to the above file.
136         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
137
138 2018-10-01  Gary Benson <gbenson@redhat.com>
139
140         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
141         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
142
143 2018-10-01  Gary Benson <gbenson@redhat.com>
144
145         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
146         (AC_CHECK_HEADERS): Check for linux/elf.h.
147         * configure, config.in: Rebuild.
148         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
149         doesn't define elf_fpregset_t.
150
151 2018-10-01  Gary Benson <gbenson@redhat.com>
152
153         * gdb_proc_service.h: Whitespace change.
154
155 2018-10-01  Tom Tromey  <tom@tromey.com>
156
157         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
158         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
159         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
160
161 2018-10-01  Tom Tromey  <tom@tromey.com>
162
163         * README: Minor change.
164
165 2018-09-30  Pedro Alves  <palves@redhat.com>
166
167         * darwin-nat-info.c (darwin_debug_regions_recurse)
168         (info_mach_exceptions_command): Remove unused local variables.
169         * darwin-nat.c (darwin_decode_notify_message)
170         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
171         (darwin_stop_inferior, darwin_setup_exceptions)
172         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
173         (darwin_nat_target::attach, darwin_nat_target::detach)
174         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
175         local variables.
176         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
177         variables.
178
179 2018-09-29  Tom Tromey  <tom@tromey.com>
180
181         * README: Remove some leftover text.
182
183 2018-09-29  Tom Tromey  <tom@tromey.com>
184
185         * PROBLEMS: Rewrite.
186         * README: Update.
187
188 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
189
190         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
191         case with explicit breakpoint kind.
192         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
193         'additional_info' and related logic.
194         (riscv_debug_breakpoints): New variable.
195         (riscv_breakpoint_kind_from_pc): Use the length of the existing
196         instruction to determine the breakpoint kind.
197         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
198         flag.  Update description of 'set/show riscv
199         use-compressed-breakpoints' flag.
200
201 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
202
203         (NEWS): Mention changes to frame related commands.
204         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
205         (add_prefix_cmd_suppress_notification): New function.
206         (add_com_suppress_notification): Call
207         add_cmd_suppress_notification.
208         * command.h (add_cmd_suppress_notification): Declare.
209         (add_prefix_cmd_suppress_notification): Declare.
210         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
211         (parse_frame_specification): Moved from stack.c, with
212         simplification to handle a single argument.
213         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
214         switch to the selected frame.  Add a header comment.
215         * stack.c: Remove 'safe-ctype.h' include.
216         (find_frame_for_function): Add declaration.
217         (find_frame_for_address): New function.
218         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
219         (frame_selection_by_function_completer): New function.
220         (info_frame_command): Rename to...
221         (info_frame_command_core): ...this, and update parameter types.
222         (select_frame_command): Rename to...
223         (select_frame_command_core): ...this, and update parameter types.
224         (frame_command): Rename to...
225         (frame_command_core): ...this, and update parameter types.
226         (class frame_command_helper): New class to wrap implementations of
227         frame related sub-commands.
228         (frame_apply_cmd_list): New static global.
229         (frame_cmd_list): Make static.
230         (select_frame_cmd_list): New global for sub-commands.
231         (info_frame_cmd_list): New global for sub-commands.
232         (_initialize_stack): Register sub-commands for 'frame',
233         'select-frame', and 'info frame'.  Update 'frame apply' commands
234         to use frame_apply_cmd_list.  Move function local static
235         frame_apply_list to file static frame_apply_cmd_list for
236         consistency.
237         * stack.h (select_frame_command): Delete declarationn.
238         (select_frame_for_mi): Declare new function.
239
240 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
241
242         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
243         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
244         and NOP.
245
246 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
247
248         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
249
250 2018-09-26  Tom Tromey  <tom@tromey.com>
251
252         * valops.c (auto_abandon): Remove dead code.
253
254 2018-09-26  Tom Tromey  <tom@tromey.com>
255
256         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
257
258 2018-09-24  Tom Tromey  <tom@tromey.com>
259
260         * common/pathstuff.c (get_standard_cache_dir): Make
261         "xdg_cache_home" and "home" const.
262         * top.c (init_history): Make "tmpenv" const.
263         * main.c (get_init_files): Make "homedir" const.
264
265 2018-09-23  Tom Tromey  <tom@tromey.com>
266
267         PR python/18852:
268         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
269
270 2018-09-23  Tom Tromey  <tom@tromey.com>
271
272         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
273         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
274         * python/python-internal.h (gdbpy_handle_exception): Declare.
275         * python/py-utils.c (gdbpy_handle_exception): New function.
276
277 2018-09-23  Tom Tromey  <tom@tromey.com>
278
279         PR python/17284:
280         * python/py-type.c (typy_template_argument): Check for negative
281         argument number.
282
283 2018-09-23  Tom Tromey  <tom@tromey.com>
284
285         PR python/14062:
286         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
287
288 2018-09-23  Tom Tromey  <tom@tromey.com>
289
290         PR python/18170:
291         * python/py-value.c (valpy_int): Allow conversion from pointer
292         type.
293
294 2018-09-23  Tom Tromey  <tom@tromey.com>
295
296         PR python/20126:
297         * python/py-value.c (valpy_int): Respect type sign.
298
299 2018-09-23  Tom Tromey  <tom@tromey.com>
300
301         PR python/18352;
302         * python/py-value.c (valpy_float): Allow conversions from int or
303         char.
304         (valpy_int, valpy_long): Allow conversions from float.
305
306 2018-09-23  Tom Tromey  <tom@tromey.com>
307
308         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
309         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
310
311 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
312
313         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
314         __sighndlr.
315         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
316
317 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
318
319         * windows-nat.c (windows_nat_target::wait): Remove a spurious
320         target_terminal::ours().
321
322 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
323
324         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
325         of vl to ULONGEST.
326
327 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
328
329         * breakpoint.c (update_inserted_breakpoint_locations): Remove
330         redundant condition.
331
332 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
333
334         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
335
336         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
337         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
338         * sol-thread.c (ps_pdmodel): Don't guard definition.
339
340         * procfs.c: Fix formatting.
341
342         * procfs.c (sysset_t_alloc): Remove.
343         (create_procinfo): Use XNEW instead of sysset_t_alloc.
344         (procfs_debug_inferior): Likewise.
345         (procfs_set_exec_trap): Likewise.
346         (proc_set_traced_sysentry): Don't allocate argp dynamically.
347         (proc_set_traced_sysexit): Likewise.
348
349         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
350         (dead_procinfo): Likewise.
351         (proc_warn): Likewise.
352         (proc_error): Likewise.
353         (proc_get_LDT_entry): Likewise.
354         (do_attach): Likewise.
355         (procfs_target::pid_to_str): Likewise.
356         (iterate_over_mappings): Likewise.
357
358         * procfs.c (create_procinfo): Fix ARI warning.
359         (proc_get_status): Likewise.
360         (proc_stop_process): Likewise.
361         (proc_run_process): Likewise.
362         (proc_kill): Likewise.
363         (proc_get_LDT_entry): Likewise.
364         (procfs_find_LDT_entry): Likewise.
365         (proc_update_threads): Likewise.
366         (proc_iterate_over_threads): Likewise.
367         (do_attach): Likewise.
368         (procfs_xfer_memory): Likewise.
369         (invalidate_cache): Likewise.
370         (procfs_target::resume): Likewise.
371         (procfs_init_inferior): Likewise.
372         (procfs_set_exec_trap): Likewise.
373         (procfs_target::thread_alive): Likewise.
374         (procfs_target::pid_to_exec_file): Likewise.
375         (iterate_over_mappings): Likewise.
376         (procfs_target::make_corefile_notes): Likewise.
377         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
378
379         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
380         (procfs_find_LDT_entry): Likewise.
381         * sol-thread.c (ps_lgetLDT): Likewise.
382
383 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
384
385         PR tdep/17903
386         * procfs.c (procfs_target): Declare pid_to_exec_file.
387         (procfs_target::pid_to_exec_file): New.
388
389 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
390
391         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
392         renaming.
393         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
394         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
395
396 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
397
398         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
399         (supply_fpregset, fill_fpregset): Move ...
400         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
401         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
402         Remove references to ioctl-based procfs.
403         Include <sys/reg.h>.
404         Remove PR_MODEL_NATIVE guards.
405         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
406         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
407
408 2018-09-19  Xavier Roirand  <roirand@adacore.com>
409
410         PR gdb/20981:
411         * solib-darwin.c (darwin_get_dyld_bfd): New function.
412         (darwin_solib_get_all_image_info_addr_at_init): Update call.
413         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
414
415 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
416
417         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
418         (fbsd_print_sockaddr_in6): Likewise.
419
420 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
421             Chris January  <chris.january@arm.com>
422
423         * eval.c (skip_undetermined_arglist): Skip argument list helper.
424         (evaluate_subexp_standard): Return a dummy type when
425         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
426         OP_F77_UNDETERMINED_ARGLIST case.
427         * expression.h (enum noside): Update comment.
428
429 2018-09-19  George Vasick <george.vasick@oracle.com>
430
431         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
432
433 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
434             April Chin <april.chin@oracle.com>
435             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
436
437         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
438         uint_t lwpid_t.
439         (create_procinfo): Print pids in /proc without leading zeros.
440
441 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
442
443         * nios2-tdep.c (nios2_gcc_target_options): New.
444         (nios2_gdb_arch_init): Install new hook.
445
446 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
447
448         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
449         New file.
450         * update-gnulib.sh: Apply patch.
451         * configure: Re-generate.
452
453 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
454
455         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
456         description.  Make "info proc" command descriptions more
457         consistent.
458
459 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
460
461         * NEWS: Mention 'info proc files' command.
462
463 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
464
465         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
466         descriptors for IP_FILES and IP_ALL.
467
468 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
469
470         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
471         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
472         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
473         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
474         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
475         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
476         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
477         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
478         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
479         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
480         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
481         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
482         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
483         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
484         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
485         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
486         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
487         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
488         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
489         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
490         (struct fbsd_sockaddr_un): New types.
491         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
492         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
493         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
494         (fbsd_core_info_proc_files): New functions.
495         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
496         IP_ALL.
497         * fbsd-tdep.h (fbsd_info_proc_files_header)
498         (fbsd_info_proc_files_entry): New.
499
500 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
501
502         * defs.h (enum info_proc_what) [IP_FILES]: New value.
503         * infcmd.c (info_proc_cmd_files): New function.
504         (_initialize_infcmd): Register 'info proc files' command.
505
506 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
507
508         * gnulib/aclocal-m4-deps.mk: Re-generate.
509         * gnulib/aclocal.m4: Re-generate.
510         * gnulib/config.in: Re-generate.
511         * gnulib/configure: Re-generate.
512         * gnulib/import/Makefile.am: Re-generate.
513         * gnulib/import/Makefile.in: Re-generate.
514         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
515         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
516         * gnulib/import/arpa_inet.in.h: New file.
517         * gnulib/import/inet_ntop.c: New file.
518         * gnulib/import/m4/arpa_inet_h.m4: New file.
519         * gnulib/import/m4/inet_ntop.m4: New file.
520         * gnulib/import/m4/netinet_in_h.m4: New file.
521         * gnulib/import/m4/socklen.m4: New file.
522         * gnulib/import/m4/sockpfaf.m4: New file.
523         * gnulib/import/m4/stdalign.m4: New file.
524         * gnulib/import/m4/sys_uio_h.m4: New file.
525         * gnulib/import/netinet_in.in.h: New file.
526         * gnulib/import/stdalign.in.h: New file.
527         * gnulib/import/sys_socket.c: New file.
528         * gnulib/import/sys_socket.in.h: New file.
529         * gnulib/import/sys_uio.in.h: New file.
530         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
531         module.
532
533 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
534
535         * gnulib/aclocal-m4-deps.mk: New file.
536         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
537         deterministically.
538
539 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
540
541         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
542         KVE_PATH.
543
544 2018-09-18  Tom Tromey  <tom@tromey.com>
545
546         * compile/compile-object-load.c (struct
547         link_hash_table_cleanup_data): Add constructor and destructor.
548         Use DISABLE_COPY_AND_ASSIGN.
549         (~link_hash_table_cleanup_data): Rename from
550         link_hash_table_free.  Now a destructor.
551         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
552
553 2018-09-18  Tom Tromey  <tom@tromey.com>
554
555         * compile/compile-object-run.c (do_module_cleanup): Use delete.
556         * compile/compile-object-load.c (struct munmap_list): Move to
557         header file.
558         (munmap_list::add): Rename from munmap_list_add; rewrite.
559         (munmap_list::~munmap_list): Rename from munmap_list_free.
560         (munmap_listp_free_cleanup): Remove.
561         (compile_object_load): Update.
562         * compile/compile-object-load.h (struct munmap_list): Move from
563         compile-object-load.c.  Rewrite.
564
565 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
566
567         * aarch64-tdep.c (pass_in_v): Use register size.
568         (aarch64_extract_return_value): Likewise.
569         (aarch64_store_return_value): Likewise.
570
571 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
572
573         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
574         rlim_t.
575
576 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
577
578         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
579         Fix short help line.
580
581 2018-09-17  Tom Tromey  <tom@tromey.com>
582
583         PR python/20445:
584         * configure: Rebuild.
585         * configure.ac: Conditionally use -DNDEBUG for Python.
586
587 2018-09-17  Tom Tromey  <tom@tromey.com>
588
589         * configure: Rebuild.
590         * configure.ac: Use gmp as a library dependency when checking for
591         mpfr.
592
593 2018-09-17  Pedro Alves  <palves@redhat.com>
594
595         * python/py-inferior.c (find_inferior_object): Delete.
596
597 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
598
599         * compile/compile-cplus-types.c
600         (compile_cplus_instance::enter_scope): Don't use new_scope after
601         std::move.
602
603 2018-09-17  Tom Tromey  <tom@tromey.com>
604
605         * common/pathstuff.c (get_standard_cache_dir): Use
606         ~/Library/Caches on macOS.
607         * common/pathstuff.h (get_standard_cache_dir): Update comment.
608
609 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
610
611         PR python/23669
612         * breakpoint.c (commands_cmd_element): New.
613         (_initialize_breakpoint): Assign commands_cmd_element.
614         * breakpoint.h (commands_cmd_element): New.
615         * cli/cli-script.c (while_cmd_element, if_command,
616         define_cmd_element): New.
617         (command_name_equals): Remove.
618         (process_next_line): Compare commands by pointer, not by name.
619         (_initialize_cli_script): Assign the various cmd_list_element
620         variables.
621         * compile/compile.c (compile_cmd_element): New.
622         (_initialize_compile): Assign compile_cmd_element.
623         * compile/compile.h (compile_cmd_element): New.
624         * guile/guile.c (guile_cmd_element): New.
625         (install_gdb_commands): Assign guile_cmd_element.
626         * guile/guile.h (guile_cmd_element): New.
627         * python/python.c (python_cmd_element): New.
628         (_initialize_python): Assign python_cmd_element.
629         * python/python.h (python_cmd_element): New.
630         * tracepoint.c (while_stepping_cmd_element): New.
631         (_initialize_tracepoint): Assign while_stepping_cmd_element.
632         * tracepoint.h (while_stepping_cmd_element): New.
633
634 2018-09-17  Tom Tromey  <tom@tromey.com>
635
636         * infrun.c (save_infcall_suspend_state): Return
637         infcall_suspend_state_up.
638         (save_infcall_control_state): Return infcall_control_state_up.
639         * inferior.h (save_infcall_suspend_state)
640         (save_infcall_control_state): Declare later.  Return unique
641         pointers.
642
643 2018-09-17  Tom Tromey  <tom@tromey.com>
644
645         * infrun.c (struct stop_context): Declare constructor,
646         destructor, "changed" method.
647         (stop_context::stop_context): Rename from save_stop_context.
648         (stop_context::~stop_context): Rename from
649         release_stop_context_cleanup.
650         (normal_stop): Update.
651         (stop_context::changed): Rename from stop_context_changed.  Return
652         bool.
653
654 2018-09-17  Tom Tromey  <tom@tromey.com>
655
656         * inferior.h (struct infcall_suspend_state_deleter): New.
657         (infcall_suspend_state_up): New typedef.
658         (struct infcall_control_state_deleter): New.
659         (infcall_control_state_up): New typedef.
660         (make_cleanup_restore_infcall_suspend_state)
661         (make_cleanup_restore_infcall_control_state): Don't declare.
662         * infcall.c (call_function_by_hand_dummy): Update.
663         * infrun.c (do_restore_infcall_suspend_state_cleanup)
664         (make_cleanup_restore_infcall_suspend_state): Remove.
665         (do_restore_infcall_control_state_cleanup)
666         (make_cleanup_restore_infcall_control_state): Remove.
667
668 2018-09-17  Tom Tromey  <tom@tromey.com>
669
670         * gdbthread.h (struct thread_control_state): Add initializer.
671         (class thread_info) <control>: Remove initializer.
672         * inferior.h (struct inferior_control_state): Add initializer.
673         (class inferior) <control>: Remove initializer.
674         (exit_inferior_1): Update.
675         * infrun.c (struct infcall_control_state): Add constructors.
676         (save_infcall_control_state): Use new.
677         (restore_infcall_control_state, discard_infcall_control_state):
678         Use delete.
679
680 2018-09-17  Tom Tromey  <tom@tromey.com>
681
682         * infrun.c (struct infcall_suspend_state) <registers>: Now a
683         unique_ptr.
684         <siginfo_data>: Now a unique_xmalloc_ptr.
685         (save_infcall_suspend_state, restore_infcall_suspend_state)
686         (discard_infcall_suspend_state)
687         (get_infcall_suspend_state_regcache): Update.
688
689 2018-09-17  Tom Tromey  <tom@tromey.com>
690
691         * gdbthread.h (struct thread_suspend_state): Add initializers.
692         (class thread_info) <suspend>: Remove initializer.
693         * infrun.c (struct infcall_suspend_state): Add initializers.
694         (save_infcall_suspend_state): Use new.
695         (discard_infcall_suspend_state): Use delete.
696
697 2018-09-16  Tom Tromey  <tom@tromey.com>
698
699         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
700         Remove.
701         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
702         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
703         (py_varobj_iter_new): Likewise.
704         (py_varobj_get_iterator): Use gdbpy_ref.
705
706 2018-09-16  Tom Tromey  <tom@tromey.com>
707
708         * python/py-threadevent.c (py_get_event_thread): Simplify.
709         * python/py-inferior.c (infpy_thread_from_thread_handle):
710         Return immediately after calling thread_to_thread_object.  Use
711         Py_RETURN_NONE.
712         (thread_to_thread_object): Set the exception on a NULL return.
713
714 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
715
716         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
717
718 2018-09-16  Tom Tromey  <tom@tromey.com>
719
720         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
721         Remove.
722
723 2018-09-16  Tom Tromey  <tom@tromey.com>
724
725         * python/python-internal.h (thread_to_thread_object): Change
726         return type.
727         * python/py-inferior.c (thread_to_thread_object): Return a new
728         reference.
729         (infpy_thread_from_thread_handle): Update.
730         * python/py-infthread.c (gdbpy_selected_thread): Update.
731         * python/py-stopevent.c (create_stop_event_object): Update.
732         * python/py-threadevent.c (py_get_event_thread): Return a new
733         reference.
734         (py_get_event_thread): Update.
735         * python/py-event.h (py_get_event_thread): Change return type.
736         * python/py-continueevent.c (create_continue_event_object):
737         Update.
738
739 2018-09-16  Tom Tromey  <tom@tromey.com>
740
741         * python/py-progspace.c (pspy_get_objfiles): Update.
742         * python/python-internal.h (objfile_to_objfile_object): Change
743         return type.
744         * python/py-newobjfileevent.c (create_new_objfile_event_object):
745         Update.
746         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
747         Update.
748         * python/python.c (gdbpy_get_current_objfile): Update.
749         (gdbpy_objfiles): Update.
750         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
751         Update.
752         (objfile_to_objfile_object): Return a new reference.
753         * python/py-symtab.c (stpy_get_objfile): Update.
754         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
755         Update.
756
757 2018-09-16  Tom Tromey  <tom@tromey.com>
758
759         * python/py-inferior.c (infpy_get_progspace): Update.
760         * python/python-internal.h (pspace_to_pspace_object): Change
761         return type.
762         * python/py-newobjfileevent.c
763         (create_clear_objfiles_event_object): Update.
764         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
765         Update.
766         * python/python.c (gdbpy_get_current_progspace): Update.
767         (gdbpy_progspaces): Update.
768         * python/py-progspace.c (pspace_to_pspace_object): Return a new
769         reference.
770         * python/py-objfile.c (objfpy_get_progspace): Update.
771         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
772         Update.
773
774 2018-09-16  Tom Tromey  <tom@tromey.com>
775
776         * python/lib/gdb/__init__.py (current_progspace, objfiles)
777         (solib_name, block_for_pc, find_pc_line): New functions.
778         (execute_unwinders): Update.
779         * python/py-block.c (gdbpy_block_for_pc): Remove.
780         * python/py-inferior.c (infpy_get_progspace): New function.
781         (inferior_object_getset) <progspace>: Add.
782         * python/py-progspace.c (pspy_objfiles): Rewrite.
783         (pspy_solib_name, pspy_block_for_pc)
784         (pspy_find_pc_line, pspy_is_valid): New functions.
785         (progspace_object_methods): Add entries for solib_name,
786         block_for_pc, find_pc_line, is_valid.
787         * python/python-internal.h (gdbpy_block_for_pc)
788         (build_objfiles_list): Don't declare.
789         * python/python.c: Don't include solib.h.
790         (gdbpy_solib_name, gdbpy_find_pc_line)
791         (gdbpy_get_current_progspace, build_objfiles_list)
792         (gdbpy_objfiles): Remove.
793         (GdbMethods) <current_progspace, objfiles, block_for_pc,
794         solib_name, find_pc_line>: Remove entries.
795
796 2018-09-16  Tom Tromey  <tom@tromey.com>
797
798         * top.c (new_ui_command): Use GNU style for metasyntactic
799         variables.
800         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
801         variables.
802         * maint.c (maintenance_translate_address): Remove "<>" around
803         text.
804         * interps.c (interpreter_exec_cmd): Use GNU style for
805         metasyntactic variables.
806         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
807         metasyntactic variables.
808         * tracepoint.c (tfind_range_command): Use GNU style for
809         metasyntactic variables.
810         (tfind_outside_command): Likewise.
811         (_initialize_tracepoint): Likewise.
812         * remote.c (extended_remote_target::create_inferior): Use GNU
813         style for metasyntactic variables.
814         * sparc64-tdep.c (adi_examine_command): Use GNU style for
815         metasyntactic variables.
816         (adi_assign_command): Likewise.
817
818 2018-09-16  Tom Tromey  <tom@tromey.com>
819
820         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
821         metasyntactic variables.  Print message if no disassembler options
822         are available.
823
824 2018-09-15  Tom Tromey  <tom@tromey.com>
825
826         * infcmd.c (get_inferior_args): Return const char *.
827         * inferior.h (get_inferior_args): Return type now const.
828         * linux-tdep.c (linux_fill_prpsinfo): Update.
829         * procfs.c (procfs_target::make_corefile_notes): Update.
830
831 2018-09-07  Tom Tromey  <tom@tromey.com>
832
833         * python/python.c (execute_gdb_command): Call bpstat_do_actions
834         inside the TRY.
835
836 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
837
838         * nios2-tdep.c (nios2_type_align): New.
839         (nios2_gdb_arch_init): Install type_align hook.
840
841 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
842
843         * eval.c (fake_method::fake_method): Call xzalloc directly for a
844         type that is neither object file owned, nor gdbarch owned.
845         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
846         gdbarch is non-NULL.
847         (alloc_type_instance): Allocate non-objfile owned types on the
848         gdbarch obstack.
849         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
850         using TYPE_ALLOC to ensure memory is allocated on the correct
851         obstack.
852         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
853         obstack, or the gdbarch obstack.
854         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
855
856 2018-09-14  Tom Tromey  <tom@tromey.com>
857
858         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
859         block.
860
861 2018-09-14  Tom Tromey  <tom@tromey.com>
862
863         * nat/fork-inferior.c (get_startup_shell): Remove "static".
864
865 2018-09-13  Tom Tromey  <tom@tromey.com>
866
867         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
868         static.
869
870 2018-09-13  Tom Tromey  <tom@tromey.com>
871
872         * exec.c (try_open_exec_file): Use std::string.
873
874 2018-09-13  Tom Tromey  <tom@tromey.com>
875
876         * utils.h (gdb_bfd_errmsg): Return std::string.
877         * exec.c (exec_file_attach): Update.
878         * compile/compile-object-load.c (compile_object_load): Update.
879         * utils.c (gdb_bfd_errmsg): Return std::string.
880
881 2018-09-13  Tom Tromey  <tom@tromey.com>
882
883         * procfs.c (struct procinfo_deleter): New.
884         (procinfo_up): New typedef.
885         (do_destroy_procinfo_cleanup): Remove.
886         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
887
888 2018-09-13  Tom Tromey  <tom@tromey.com>
889
890         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
891
892 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
893 2018-09-13  Tom Tromey  <tom@tromey.com>
894
895         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
896         (pspy_get_objfiles): New function.
897         (progspace_object_methods): New.
898         (pspace_object_type): Add tp_methods callback.
899         * python/python-internal.h (build_objfiles_list): New
900         declaration.
901         * python/python.c (build_objfiles_list): New function.
902         (gdbpy_objfiles): Implement using build_objfiles_list.
903         * NEWS: Mention the Progspace.objfiles method.
904
905 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
906
907         * python/py-inferior.c (infpy_get_progspace): New function.
908         (inferior_object_getset): Add progspace property.
909         * NEWS: Mention the new property.
910
911 2018-09-13  Tom Tromey  <tom@tromey.com>
912
913         PR rust/23650:
914         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
915
916 2018-09-13  Tom Tromey  <tom@tromey.com>
917
918         PR rust/23626:
919         * rust-lang.c (rust_enum_variant): Now static.
920         (rust_empty_enum_p): New function.
921         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
922         Handle empty enum.
923
924 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
925
926         * python/py-inferior.c (infpy_repr): New.
927         (inferior_object_type): Register infpy_repr.
928         * python/py-objfile.c (objfpy_repr): New.
929         (objfile_object_type): Register objfpy_repr.
930
931 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
932
933         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
934
935 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
936
937         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
938         typo.
939
940 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
941
942         * common/common-utils.c: Don't include '<sys/stat.h>'.
943         (is_regular_file): Move to...
944         * common/filestuff.c (is_regular_file): ... here.
945         * common/common-utils.h (is_regular_file): Move to...
946         * common/filestuff.h (is_regular_file): ... here.
947
948 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
949
950         * skip.c (debug_skip): New variable.
951         (skiplist_entry::do_skip_file_p): Add debug output.
952         (skiplist_entry::do_skip_gfile_p): Likewise.
953         (skiplist_entry::skip_function_p): Likewise.
954         (_initialize_step_skip): Create debug command.
955         * NEWS: Mention set/show debug skip.
956
957 2018-09-11  Xavier Roirand  <roirand@adacore.com>
958
959         * darwin-nat.c (should_disable_startup_with_shell):
960         New function.
961         (darwin_nat_target::create_inferior): Add call.
962
963 2018-09-11  Xavier Roirand  <roirand@adacore.com>
964
965         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
966         inf_port, msg_state>: Initialize.
967         (struct darwin_thread_info) <signaled, single_step>: Change
968         type and initialize.
969         (struct darwin_thread_info) <event>: Initialize.
970
971 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
972
973         PR gdb/23555
974         PR gdb/23558
975         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
976         guesses.
977
978 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
979
980         Revert:
981         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
982
983         PR gdb/23555
984         PR gdb/23558
985         * gnulib/aclocal.m4: Regenerate.
986         * gnulib/config.in: Regenerate.
987         * gnulib/configure: Regenerate.
988         * gnulib/import/Makefile.am: Update.
989         * gnulib/import/Makefile.in: Update.
990         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
991         * gnulib/import/_Noreturn.h: ... this.
992         * gnulib/import/alloca.in.h: Update.
993         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
994         * gnulib/import/arg-nonnull.h: ... this.
995         * gnulib/import/assure.h: Update.
996         * gnulib/import/at-func.c: Update.
997         * gnulib/import/basename-lgpl.c: Update.
998         * gnulib/import/extra/snippet/c++defs.h: Rename to...
999         * gnulib/import/c++defs.h: ... this.
1000         * gnulib/import/canonicalize-lgpl.c: Update.
1001         * gnulib/import/cdefs.h: Update.
1002         * gnulib/import/chdir-long.c: Update.
1003         * gnulib/import/chdir-long.h: Update.
1004         * gnulib/import/cloexec.c: Update.
1005         * gnulib/import/cloexec.h: Update.
1006         * gnulib/import/close.c: Update.
1007         * gnulib/import/closedir.c: Update.
1008         * gnulib/import/config.charset: Update.
1009         * gnulib/import/dirent-private.h: Update.
1010         * gnulib/import/dirent.in.h: Update.
1011         * gnulib/import/dirfd.c: Update.
1012         * gnulib/import/dirname-lgpl.c: Update.
1013         * gnulib/import/dirname.h: Update.
1014         * gnulib/import/dosname.h: Update.
1015         * gnulib/import/dup-safer-flag.c: Update.
1016         * gnulib/import/dup-safer.c: Update.
1017         * gnulib/import/dup.c: Update.
1018         * gnulib/import/dup2.c: Update.
1019         * gnulib/import/errno.in.h: Update.
1020         * gnulib/import/error.c: Update.
1021         * gnulib/import/error.h: Update.
1022         * gnulib/import/exitfail.c: Update.
1023         * gnulib/import/exitfail.h: Update.
1024         * gnulib/import/extra/update-copyright: Update.
1025         * gnulib/import/fchdir.c: Update.
1026         * gnulib/import/fcntl.c: Update.
1027         * gnulib/import/fcntl.in.h: Update.
1028         * gnulib/import/fd-hook.c: Update.
1029         * gnulib/import/fd-hook.h: Update.
1030         * gnulib/import/fd-safer-flag.c: Update.
1031         * gnulib/import/fd-safer.c: Update.
1032         * gnulib/import/fdopendir.c: Update.
1033         * gnulib/import/filename.h: Update.
1034         * gnulib/import/filenamecat-lgpl.c: Update.
1035         * gnulib/import/filenamecat.h: Update.
1036         * gnulib/import/flexmember.h: Update.
1037         * gnulib/import/float+.h: Update.
1038         * gnulib/import/float.c: Update.
1039         * gnulib/import/float.in.h: Update.
1040         * gnulib/import/fnmatch.c: Update.
1041         * gnulib/import/fnmatch.in.h: Update.
1042         * gnulib/import/fnmatch_loop.c: Update.
1043         * gnulib/import/fpucw.h: Update.
1044         * gnulib/import/frexp.c: Update.
1045         * gnulib/import/frexpl.c: Update.
1046         * gnulib/import/fstat.c: Update.
1047         * gnulib/import/fstatat.c: Update.
1048         * gnulib/import/getcwd-lgpl.c: Update.
1049         * gnulib/import/getcwd.c: Update.
1050         * gnulib/import/getdtablesize.c: Update.
1051         * gnulib/import/getlogin_r.c: Update.
1052         * gnulib/import/getprogname.c: Update.
1053         * gnulib/import/getprogname.h: Update.
1054         * gnulib/import/gettext.h: Update.
1055         * gnulib/import/gettimeofday.c: Update.
1056         * gnulib/import/glob-libc.h: Update.
1057         * gnulib/import/glob.c: Update.
1058         * gnulib/import/glob.in.h: Update.
1059         * gnulib/import/glob_internal.h: Update.
1060         * gnulib/import/glob_pattern_p.c: Update.
1061         * gnulib/import/globfree.c: Update.
1062         * gnulib/import/hard-locale.c: Update.
1063         * gnulib/import/hard-locale.h: Update.
1064         * gnulib/import/intprops.h: Update.
1065         * gnulib/import/inttypes.in.h: Update.
1066         * gnulib/import/isnan.c: Update.
1067         * gnulib/import/isnand-nolibm.h: Update.
1068         * gnulib/import/isnand.c: Update.
1069         * gnulib/import/isnanl-nolibm.h: Update.
1070         * gnulib/import/isnanl.c: Update.
1071         * gnulib/import/itold.c: Update.
1072         * gnulib/import/libc-config.h: Update.
1073         * gnulib/import/limits.in.h: Update.
1074         * gnulib/import/localcharset.c: Update.
1075         * gnulib/import/localcharset.h: Update.
1076         * gnulib/import/localtime-buffer.c: Update.
1077         * gnulib/import/localtime-buffer.h: Update.
1078         * gnulib/import/lstat.c: Update.
1079         * gnulib/import/m4/00gnulib.m4: Update.
1080         * gnulib/import/m4/__inline.m4: Update.
1081         * gnulib/import/m4/absolute-header.m4: Update.
1082         * gnulib/import/m4/alloca.m4: Update.
1083         * gnulib/import/m4/builtin-expect.m4: Update.
1084         * gnulib/import/m4/canonicalize.m4: Update.
1085         * gnulib/import/m4/chdir-long.m4: Update.
1086         * gnulib/import/m4/close.m4: Update.
1087         * gnulib/import/m4/closedir.m4: Update.
1088         * gnulib/import/m4/configmake.m4: Update.
1089         * gnulib/import/m4/d-ino.m4: Update.
1090         * gnulib/import/m4/d-type.m4: Update.
1091         * gnulib/import/m4/dirent_h.m4: Update.
1092         * gnulib/import/m4/dirfd.m4: Update.
1093         * gnulib/import/m4/dirname.m4: Update.
1094         * gnulib/import/m4/double-slash-root.m4: Update.
1095         * gnulib/import/m4/dup.m4: Update.
1096         * gnulib/import/m4/dup2.m4: Update.
1097         * gnulib/import/m4/eealloc.m4: Update.
1098         * gnulib/import/m4/environ.m4: Update.
1099         * gnulib/import/m4/errno_h.m4: Update.
1100         * gnulib/import/m4/error.m4: Update.
1101         * gnulib/import/m4/exponentd.m4: Update.
1102         * gnulib/import/m4/exponentl.m4: Update.
1103         * gnulib/import/m4/extensions.m4: Update.
1104         * gnulib/import/m4/extern-inline.m4: Update.
1105         * gnulib/import/m4/fchdir.m4: Update.
1106         * gnulib/import/m4/fcntl-o.m4: Update.
1107         * gnulib/import/m4/fcntl.m4: Update.
1108         * gnulib/import/m4/fcntl_h.m4: Update.
1109         * gnulib/import/m4/fdopendir.m4: Update.
1110         * gnulib/import/m4/filenamecat.m4: Update.
1111         * gnulib/import/m4/flexmember.m4: Update.
1112         * gnulib/import/m4/float_h.m4: Update.
1113         * gnulib/import/m4/fnmatch.m4: Update.
1114         * gnulib/import/m4/fnmatch_h.m4: Update.
1115         * gnulib/import/m4/fpieee.m4: Update.
1116         * gnulib/import/m4/frexp.m4: Update.
1117         * gnulib/import/m4/frexpl.m4: Update.
1118         * gnulib/import/m4/fstat.m4: Update.
1119         * gnulib/import/m4/fstatat.m4: Update.
1120         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1121         * gnulib/import/m4/getcwd-path-max.m4: Update.
1122         * gnulib/import/m4/getcwd.m4: Update.
1123         * gnulib/import/m4/getdtablesize.m4: Update.
1124         * gnulib/import/m4/getlogin.m4: Update.
1125         * gnulib/import/m4/getlogin_r.m4: Update.
1126         * gnulib/import/m4/getpagesize.m4: Update.
1127         * gnulib/import/m4/getprogname.m4: Update.
1128         * gnulib/import/m4/gettimeofday.m4: Update.
1129         * gnulib/import/m4/glibc21.m4: Update.
1130         * gnulib/import/m4/glob.m4: Update.
1131         * gnulib/import/m4/glob_h.m4: Update.
1132         * gnulib/import/m4/gnulib-cache.m4: Update.
1133         * gnulib/import/m4/gnulib-common.m4: Update.
1134         * gnulib/import/m4/gnulib-comp.m4: Update.
1135         * gnulib/import/m4/gnulib-tool.m4: Update.
1136         * gnulib/import/m4/hard-locale.m4: Update.
1137         * gnulib/import/m4/include_next.m4: Update.
1138         * gnulib/import/m4/inttypes-pri.m4: Update.
1139         * gnulib/import/m4/inttypes.m4: Update.
1140         * gnulib/import/m4/isnand.m4: Update.
1141         * gnulib/import/m4/isnanl.m4: Update.
1142         * gnulib/import/m4/largefile.m4: Update.
1143         * gnulib/import/m4/limits-h.m4: Update.
1144         * gnulib/import/m4/localcharset.m4: Update.
1145         * gnulib/import/m4/locale-fr.m4: Update.
1146         * gnulib/import/m4/locale-ja.m4: Update.
1147         * gnulib/import/m4/locale-zh.m4: Update.
1148         * gnulib/import/m4/localtime-buffer.m4: Update.
1149         * gnulib/import/m4/longlong.m4: Update.
1150         * gnulib/import/m4/lstat.m4: Update.
1151         * gnulib/import/m4/malloc.m4: Update.
1152         * gnulib/import/m4/malloca.m4: Update.
1153         * gnulib/import/m4/math_h.m4: Update.
1154         * gnulib/import/m4/mbrtowc.m4: Update.
1155         * gnulib/import/m4/mbsinit.m4: Update.
1156         * gnulib/import/m4/mbsrtowcs.m4: Update.
1157         * gnulib/import/m4/mbstate_t.m4: Update.
1158         * gnulib/import/m4/memchr.m4: Update.
1159         * gnulib/import/m4/memmem.m4: Update.
1160         * gnulib/import/m4/mempcpy.m4: Update.
1161         * gnulib/import/m4/memrchr.m4: Update.
1162         * gnulib/import/m4/mkdir.m4: Update.
1163         * gnulib/import/m4/mkstemp.m4: Update.
1164         * gnulib/import/m4/mmap-anon.m4: Update.
1165         * gnulib/import/m4/mode_t.m4: Update.
1166         * gnulib/import/m4/msvc-inval.m4: Update.
1167         * gnulib/import/m4/msvc-nothrow.m4: Update.
1168         * gnulib/import/m4/multiarch.m4: Update.
1169         * gnulib/import/m4/nocrash.m4: Update.
1170         * gnulib/import/m4/off_t.m4: Update.
1171         * gnulib/import/m4/onceonly.m4: Update.
1172         * gnulib/import/m4/open-cloexec.m4: Update.
1173         * gnulib/import/m4/open.m4: Update.
1174         * gnulib/import/m4/openat.m4: Update.
1175         * gnulib/import/m4/opendir.m4: Update.
1176         * gnulib/import/m4/pathmax.m4: Update.
1177         * gnulib/import/m4/rawmemchr.m4: Update.
1178         * gnulib/import/m4/readdir.m4: Update.
1179         * gnulib/import/m4/readlink.m4: Update.
1180         * gnulib/import/m4/realloc.m4: Update.
1181         * gnulib/import/m4/rename.m4: Update.
1182         * gnulib/import/m4/rewinddir.m4: Update.
1183         * gnulib/import/m4/rmdir.m4: Update.
1184         * gnulib/import/m4/save-cwd.m4: Update.
1185         * gnulib/import/m4/secure_getenv.m4: Update.
1186         * gnulib/import/m4/setenv.m4: Update.
1187         * gnulib/import/m4/signal_h.m4: Update.
1188         * gnulib/import/m4/ssize_t.m4: Update.
1189         * gnulib/import/m4/stat-time.m4: Update.
1190         * gnulib/import/m4/stat.m4: Update.
1191         * gnulib/import/m4/std-gnu11.m4: Update.
1192         * gnulib/import/m4/stdbool.m4: Update.
1193         * gnulib/import/m4/stddef_h.m4: Update.
1194         * gnulib/import/m4/stdint.m4: Update.
1195         * gnulib/import/m4/stdio_h.m4: Update.
1196         * gnulib/import/m4/stdlib_h.m4: Update.
1197         * gnulib/import/m4/strchrnul.m4: Update.
1198         * gnulib/import/m4/strdup.m4: Update.
1199         * gnulib/import/m4/strerror.m4: Update.
1200         * gnulib/import/m4/string_h.m4: Update.
1201         * gnulib/import/m4/strstr.m4: Update.
1202         * gnulib/import/m4/strtok_r.m4: Update.
1203         * gnulib/import/m4/sys_socket_h.m4: Update.
1204         * gnulib/import/m4/sys_stat_h.m4: Update.
1205         * gnulib/import/m4/sys_time_h.m4: Update.
1206         * gnulib/import/m4/sys_types_h.m4: Update.
1207         * gnulib/import/m4/tempname.m4: Update.
1208         * gnulib/import/m4/time_h.m4: Update.
1209         * gnulib/import/m4/unistd-safer.m4: Update.
1210         * gnulib/import/m4/unistd_h.m4: Update.
1211         * gnulib/import/m4/warn-on-use.m4: Update.
1212         * gnulib/import/m4/wchar_h.m4: Update.
1213         * gnulib/import/m4/wchar_t.m4: Update.
1214         * gnulib/import/m4/wctype_h.m4: Update.
1215         * gnulib/import/m4/wint_t.m4: Update.
1216         * gnulib/import/malloc.c: Update.
1217         * gnulib/import/malloc/scratch_buffer.h: Update.
1218         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1219         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1220         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1221         * gnulib/import/malloca.c: Update.
1222         * gnulib/import/malloca.h: Update.
1223         * gnulib/import/malloca.valgrind: Update.
1224         * gnulib/import/math.in.h: Update.
1225         * gnulib/import/mbrtowc.c: Update.
1226         * gnulib/import/mbsinit.c: Update.
1227         * gnulib/import/mbsrtowcs-impl.h: Update.
1228         * gnulib/import/mbsrtowcs-state.c: Update.
1229         * gnulib/import/mbsrtowcs.c: Update.
1230         * gnulib/import/memchr.c: Update.
1231         * gnulib/import/memmem.c: Update.
1232         * gnulib/import/mempcpy.c: Update.
1233         * gnulib/import/memrchr.c: Update.
1234         * gnulib/import/mkdir.c: Update.
1235         * gnulib/import/mkstemp.c: Update.
1236         * gnulib/import/msvc-inval.c: Update.
1237         * gnulib/import/msvc-inval.h: Update.
1238         * gnulib/import/msvc-nothrow.c: Update.
1239         * gnulib/import/msvc-nothrow.h: Update.
1240         * gnulib/import/open.c: Update.
1241         * gnulib/import/openat-die.c: Update.
1242         * gnulib/import/openat-priv.h: Update.
1243         * gnulib/import/openat-proc.c: Update.
1244         * gnulib/import/openat.c: Update.
1245         * gnulib/import/openat.h: Update.
1246         * gnulib/import/opendir.c: Update.
1247         * gnulib/import/pathmax.h: Update.
1248         * gnulib/import/pipe-safer.c: Update.
1249         * gnulib/import/rawmemchr.c: Update.
1250         * gnulib/import/readdir.c: Update.
1251         * gnulib/import/readlink.c: Update.
1252         * gnulib/import/realloc.c: Update.
1253         * gnulib/import/ref-add.sin: Update.
1254         * gnulib/import/ref-del.sin: Update.
1255         * gnulib/import/rename.c: Update.
1256         * gnulib/import/rewinddir.c: Update.
1257         * gnulib/import/rmdir.c: Update.
1258         * gnulib/import/same-inode.h: Update.
1259         * gnulib/import/save-cwd.c: Update.
1260         * gnulib/import/save-cwd.h: Update.
1261         * gnulib/import/scratch_buffer.h: Update.
1262         * gnulib/import/secure_getenv.c: Update.
1263         * gnulib/import/setenv.c: Update.
1264         * gnulib/import/signal.in.h: Update.
1265         * gnulib/import/stat-time.c: Update.
1266         * gnulib/import/stat-time.h: Update.
1267         * gnulib/import/stat-w32.c: Update.
1268         * gnulib/import/stat-w32.h: Update.
1269         * gnulib/import/stat.c: Update.
1270         * gnulib/import/stdbool.in.h: Update.
1271         * gnulib/import/stddef.in.h: Update.
1272         * gnulib/import/stdint.in.h: Update.
1273         * gnulib/import/stdio.in.h: Update.
1274         * gnulib/import/stdlib.in.h: Update.
1275         * gnulib/import/str-two-way.h: Update.
1276         * gnulib/import/strchrnul.c: Update.
1277         * gnulib/import/strdup.c: Update.
1278         * gnulib/import/streq.h: Update.
1279         * gnulib/import/strerror-override.c: Update.
1280         * gnulib/import/strerror-override.h: Update.
1281         * gnulib/import/strerror.c: Update.
1282         * gnulib/import/string.in.h: Update.
1283         * gnulib/import/stripslash.c: Update.
1284         * gnulib/import/strnlen1.c: Update.
1285         * gnulib/import/strnlen1.h: Update.
1286         * gnulib/import/strstr.c: Update.
1287         * gnulib/import/strtok_r.c: Update.
1288         * gnulib/import/sys_stat.in.h: Update.
1289         * gnulib/import/sys_time.in.h: Update.
1290         * gnulib/import/sys_types.in.h: Update.
1291         * gnulib/import/tempname.c: Update.
1292         * gnulib/import/tempname.h: Update.
1293         * gnulib/import/time.in.h: Update.
1294         * gnulib/import/unistd--.h: Update.
1295         * gnulib/import/unistd-safer.h: Update.
1296         * gnulib/import/unistd.in.h: Update.
1297         * gnulib/import/unsetenv.c: Update.
1298         * gnulib/import/verify.h: Update.
1299         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1300         * gnulib/import/wchar.in.h: Update.
1301         * gnulib/import/wctype.in.h: Update.
1302         * gnulib/import/xalloc-oversized.h: Update.
1303         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1304         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1305
1306 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1307
1308         * record-btrace.c (get_thread_current_frame): Remove
1309         old_inferior_ptid.
1310
1311 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1312
1313         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1314         with check_tag to 1 if and only if the type is tagged and the
1315         component being searched cannot been found in the current
1316         view. Otherwise, always call ada_to_fixed_type with
1317         check_tag to 0.
1318
1319 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1320
1321         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1322         declaration.
1323         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1324         * ada-varobj.c (ada_varobj_get_number_of_children,
1325         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1326
1327 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1328
1329         * ada-valprint.c (ada_value_print): Use type instead of
1330         enclosing type.
1331
1332 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1333
1334         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1335         an array of access to unconstrained array.
1336
1337 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1338
1339         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1340         (ada_check_typedef): Use it.
1341
1342 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1343
1344         * ada-varobj.c (ada_varobj_describe_struct_child)
1345         (ada_varobj_describe_child): Handle union case like struct one.
1346
1347 2018-09-10  Tom Tromey  <tom@tromey.com>
1348
1349         PR python/18380:
1350         * python/python.c (_initialize_python): Make example in "python"
1351         help work in Python 3.
1352
1353 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1354
1355         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1356         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1357         $(EXEEXT) to the script, as it is not a program.
1358
1359 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1360
1361         * python/py-prettyprint.c (pretty_print_one_value): Return
1362         gdbpy_ref<>.
1363         (print_string_repr): Adjust.
1364         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1365         * python/python-internal.h (apply_varobj_pretty_printer): Return
1366         gdbpy_ref<>.
1367         * varobj.c (varobj_value_get_print_value): Adjust.
1368
1369 2018-09-08  Tom Tromey  <tom@tromey.com>
1370
1371         PR python/16047:
1372         * python/py-prettyprint.c (pretty_print_one_value): Check for
1373         to_string method.
1374
1375 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1376
1377         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1378         replace_operator_with_call.
1379
1380 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1381
1382         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1383
1384 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1385
1386         * ada-typeprint.c (print_range): Print the bounds using TYPE
1387         rather than its TYPE_TARGET_TYPE.
1388
1389 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1390
1391         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1392         call to ada_to_fixed_value_create.
1393
1394 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1395
1396         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1397
1398 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1399
1400         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1401         by calls to error.
1402
1403 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1404
1405         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1406         Move update of loop variable "fi".
1407
1408 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1409
1410         * ada-lang.c (value_assign_to_component): In the case of
1411         big-endian targets, extract the bits of the given VAL
1412         using an src_offset of zero if container is not a scalar.
1413
1414 2018-09-06  Simon Ser  <contact@emersion.fr>
1415
1416         PR gdb/23105
1417         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1418         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1419         * fbsd-tdep.c (fbsd_make_note_desc): New.
1420         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1421         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1422         * target.h (enum target_object) Add FreeBSD-specific
1423         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1424
1425 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1426
1427         * compile/compile-c.h (generate_c_for_variable_locations):
1428         Change reference to pointer.
1429         * compile/compile-c-support.c (compile_program) <compute>:
1430         Likewise.
1431         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1432         (generate_c_for_for_one_variable): Likewise
1433         (generate_c_for_variable_locations): Likewise
1434         * compile/compile-c-types.c (compile_c_instance::convert_type):
1435         Likewise
1436         * compile/compile-cplus-symbols.c (convert_one_symbol):
1437         std::move the scope passed to enter_scope.
1438         * compile/compile-cplus-types.c
1439         (compile_cplus_instance::enter_scope): Make parameter
1440         rvalue-reference.
1441         (compile_cplus_instance::new_scope): Change reference to
1442         pointer.
1443         (compile_cplus_instance::convert_type): Likewise
1444         (compile_cplus_convert_typedef): std::move the scope passed to
1445         enter_scope.
1446         (compile_cplus_convert_struct_or_union): Likewise.
1447         (compile_cplus_convert_enum): Likewise.
1448         (compile_cplus_convert_namespace): Likewise.
1449         * compile/compile-cplus.h (compile_cplus_instance)
1450         <enter_scope>: Make parameter rvalue-reference.
1451         * compile/compile-internal.h (compile_instance)
1452         <get_cached_type>: Likewise
1453         * compile/compile-loc2c.c (push): Likewise
1454         (pushf): Likewise
1455         (unary): Likewise
1456         (binary): Likewise
1457         (print_label): Likewise
1458         (pushf_register_address): Likewise
1459         (pushf_register): Likewise
1460         (do_compile_dwarf_expr_to_c): Likewise
1461         (compile_dwarf_expr_to_c): Likewise
1462         (compile_dwarf_bounds_to_c): Likewise
1463         * compile/compile.c (compile_instance::get_cached_type):
1464         Likewise
1465         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1466         (compile_dwarf_bounds_to_c): Likewise
1467         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1468         (dwarf2_compile_property_to_c): Likewise
1469         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1470         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1471         Likewise
1472
1473 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1474
1475         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1476         * tui/tui-data.c (init_content_element): Don't initialize it.
1477
1478 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1479
1480         * tui/tui-data.h (struct tui_win_info)
1481         <detail::opaque>: Remove.
1482         * tui/tui-data.c (init_win_info): Remove assignment.
1483
1484 2018-09-05  Tom Tromey  <tom@tromey.com>
1485
1486         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1487         -Wformat-nonliteral.
1488         * target-float.c (host_float_ops<T>::to_string)
1489         (host_float_ops<T>::from_string): Use
1490         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1491         * configure: Rebuild.
1492
1493 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1494
1495         * printcmd.c (printf_c_string): Use
1496         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1497         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1498
1499 2018-09-05  Tom Tromey  <tom@tromey.com>
1500
1501         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1502
1503 2018-09-05  Tom de Vries  <tdevries@suse.de>
1504
1505         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1506         with resolve_abstract_p == true.
1507         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1508         defaulting to false. Propagate resolve_abstract_p to
1509         dwarf2_fetch_die_loc_sect_off.
1510         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1511         parameter, defaulting to false.
1512         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1513         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1514         parameter.
1515         * dwarf2read.h (struct die_info): Forward-declare.
1516         (die_info_ptr): New typedef.
1517         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1518
1519 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1520
1521         GDB 8.2 released.
1522
1523 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1524             Pedro Alves  <palves@redhat.com>
1525
1526         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1527         "aclocal-m4-deps.mk".  Include file here.
1528         $(srcdir)/aclocal.m4: Add "configure.ac".
1529         * gnulib/aclocal-m4-deps.mk: New file.
1530         * gnulib/update-gnulib.sh: Automatically update
1531         "aclocal-m4-deps.mk".
1532
1533 2018-09-04  Tom Tromey  <tom@tromey.com>
1534
1535         * configure: Rebuild.
1536         * configure.ac: Remove multi-ice code.
1537
1538 2018-09-04  Tom Tromey  <tom@tromey.com>
1539
1540         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1541         (ada-exp.o): Update.
1542
1543 2018-09-04  Tom Tromey  <tom@tromey.com>
1544
1545         * Makefile.in (printcmd.o, target-float.o): Remove.
1546         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1547
1548 2018-09-04  Tom Tromey  <tom@tromey.com>
1549
1550         * gnulib/Makefile.in: Remove obsolete comment.
1551         * Makefile.in: Remove obsolete comment.
1552
1553 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1554
1555         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1556         line with '+'.
1557
1558 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1559
1560         * riscv-tdep.c: Add 'prologue-value.h' include.
1561         (struct riscv_unwind_cache): New struct.
1562         (riscv_debug_unwinder): New global.
1563         (riscv_scan_prologue): Update arguments, capture register details
1564         from prologue scan.
1565         (riscv_skip_prologue): Reformat arguments line, move end of
1566         prologue calculation into riscv_scan_prologue.
1567         (riscv_frame_cache): Update return type, create
1568         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1569         details.
1570         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1571         (riscv_frame_prev_register): Use the trad_frame within the
1572         riscv_unwind_cache.
1573         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1574         flag.
1575
1576 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1577
1578         * trad-frame.h (trad_frame_set_realreg): Declare.
1579         (trad_frame_set_addr): Declare.
1580         * trad-frame.c (trad_frame_set_realreg): Define new function.
1581         (trad_frame_set_addr): Define new function.
1582         (trad_frame_set_reg_realreg): Use new function.
1583         (trad_frame_set_reg_addr): Use new function.
1584
1585 2018-09-01  Keith Seitz  <keiths@redhat.com>
1586
1587         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1588         pulongest instead of "%lld".
1589         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1590         ATTRIBUTE_UNUSED.
1591
1592 2018-08-31  Tom Tromey  <tom@tromey.com>
1593
1594         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1595         variant part type.
1596
1597 2018-08-31  Pedro Alves  <palves@redhat.com>
1598
1599         * gdbarch.h: Regenerate.
1600
1601 2018-08-31  Pedro Alves  <palves@redhat.com>
1602
1603         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1604         * target.h (Hardware watchpoint interfaces): Describe
1605         continuable/steppable/non-steppable watchpoints.
1606         * gdbarch.h, gdbarch.c: Regenerate.
1607
1608 2018-08-31  Pedro Alves  <palves@redhat.com>
1609
1610         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1611         Delete.
1612         * s390-linux-nat.c
1613         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1614         * target.h (target_ops::have_continuable_watchpoint): Delete.
1615         (target_have_continuable_watchpoint): Delete.
1616         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1617         * target-delegates.c: Regenerate.
1618
1619 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1620
1621         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1622         the files present in "gnulib/import/m4/".
1623
1624 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1625
1626         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1627         c.sw, c.swsp, and c.sdsp.
1628
1629 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1630
1631         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1632         (riscv_read_misa_reg): Don't cache value read into inferior data.
1633         (riscv_new_inferior_data): Delete.
1634         (riscv_inferior_data_cleanup): Delete.
1635         (riscv_inferior_data): Delete.
1636         (riscv_invalidate_inferior_data): Delete.
1637         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1638
1639 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1640
1641         * compile/compile-cplus-types.c
1642         (compile_cplus_instance::leave_scope): Take the address of scope
1643         object.
1644         (compile_cplus_instance::convert_qualified_base): Compare quals
1645         to 0.
1646
1647 2018-08-30  Keith Seitz  <keiths@redhat.com>
1648
1649         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1650         Use "%s" and host_address_to_string instead of "%p" in printf.
1651
1652 2018-08-29  Keith Seitz  <keiths@redhat.com>
1653
1654         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1655         and compile-cplus-types.c.
1656         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1657         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1658         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1659         Declare.
1660         * compile/compile-c-support.c: Include compile-cplus.h.
1661         (load_libcompile): Templatize.
1662         (get_compile_context): "New" function.
1663         (c_get_compile_context): Use get_compile_context.
1664         (cplus_get_compile_context): New function.
1665         (cplus_push_user_expression, cplus_pop_user_expression)
1666         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1667         (cplus_compute_program): Define new structs/functions.
1668         * compile/compile-cplus-symmbols.c: New file.
1669         * compile/compile-cplus-types.c: New file.
1670         * compile/compile-cplus.h: New file.
1671         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1672         Declare.
1673         * compile/compile-object-load.c (get_out_value_type): Use
1674         strncmp_iw when comparing symbol names.
1675         (compile_object_load): Add mst_bss and mst_data.
1676         * compile/compile.c (_initialize_compile): Remove
1677         -Wno-implicit-function-declaration from `compile_args'.
1678         * compile/gcc-cp-plugin.h: New file.
1679         * NEWS: Mention C++ compile support and new debug options.
1680
1681 2018-08-29  Keith Seitz  <keiths@redhat.com>
1682
1683         * linespec.c (collect_info::add_symbol): Make virtual.
1684         (struct symbol_searcher_collect_info): New struct.
1685         (symbol_searcher::find_all_symbols): New method.
1686         * symtab.h (class symbol_searcher): New class.
1687
1688 2018-08-29  Keith Seitz  <keiths@redhat.com>
1689
1690         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1691         Change to vector of block_symbol.  Update all users.
1692         (struct collect_info) <symbols>: Likewise.
1693         (collect_info::add_symbol): Take block_symbol as argument.
1694         Update all callers.
1695         (decode_compound_collector) <m_symbols>: Change type to vector
1696         of block_symbol.  Update all users.
1697         (decode_compound_collector::operator ()): Change parameter type
1698         to block_symbol.
1699         (find_method, find_function_symbols, find_linespec_symbols)
1700         (find_label_symbols_in_block, find_label_symbols): Change symbol
1701         vectors to block_symbol vectors.
1702         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1703         block_symbol.
1704
1705 2018-08-29  Keith Seitz  <keiths@redhat.com>
1706
1707         * linespec.c (symbolp): Remove typedef and VEC definitions.
1708         (bound_minimal_symbol_d): Likewise.
1709
1710 2018-08-29  Keith Seitz  <keiths@redhat.com>
1711
1712         * linespec.c (decode_compound_collector::decode_compound_collector):
1713         Remove initialization for `m_symtabs'.
1714         (decode_compound_collector::release_symbols): Change return type
1715         to std::vector.  Update all callers.
1716         (class decode_compound_collector) <m_symbols>: Change type to
1717         std::vector.
1718         (lookup_prefix_sym): Change return type to std::vector.  Update all
1719         callers.
1720         (compare_symbols): Remove.
1721         (std_compare_symbols): Rename to `compare_symbols'.
1722         (find_method): Change `sym_classes' parameter to std::vector.
1723         Update all callers.  Use std::sort to sort sym_classes.
1724         (find_linespec_symbols): Remove cleanup.
1725
1726 2018-08-29  Keith Seitz  <keiths@redhat.com>
1727
1728         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1729         std::vector.  Update all users.
1730         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1731         (struct collect_info) <minimal_symbols>: Likewise.
1732         (compare_msymbols): Return bool.  Change parameters to const
1733         bound_minimal_symbol references.
1734         (find_method, find_function_symbols, find_linespec_symbols): Change
1735         `minsyms' parameter to std::vector.  Update all callers.
1736
1737 2018-08-29  Keith Seitz  <keiths@redhat.com>
1738
1739         * linespec.c (struct linespec) <label_symbols>: Change type to
1740         std::vector.  Update all users.
1741         (find_label_symbols_in_block): Change `result' parameter to
1742         std::vector.  Update all callers.
1743         (find_label_symbols): Return std::vector.  Update all callers.
1744
1745 2018-08-29  Keith Seitz  <keiths@redhat.com>
1746
1747         * linespec.c (struct linespec) <function_symbols>: Change type to
1748         std::vector.  Update all users.
1749         (struct collect_info) <function_symbols>: Likewise.
1750         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1751         (std_compare_symbols): New function.
1752         (find_method, find_function_symbols, find_linespec_symbols)
1753         (find_label_symbols_in_block): Change `symbols' parameter to
1754         std::vector.  Update all callers.
1755         (find_label_symbols): Likewise for `function_symbols' and
1756         `label_funcs_ret'.
1757
1758 2018-08-29  Keith Seitz  <keiths@redhat.com>
1759
1760         * linespec.c (symtab_vector_up): Define.
1761         (struct linespec) <file_symtabs>: Change type to std::vector *.
1762         Update all uses.
1763         (struct collect_info) <file_symtabs>: Likewise.
1764         (collect_symtabs_from_filename): Return symtab_vector_up.
1765         Update all callers.
1766         (decode_objc): Remove cleanup.
1767         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1768         (symtab_collector::release_symtabs): Return symtab_vector_up.
1769         Update all callers.
1770         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1771         Update all users.
1772         (collect_symtabs_from_filename, symtabs_from_filename): Return
1773         symtab_vector_up.  Update all callers.
1774
1775 2018-08-29  Tom Tromey  <tom@tromey.com>
1776
1777         * csky-tdep.c (csky_analyze_prologue): Use
1778         core_addr_to_string_nz.
1779
1780 2018-08-29  Tom Tromey  <tom@tromey.com>
1781
1782         * windows-nat.c (struct xlate_exception) <them>: Change type to
1783         DWORD.
1784         (xlate): Fix formatting.  Remove last entry.
1785         (struct xlate_exception, xlate): Comment out.
1786         (windows_nat_target::resume): Use ranged for.
1787
1788 2018-08-29  Jim Wilson  <jimw@sifive.com>
1789
1790         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1791         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1792         of NT_PRFPREG.
1793         (riscv_linux_nat_target::store_registers): Likewise.
1794
1795 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1796
1797         PR gdb/23555
1798         PR gdb/23558
1799         * gnulib/aclocal.m4: Regenerate.
1800         * gnulib/config.in: Regenerate.
1801         * gnulib/configure: Regenerate.
1802         * gnulib/import/Makefile.am: Update.
1803         * gnulib/import/Makefile.in: Update.
1804         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1805         * gnulib/import/_Noreturn.h: ... this.
1806         * gnulib/import/alloca.in.h: Update.
1807         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1808         * gnulib/import/arg-nonnull.h: ... this.
1809         * gnulib/import/assure.h: Update.
1810         * gnulib/import/at-func.c: Update.
1811         * gnulib/import/basename-lgpl.c: Update.
1812         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1813         * gnulib/import/c++defs.h: ... this.
1814         * gnulib/import/canonicalize-lgpl.c: Update.
1815         * gnulib/import/cdefs.h: Update.
1816         * gnulib/import/chdir-long.c: Update.
1817         * gnulib/import/chdir-long.h: Update.
1818         * gnulib/import/cloexec.c: Update.
1819         * gnulib/import/cloexec.h: Update.
1820         * gnulib/import/close.c: Update.
1821         * gnulib/import/closedir.c: Update.
1822         * gnulib/import/config.charset: Update.
1823         * gnulib/import/dirent-private.h: Update.
1824         * gnulib/import/dirent.in.h: Update.
1825         * gnulib/import/dirfd.c: Update.
1826         * gnulib/import/dirname-lgpl.c: Update.
1827         * gnulib/import/dirname.h: Update.
1828         * gnulib/import/dosname.h: Update.
1829         * gnulib/import/dup-safer-flag.c: Update.
1830         * gnulib/import/dup-safer.c: Update.
1831         * gnulib/import/dup.c: Update.
1832         * gnulib/import/dup2.c: Update.
1833         * gnulib/import/errno.in.h: Update.
1834         * gnulib/import/error.c: Update.
1835         * gnulib/import/error.h: Update.
1836         * gnulib/import/exitfail.c: Update.
1837         * gnulib/import/exitfail.h: Update.
1838         * gnulib/import/extra/update-copyright: Update.
1839         * gnulib/import/fchdir.c: Update.
1840         * gnulib/import/fcntl.c: Update.
1841         * gnulib/import/fcntl.in.h: Update.
1842         * gnulib/import/fd-hook.c: Update.
1843         * gnulib/import/fd-hook.h: Update.
1844         * gnulib/import/fd-safer-flag.c: Update.
1845         * gnulib/import/fd-safer.c: Update.
1846         * gnulib/import/fdopendir.c: Update.
1847         * gnulib/import/filename.h: Update.
1848         * gnulib/import/filenamecat-lgpl.c: Update.
1849         * gnulib/import/filenamecat.h: Update.
1850         * gnulib/import/flexmember.h: Update.
1851         * gnulib/import/float+.h: Update.
1852         * gnulib/import/float.c: Update.
1853         * gnulib/import/float.in.h: Update.
1854         * gnulib/import/fnmatch.c: Update.
1855         * gnulib/import/fnmatch.in.h: Update.
1856         * gnulib/import/fnmatch_loop.c: Update.
1857         * gnulib/import/fpucw.h: Update.
1858         * gnulib/import/frexp.c: Update.
1859         * gnulib/import/frexpl.c: Update.
1860         * gnulib/import/fstat.c: Update.
1861         * gnulib/import/fstatat.c: Update.
1862         * gnulib/import/getcwd-lgpl.c: Update.
1863         * gnulib/import/getcwd.c: Update.
1864         * gnulib/import/getdtablesize.c: Update.
1865         * gnulib/import/getlogin_r.c: Update.
1866         * gnulib/import/getprogname.c: Update.
1867         * gnulib/import/getprogname.h: Update.
1868         * gnulib/import/gettext.h: Update.
1869         * gnulib/import/gettimeofday.c: Update.
1870         * gnulib/import/glob-libc.h: Update.
1871         * gnulib/import/glob.c: Update.
1872         * gnulib/import/glob.in.h: Update.
1873         * gnulib/import/glob_internal.h: Update.
1874         * gnulib/import/glob_pattern_p.c: Update.
1875         * gnulib/import/globfree.c: Update.
1876         * gnulib/import/hard-locale.c: Update.
1877         * gnulib/import/hard-locale.h: Update.
1878         * gnulib/import/intprops.h: Update.
1879         * gnulib/import/inttypes.in.h: Update.
1880         * gnulib/import/isnan.c: Update.
1881         * gnulib/import/isnand-nolibm.h: Update.
1882         * gnulib/import/isnand.c: Update.
1883         * gnulib/import/isnanl-nolibm.h: Update.
1884         * gnulib/import/isnanl.c: Update.
1885         * gnulib/import/itold.c: Update.
1886         * gnulib/import/libc-config.h: Update.
1887         * gnulib/import/limits.in.h: Update.
1888         * gnulib/import/localcharset.c: Update.
1889         * gnulib/import/localcharset.h: Update.
1890         * gnulib/import/localtime-buffer.c: Update.
1891         * gnulib/import/localtime-buffer.h: Update.
1892         * gnulib/import/lstat.c: Update.
1893         * gnulib/import/m4/00gnulib.m4: Update.
1894         * gnulib/import/m4/__inline.m4: Update.
1895         * gnulib/import/m4/absolute-header.m4: Update.
1896         * gnulib/import/m4/alloca.m4: Update.
1897         * gnulib/import/m4/builtin-expect.m4: Update.
1898         * gnulib/import/m4/canonicalize.m4: Update.
1899         * gnulib/import/m4/chdir-long.m4: Update.
1900         * gnulib/import/m4/close.m4: Update.
1901         * gnulib/import/m4/closedir.m4: Update.
1902         * gnulib/import/m4/configmake.m4: Update.
1903         * gnulib/import/m4/d-ino.m4: Update.
1904         * gnulib/import/m4/d-type.m4: Update.
1905         * gnulib/import/m4/dirent_h.m4: Update.
1906         * gnulib/import/m4/dirfd.m4: Update.
1907         * gnulib/import/m4/dirname.m4: Update.
1908         * gnulib/import/m4/double-slash-root.m4: Update.
1909         * gnulib/import/m4/dup.m4: Update.
1910         * gnulib/import/m4/dup2.m4: Update.
1911         * gnulib/import/m4/eealloc.m4: Update.
1912         * gnulib/import/m4/environ.m4: Update.
1913         * gnulib/import/m4/errno_h.m4: Update.
1914         * gnulib/import/m4/error.m4: Update.
1915         * gnulib/import/m4/exponentd.m4: Update.
1916         * gnulib/import/m4/exponentl.m4: Update.
1917         * gnulib/import/m4/extensions.m4: Update.
1918         * gnulib/import/m4/extern-inline.m4: Update.
1919         * gnulib/import/m4/fchdir.m4: Update.
1920         * gnulib/import/m4/fcntl-o.m4: Update.
1921         * gnulib/import/m4/fcntl.m4: Update.
1922         * gnulib/import/m4/fcntl_h.m4: Update.
1923         * gnulib/import/m4/fdopendir.m4: Update.
1924         * gnulib/import/m4/filenamecat.m4: Update.
1925         * gnulib/import/m4/flexmember.m4: Update.
1926         * gnulib/import/m4/float_h.m4: Update.
1927         * gnulib/import/m4/fnmatch.m4: Update.
1928         * gnulib/import/m4/fnmatch_h.m4: Update.
1929         * gnulib/import/m4/fpieee.m4: Update.
1930         * gnulib/import/m4/frexp.m4: Update.
1931         * gnulib/import/m4/frexpl.m4: Update.
1932         * gnulib/import/m4/fstat.m4: Update.
1933         * gnulib/import/m4/fstatat.m4: Update.
1934         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1935         * gnulib/import/m4/getcwd-path-max.m4: Update.
1936         * gnulib/import/m4/getcwd.m4: Update.
1937         * gnulib/import/m4/getdtablesize.m4: Update.
1938         * gnulib/import/m4/getlogin.m4: Update.
1939         * gnulib/import/m4/getlogin_r.m4: Update.
1940         * gnulib/import/m4/getpagesize.m4: Update.
1941         * gnulib/import/m4/getprogname.m4: Update.
1942         * gnulib/import/m4/gettimeofday.m4: Update.
1943         * gnulib/import/m4/glibc21.m4: Update.
1944         * gnulib/import/m4/glob.m4: Update.
1945         * gnulib/import/m4/glob_h.m4: Update.
1946         * gnulib/import/m4/gnulib-cache.m4: Update.
1947         * gnulib/import/m4/gnulib-common.m4: Update.
1948         * gnulib/import/m4/gnulib-comp.m4: Update.
1949         * gnulib/import/m4/gnulib-tool.m4: Update.
1950         * gnulib/import/m4/hard-locale.m4: Update.
1951         * gnulib/import/m4/include_next.m4: Update.
1952         * gnulib/import/m4/inttypes-pri.m4: Update.
1953         * gnulib/import/m4/inttypes.m4: Update.
1954         * gnulib/import/m4/isnand.m4: Update.
1955         * gnulib/import/m4/isnanl.m4: Update.
1956         * gnulib/import/m4/largefile.m4: Update.
1957         * gnulib/import/m4/limits-h.m4: Update.
1958         * gnulib/import/m4/localcharset.m4: Update.
1959         * gnulib/import/m4/locale-fr.m4: Update.
1960         * gnulib/import/m4/locale-ja.m4: Update.
1961         * gnulib/import/m4/locale-zh.m4: Update.
1962         * gnulib/import/m4/localtime-buffer.m4: Update.
1963         * gnulib/import/m4/longlong.m4: Update.
1964         * gnulib/import/m4/lstat.m4: Update.
1965         * gnulib/import/m4/malloc.m4: Update.
1966         * gnulib/import/m4/malloca.m4: Update.
1967         * gnulib/import/m4/math_h.m4: Update.
1968         * gnulib/import/m4/mbrtowc.m4: Update.
1969         * gnulib/import/m4/mbsinit.m4: Update.
1970         * gnulib/import/m4/mbsrtowcs.m4: Update.
1971         * gnulib/import/m4/mbstate_t.m4: Update.
1972         * gnulib/import/m4/memchr.m4: Update.
1973         * gnulib/import/m4/memmem.m4: Update.
1974         * gnulib/import/m4/mempcpy.m4: Update.
1975         * gnulib/import/m4/memrchr.m4: Update.
1976         * gnulib/import/m4/mkdir.m4: Update.
1977         * gnulib/import/m4/mkstemp.m4: Update.
1978         * gnulib/import/m4/mmap-anon.m4: Update.
1979         * gnulib/import/m4/mode_t.m4: Update.
1980         * gnulib/import/m4/msvc-inval.m4: Update.
1981         * gnulib/import/m4/msvc-nothrow.m4: Update.
1982         * gnulib/import/m4/multiarch.m4: Update.
1983         * gnulib/import/m4/nocrash.m4: Update.
1984         * gnulib/import/m4/off_t.m4: Update.
1985         * gnulib/import/m4/onceonly.m4: Update.
1986         * gnulib/import/m4/open-cloexec.m4: Update.
1987         * gnulib/import/m4/open.m4: Update.
1988         * gnulib/import/m4/openat.m4: Update.
1989         * gnulib/import/m4/opendir.m4: Update.
1990         * gnulib/import/m4/pathmax.m4: Update.
1991         * gnulib/import/m4/rawmemchr.m4: Update.
1992         * gnulib/import/m4/readdir.m4: Update.
1993         * gnulib/import/m4/readlink.m4: Update.
1994         * gnulib/import/m4/realloc.m4: Update.
1995         * gnulib/import/m4/rename.m4: Update.
1996         * gnulib/import/m4/rewinddir.m4: Update.
1997         * gnulib/import/m4/rmdir.m4: Update.
1998         * gnulib/import/m4/save-cwd.m4: Update.
1999         * gnulib/import/m4/secure_getenv.m4: Update.
2000         * gnulib/import/m4/setenv.m4: Update.
2001         * gnulib/import/m4/signal_h.m4: Update.
2002         * gnulib/import/m4/ssize_t.m4: Update.
2003         * gnulib/import/m4/stat-time.m4: Update.
2004         * gnulib/import/m4/stat.m4: Update.
2005         * gnulib/import/m4/std-gnu11.m4: Update.
2006         * gnulib/import/m4/stdbool.m4: Update.
2007         * gnulib/import/m4/stddef_h.m4: Update.
2008         * gnulib/import/m4/stdint.m4: Update.
2009         * gnulib/import/m4/stdio_h.m4: Update.
2010         * gnulib/import/m4/stdlib_h.m4: Update.
2011         * gnulib/import/m4/strchrnul.m4: Update.
2012         * gnulib/import/m4/strdup.m4: Update.
2013         * gnulib/import/m4/strerror.m4: Update.
2014         * gnulib/import/m4/string_h.m4: Update.
2015         * gnulib/import/m4/strstr.m4: Update.
2016         * gnulib/import/m4/strtok_r.m4: Update.
2017         * gnulib/import/m4/sys_socket_h.m4: Update.
2018         * gnulib/import/m4/sys_stat_h.m4: Update.
2019         * gnulib/import/m4/sys_time_h.m4: Update.
2020         * gnulib/import/m4/sys_types_h.m4: Update.
2021         * gnulib/import/m4/tempname.m4: Update.
2022         * gnulib/import/m4/time_h.m4: Update.
2023         * gnulib/import/m4/unistd-safer.m4: Update.
2024         * gnulib/import/m4/unistd_h.m4: Update.
2025         * gnulib/import/m4/warn-on-use.m4: Update.
2026         * gnulib/import/m4/wchar_h.m4: Update.
2027         * gnulib/import/m4/wchar_t.m4: Update.
2028         * gnulib/import/m4/wctype_h.m4: Update.
2029         * gnulib/import/m4/wint_t.m4: Update.
2030         * gnulib/import/malloc.c: Update.
2031         * gnulib/import/malloc/scratch_buffer.h: Update.
2032         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2033         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2034         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2035         * gnulib/import/malloca.c: Update.
2036         * gnulib/import/malloca.h: Update.
2037         * gnulib/import/malloca.valgrind: Update.
2038         * gnulib/import/math.in.h: Update.
2039         * gnulib/import/mbrtowc.c: Update.
2040         * gnulib/import/mbsinit.c: Update.
2041         * gnulib/import/mbsrtowcs-impl.h: Update.
2042         * gnulib/import/mbsrtowcs-state.c: Update.
2043         * gnulib/import/mbsrtowcs.c: Update.
2044         * gnulib/import/memchr.c: Update.
2045         * gnulib/import/memmem.c: Update.
2046         * gnulib/import/mempcpy.c: Update.
2047         * gnulib/import/memrchr.c: Update.
2048         * gnulib/import/mkdir.c: Update.
2049         * gnulib/import/mkstemp.c: Update.
2050         * gnulib/import/msvc-inval.c: Update.
2051         * gnulib/import/msvc-inval.h: Update.
2052         * gnulib/import/msvc-nothrow.c: Update.
2053         * gnulib/import/msvc-nothrow.h: Update.
2054         * gnulib/import/open.c: Update.
2055         * gnulib/import/openat-die.c: Update.
2056         * gnulib/import/openat-priv.h: Update.
2057         * gnulib/import/openat-proc.c: Update.
2058         * gnulib/import/openat.c: Update.
2059         * gnulib/import/openat.h: Update.
2060         * gnulib/import/opendir.c: Update.
2061         * gnulib/import/pathmax.h: Update.
2062         * gnulib/import/pipe-safer.c: Update.
2063         * gnulib/import/rawmemchr.c: Update.
2064         * gnulib/import/readdir.c: Update.
2065         * gnulib/import/readlink.c: Update.
2066         * gnulib/import/realloc.c: Update.
2067         * gnulib/import/ref-add.sin: Update.
2068         * gnulib/import/ref-del.sin: Update.
2069         * gnulib/import/rename.c: Update.
2070         * gnulib/import/rewinddir.c: Update.
2071         * gnulib/import/rmdir.c: Update.
2072         * gnulib/import/same-inode.h: Update.
2073         * gnulib/import/save-cwd.c: Update.
2074         * gnulib/import/save-cwd.h: Update.
2075         * gnulib/import/scratch_buffer.h: Update.
2076         * gnulib/import/secure_getenv.c: Update.
2077         * gnulib/import/setenv.c: Update.
2078         * gnulib/import/signal.in.h: Update.
2079         * gnulib/import/stat-time.c: Update.
2080         * gnulib/import/stat-time.h: Update.
2081         * gnulib/import/stat-w32.c: Update.
2082         * gnulib/import/stat-w32.h: Update.
2083         * gnulib/import/stat.c: Update.
2084         * gnulib/import/stdbool.in.h: Update.
2085         * gnulib/import/stddef.in.h: Update.
2086         * gnulib/import/stdint.in.h: Update.
2087         * gnulib/import/stdio.in.h: Update.
2088         * gnulib/import/stdlib.in.h: Update.
2089         * gnulib/import/str-two-way.h: Update.
2090         * gnulib/import/strchrnul.c: Update.
2091         * gnulib/import/strdup.c: Update.
2092         * gnulib/import/streq.h: Update.
2093         * gnulib/import/strerror-override.c: Update.
2094         * gnulib/import/strerror-override.h: Update.
2095         * gnulib/import/strerror.c: Update.
2096         * gnulib/import/string.in.h: Update.
2097         * gnulib/import/stripslash.c: Update.
2098         * gnulib/import/strnlen1.c: Update.
2099         * gnulib/import/strnlen1.h: Update.
2100         * gnulib/import/strstr.c: Update.
2101         * gnulib/import/strtok_r.c: Update.
2102         * gnulib/import/sys_stat.in.h: Update.
2103         * gnulib/import/sys_time.in.h: Update.
2104         * gnulib/import/sys_types.in.h: Update.
2105         * gnulib/import/tempname.c: Update.
2106         * gnulib/import/tempname.h: Update.
2107         * gnulib/import/time.in.h: Update.
2108         * gnulib/import/unistd--.h: Update.
2109         * gnulib/import/unistd-safer.h: Update.
2110         * gnulib/import/unistd.in.h: Update.
2111         * gnulib/import/unsetenv.c: Update.
2112         * gnulib/import/verify.h: Update.
2113         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2114         * gnulib/import/wchar.in.h: Update.
2115         * gnulib/import/wctype.in.h: Update.
2116         * gnulib/import/xalloc-oversized.h: Update.
2117         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2118         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2119
2120 2018-08-16  Gary Benson <gbenson@redhat.com>
2121
2122         PR gdb/13000:
2123         * gdb/main.c (captured_main_1): Exit with nonzero status
2124         in batch mode if the last command to be executed failed.
2125         * NEWS: Mention the above.
2126
2127 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2128
2129         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2130         end of warning message.
2131
2132 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2133
2134         PR gdb/22943:
2135         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2136         (aarch64_extract_return_value): Use
2137         aapcs_is_vfp_call_or_return_candidate.
2138         (aarch64_return_in_memory): Likewise.
2139         (aarch64_store_return_value): Likewise.
2140
2141 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2142
2143         * aarch64-tdep.c
2144         (aapcs_is_vfp_call_or_return_candidate): Make static
2145         (pass_in_v_or_stack): Remove function.
2146         (pass_in_v_vfp_candidate): New function.
2147         (aarch64_push_dummy_call): Check for float register candidates.
2148
2149 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2150
2151         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2152         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2153         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2154
2155 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2156
2157         PR build/23399
2158         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2159         (struct ipa_sym_addresses): Rename to...
2160         (struct ipa_sym_addresses_common): ... this.
2161         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2162
2163 2018-08-28  Tom Tromey  <tom@tromey.com>
2164
2165         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2166         (token_fifo): Now a std::vector.
2167         (yylex, c_parse): Update.
2168         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2169         (token_fifo): Now a std::vector.
2170         (yylex, d_parse): Update.
2171         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2172         (token_fifo): Now a std::vector.
2173         (yylex, go_parse): Update.
2174
2175 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2176
2177         * parser-defs.h (struct type_stack) <elements>: Change type to
2178         std::vector<union type_stack_elt>.
2179         <depth, size>: Remove.
2180         * parse.c (parse_exp_in_context_1): Adjust.
2181         (type_stack_reserve): Remove.
2182         (check_type_stack_depth): Remove.
2183         (insert_into_type_stack): Adjust to std::vector.
2184         (insert_type): Likewise.
2185         (push_type): Likewise.
2186         (push_type_int): Likewise.
2187         (insert_type_address_space): Likewise.
2188         (pop_type): Likewise.
2189         (pop_type_int): Likewise.
2190         (pop_typelist): Likewise.
2191         (pop_type_stack): Likewise.
2192         (append_type_stack): Likewise.
2193         (push_type_stack): Likewise.
2194         (get_type_stack): Likewise.
2195         (type_stack_cleanup): Likewise.
2196         (push_typelist): Likewise.
2197         (follow_types): Likewise.
2198         (_initialize_parse): Likewise.
2199
2200 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2201
2202         * NEWS: Mention csky target.
2203
2204 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2205             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2206             Don Breazeal  <donb@codesourcery.com>
2207
2208         * csky-linux-tdep.c: New file.
2209         * csky-tdep.c: Likewise.
2210         * csky-tdep.h: Likewise.
2211         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2212         csky-tdep.o.
2213         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2214         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2215         * configure.tgt: Add csky support.
2216
2217 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2218
2219         * python/py-framefilter.c (py_print_frame): Print frame architecture
2220         when printing on an MI output.
2221
2222 2018-08-27  Tom Tromey  <tom@tromey.com>
2223
2224         PR build/23087:
2225         * configure: Rebuild.
2226         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2227
2228 2018-08-27  Tom Tromey  <tom@tromey.com>
2229
2230         * aarch64-linux-tdep.c
2231         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2232         casts to int.
2233
2234 2018-08-27  Tom Tromey  <tom@tromey.com>
2235
2236         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2237         unsigned.
2238         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2239         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2240         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2241         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2242         unsigned.
2243
2244 2018-08-27  Tom Tromey  <tom@tromey.com>
2245
2246         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2247         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2248
2249 2018-08-27  Tom Tromey  <tom@tromey.com>
2250
2251         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2252         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2253         ULONGEST_MAX.
2254         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2255         ULONGEST_MAX.
2256         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2257         ULONGEST_MAX.
2258         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2259         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2260         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2261         ULONGEST_MAX.
2262         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2263         (ppc64_linux_sigaction_tramp_frame)
2264         (ppc32_linux_sighandler_tramp_frame)
2265         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2266         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2267         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2268         * mn10300-linux-tdep.c (am33_linux_sigframe)
2269         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2270         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2271         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2272         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2273         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2274         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2275         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2276         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2277         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2278         * microblaze-linux-tdep.c
2279         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2280         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2281         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2282         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2283         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2284         * common/common-types.h (ULONGEST_MAX): New define.
2285         (CORE_ADDR_MAX): Fix formatting.
2286         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2287         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2288         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2289         (arm_linux_rt_sigreturn_tramp_frame)
2290         (arm_eabi_linux_sigreturn_tramp_frame)
2291         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2292         (thumb2_eabi_linux_sigreturn_tramp_frame)
2293         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2294         (arm_linux_restart_syscall_tramp_frame)
2295         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2296         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2297         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2298         ULONGEST_MAX.
2299         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2300
2301 2018-08-27  Tom Tromey  <tom@tromey.com>
2302
2303         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2304         CORE_ADDR_MAX.
2305         * mips-tdep.c (mips_deal_with_atomic_sequence)
2306         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2307         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2308         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2309         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2310         CORE_ADDR_MAX.
2311         * aarch64-tdep.c (aarch64_software_single_step): Use
2312         CORE_ADDR_MAX.
2313
2314 2018-08-27  Tom Tromey  <tom@tromey.com>
2315
2316         * linespec.c (complete_linespec_component): Add cast to "char".
2317         * completer.c (completion_tracker::build_completion_result): Add
2318         cast to "char".
2319
2320 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2321
2322         * solist.h (struct solist, struct target_so_ops): Fix
2323         indentation.
2324
2325 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2326
2327         * ada-tasks.c (ada_task_info_s): Remove typedef.
2328         (DEF_VEC_O(ada_task_info_s)): Remove.
2329         (struct ada_tasks_inferior_data): Initialize fields.
2330         <task_list>: Make an std::vector.
2331         (get_ada_tasks_inferior_data): Allocate with new.
2332         (ada_get_task_number): Adjust.
2333         (get_task_number_from_id): Likewise.
2334         (valid_task_id): Likewise.
2335         (ada_get_task_info_from_ptid): Likewise.
2336         (iterate_over_live_ada_tasks): Likewise.
2337         (add_ada_task): Likewise.
2338         (read_known_tasks): Likewise.
2339         (ada_build_task_list): Likewise.
2340         (print_ada_task_info): Likewise.
2341         (info_task): Likewise.
2342         (task_command_1): Likewise.
2343
2344 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2345
2346         * ada-lang.c (add_angle_brackets): Return std::string.
2347
2348 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2349
2350         * python/py-threadevent.c (py_get_event_thread): Initialize
2351         pythread.
2352
2353 2018-08-24  Pedro Alves  <palves@redhat.com>
2354
2355         * python/py-bpevent.c (create_breakpoint_event_object): Use
2356         copy-initialization.
2357         * python/py-continueevent.c (emit_continue_event): Use
2358         copy-initialization.
2359         * python/py-exitedevent.c (create_exited_event_object): Return a
2360         gdbpy_ref<>.
2361         (emit_exited_event): Use copy-initialization.
2362         * python/py-inferior.c (python_new_inferior)
2363         (python_inferior_deleted, add_thread_object): Use
2364         copy-initialization.
2365         * python/py-infevents.c (create_inferior_call_event_object)
2366         (create_register_changed_event_object)
2367         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2368         (emit_inferior_call_event, emit_memory_changed_event)
2369         (emit_register_changed_event): Use copy-initialization.
2370         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2371         Return a gdbpy_ref<>.
2372         (emit_new_objfile_event): Use copy-initialization.
2373         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2374         (emit_clear_objfiles_event): Use copy-initialization.
2375         * python/py-signalevent.c (create_signal_event_object): Use
2376         copy-initialization.
2377         * python/py-threadevent.c (create_thread_event_object): Use
2378         copy-initialization.
2379
2380 2018-08-24  Pedro Alves  <palves@redhat.com>
2381             Simon Marchi  <simon.marchi@ericsson.com>
2382
2383         PR gdb/23379
2384         * python/py-continueevent.c: Include "gdbthread.h".
2385         (create_continue_event_object): Add intro comment.  Add 'ptid'
2386         parameter.  Use it to find thread to pass to
2387         create_thread_event_object.
2388         (emit_continue_event): Pass PTID down to
2389         create_continue_event_object.
2390         * python/py-event.h (py_get_event_thread): Declare.
2391         (create_thread_event_object): Remove default from 'thread'
2392         parameter.
2393         * python/py-stopevent.c (create_stop_event_object): Use
2394         py_get_event_thread.
2395         * python/py-threadevent.c (get_event_thread): Rename to ...
2396         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2397         and use it to find the thread.
2398         (create_thread_event_object): Assert that THREAD isn't null.
2399         Don't find the event thread here.
2400
2401 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2402
2403         * block.h (blockrange, blockranges): New struct declarations.
2404         (struct block): Add new field named `ranges'.
2405         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2406         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2407         macros for accessing ranges in struct block.
2408         (make_blockranges): New declaration.
2409         block.c (make_blockranges): New function.
2410         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2411         for block.
2412         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2413         * blockframe.c (cache_pc_function_block): New static global.
2414         (clear_pc_function_cache): Clear cache_pc_function_block.
2415         (find_pc_partial_function): Move comment to symtab.h.  Add
2416         support for non-contiguous blocks.
2417         * cli/cli-cmds.c (block.h): Include.
2418         (print_disassembly): Handle printing of non-contiguous blocks.
2419         (disassemble_current_function): Likewise.
2420         (disassemble_command): Likewise.
2421
2422         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2423         BLOCK_START.
2424         * blockframe.c (get_pc_function_start): Likewise.
2425         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2426         (gcc_symbol_address): Likewise.
2427         * compile/compile-object-run.c (compile_object_run): Likewise.
2428         * compile/compile.c (get_expr_block_and_pc): Likewise.
2429         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2430         (func_addr_to_tail_call_list): Likewise.
2431         * findvar.c (default_read_var_value): Likewise.
2432         * inline-frame.c (inline_frame_this_id): Likewise.
2433         (skip-inline_frames): Likewise.
2434         * infcmd.c (until_next_command): Likewise.
2435         * linespec.c (convert_linespec_to_sals): Likewise.
2436         * parse.c (parse_exp_in_context_1): Likewise.
2437         * printcmd.c (build_address_symbolic): likewise.
2438         (info_address_command): Likewise.
2439         symtab.c (find_function_start_sal): Likewise.
2440         (skip_prologue_sal): Likewise.
2441         (find_function_alias_target): Likewise.
2442         (find_gnu_ifunc): Likewise.
2443         * stack.c (find_frame_funname): Likewise.
2444         * symtab.c (fixup_symbol_section): Likewise.
2445         (find_function_start_sal): Likewise.
2446         (skip_prologue_sal): Likewsie.
2447         (find_function_alias_target): Likewise.
2448         (find_gnu_ifunc): Likewise.
2449         * tracepoint.c (info_scope_command): Likewise.
2450         * value.c (value_fn_field): Likewise.
2451
2452         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2453         in place of find_pc_partial_function.
2454         * blockframe.c (find_function_entry_range_from_pc): New function.
2455         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2456         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2457         for each range in a block.
2458
2459
2460 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2461
2462         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2463         incrementation.
2464
2465 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2466
2467         * solib-svr4.c (read_program_headers_from_bfd): Return
2468         gdb::optional<gdb::byte_vector>.
2469         (svr4_exec_displacement): Adjust.
2470
2471 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2472
2473         * solib-svr4.c (read_program_header): Return
2474         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2475         (find_program_interpreter): Return
2476         gdb::optional<gdb::byte_vector>.
2477         (scan_dyntag_auxv): Adjust.
2478         (enable_break): Adjust.
2479         (svr4_exec_displacement): Adjust.
2480
2481 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2482
2483         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2484         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2485
2486 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2487
2488         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2489         string_vprintf.
2490         * guile/scm-utils.c (gdbscm_printf): Likewise.
2491         * serial.c (serial_printf): Likewise.
2492         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2493
2494 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2495
2496         * stack.c (print_frame): Print frame architecture when printing on
2497         an MI output.
2498         * NEWS: Mention new "arch" attribute in frame output.
2499
2500 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2501
2502         * arch/aarch64.h (aarch64_regnum): Update comment.
2503
2504 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2505
2506         * NEWS: Add SVE to 8.2 section.
2507
2508 2018-08-21  Pedro Alves  <palves@redhat.com>
2509
2510         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2511         out from gdbscm_parse_function_args.
2512         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2513         gdbscm_parse_function_args_1.
2514
2515 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2516
2517         PR gdb/17816
2518         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2519         operator.
2520
2521 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2522
2523         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2524
2525 2018-08-19  Michael Spang  <spang@google.com>
2526
2527         PR gdb/11786
2528         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2529         for PT_TLS segments.
2530
2531 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2532
2533         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2534         dwarf_variable_value.
2535         * dwarf2-frame.c (class dwarf_expr_executor):
2536         Add override for dwarf_variable_value.
2537         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2538         (class symbol_needs_eval_context): Likewise.
2539         (indirect_synthetic_pointer): Add forward declaration.
2540         (sect_variable_value): New function.
2541         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2542         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2543         for DW_OP_GNU_variable_value.
2544
2545 2018-08-16  Tom Tromey  <tom@tromey.com>
2546
2547         * top.c (read_command_file): Update.
2548         (command_line_input): Remove "repeat" argument.
2549         * ada-lang.c (get_selections): Update.
2550         * linespec.c (decode_line_2): Update.
2551         * defs.h (command_line_input): Remove argument.
2552         * cli/cli-script.c (read_next_line): Update.
2553         * python/py-gdb-readline.c: Update.
2554
2555 2018-08-17  Tom Tromey  <tom@tromey.com>
2556
2557         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2558         command_line_input.
2559
2560 2018-08-15  Tom Tromey  <tom@tromey.com>
2561
2562         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2563
2564 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2565
2566         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2567         If used, use find_pc_partial_function to find address range
2568         to disassemble.
2569         * mi/mi-main.c (mi_cmd_list_features): Report
2570         "data-disassemble-a-option" feature.
2571         * NEWS: Mention new -data-disassemble option -a.
2572
2573 2018-08-13  Tom Tromey  <tom@tromey.com>
2574
2575         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2576
2577 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2578
2579         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2580         (aarch64_linux_collect_sve_regset): Likewise.
2581         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2582         * regcache.h (regcache_map_entry_size): New function.
2583
2584 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2585
2586         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2587         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2588         (SVE_HEADER_VL_LENGTH): Likewise.
2589         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2590         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2591         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2592         (SVE_HEADER_SIZE_OFFSET): Likewise.
2593         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2594         (SVE_HEADER_VL_OFFSET): Likewise.
2595         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2596         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2597         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2598         (SVE_HEADER_SIZE): Likewise.
2599         (aarch64_linux_core_read_vq): Add function.
2600         (aarch64_linux_core_read_description): Check for SVE section.
2601
2602 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2603
2604         * aarch64-fbsd-tdep.c
2605         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2606         collect_size.
2607         * aarch64-linux-tdep.c
2608         (aarch64_linux_iterate_over_regset_sections): Likewise.
2609         * alpha-linux-tdep.c
2610         (alpha_linux_iterate_over_regset_sections):
2611         * alpha-nbsd-tdep.c
2612         (alphanbsd_iterate_over_regset_sections): Likewise.
2613         * amd64-fbsd-tdep.c
2614         (amd64fbsd_iterate_over_regset_sections): Likewise.
2615         * amd64-linux-tdep.c
2616         (amd64_linux_iterate_over_regset_sections): Likewise.
2617         * arm-bsd-tdep.c
2618         (armbsd_iterate_over_regset_sections): Likewise.
2619         * arm-fbsd-tdep.c
2620         (arm_fbsd_iterate_over_regset_sections): Likewise.
2621         * arm-linux-tdep.c
2622         (arm_linux_iterate_over_regset_sections): Likewise.
2623         * corelow.c (get_core_registers_cb): Likewise.
2624         (core_target::fetch_registers): Likewise.
2625         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2626         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2627         * gdbarch.h (void): Regenerate.
2628         * gdbarch.sh: Add supply_size and collect_size.
2629         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2630         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2631         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2632         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2633         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2634         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2635         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2636         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2637         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2638         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2639         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2640         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2641         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2642         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2643         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2644         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2645         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2646         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2647         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2648         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2649         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2650         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2651         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2652         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2653         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2654         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2655         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2656         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2657         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2658         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2659
2660 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2661
2662         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2663         with string_printf.
2664
2665 2018-08-10  Keith Seitz  <keiths@redhat.com>
2666
2667         * compile/compile-c-support.c (add_code_header, add_code_footer):
2668         Move into policy class.
2669         (c_push_user_expression, pop_user_expression_nop)
2670         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2671         (compile_program): New host class.
2672         (c_compile_program): New typedef.
2673         (c_compute_porgram): Use c_compile_program.
2674
2675 2018-08-10  Keith Seitz  <keiths@redhat.com>
2676
2677         * compile/compile-internal.h (compile_instance::~compile_instance):
2678         Remove calls to htab_delete.
2679         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2680         * compile.c (compile_instance::compile_instance): Initialize
2681         htab unique pointers.
2682         (compile_instance::get_cached_type, compile_instance::insert_type)
2683         (compile_instance::error_symbol_once): Update for unique_ptr.
2684
2685 2018-08-10  Keith Seitz  <keiths@redhat.com>
2686
2687         * compile/compile-c-symbols.c (struct symbol_error)
2688         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2689         (compile_instance::insert_symbol_error)
2690         (compile_instance::error_symbol_once): Move to ...
2691         * compile/compile.c: ... here.
2692
2693 2018-08-10  Keith Seitz  <keiths@redhat.com>
2694
2695         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2696         instead of `new_compile_instance'.
2697         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2698         Update description.
2699         If the symbol error map is not initialized, create it.
2700         (generate_c_for_for_one_symbol): Do not check/initialize
2701         the symbol error map.
2702         * compile/compile-c-types.c (compile_c_instance): Make a class.
2703         Update all callers.
2704         (compile_instance::compile_instance): Initialize the type cache.
2705         (get_cached_type): New function.
2706         (insert_type): Update description.
2707         (compile_c_instance::m_default_cflags): Define.
2708         (convert_type): Update description.  Use get_cached_type.
2709         (delete_instance): Moved to destructor.
2710         (new_compile_instance): Moved to constructor.
2711         * compile/compile-c.h (compile_c_instance): Make class inheriting
2712         from compile_instance.
2713         <base>: Remove field.
2714         <type_map, symbol_err_map>: Move to base class.
2715         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2716         * compile/compile-internal.h (compile_instance): Make class.
2717         <type_map_t, symbol_err_map_t>: Define.
2718         <fe>: Rename to `m_gcc_fe'.
2719         <scope, block, gcc_target_options>: Add `m_' prefix.
2720         <m_type_map, m_symbol_err_map>: New fields, moved from
2721         compile_c_instance.
2722         <destroy>: Remove.
2723         (convert_type, new_compile_instance): Remove.
2724         * compile/compile.c (cleanup_compile_instance): Remove.
2725         (compile_to_object): Use unique_ptr to eliminate cleanups.
2726         (compile_instance::set_print_callback, compile_instance::version)
2727         (compile_instance::set_verbose)
2728         (compile_instance::set_driver_filename)
2729         (compile_instance::set_triplet_regexp)
2730         (compile_instance::set_arguments)
2731         (compile_instance::set_source_file)
2732         (compile_instance::compile): Define.
2733
2734 2018-08-10  Keith Seitz  <keiths@redhat.com>
2735
2736         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2737         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2738         gcc-c-fe.def to define C plugin.
2739         (delete_instance): Delete `c_plugin'.
2740         (new_compile_instance): Initialize `c_plugin'.
2741         * compile/compile-c.h: Include gcc_c_plugin.h.
2742         (struct compile_c_instance) <c_plugin>: New member.
2743         * gcc-c-plugin.h: New file.
2744         Update all callers with API change.
2745
2746 2018-08-10  Keith Seitz  <keiths@redhat.com>
2747
2748         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2749         (HFILES_NO_SRCDIR): ... to here.
2750         Add compile-internal.h and compile-c.h.
2751         * compile/compile-c-support.c: Include compile-c.h.
2752         * compile/compile-c-symbols.c: Include compile-c.h.
2753         (generate_c_for_variable_locations): Update comment.
2754         * compile/compile-c-types.c: Include compile-c.h.
2755         * compile/compile-c.h: New file -- moved C language declarations
2756         from other files here.
2757         * compile/compile-internal.h: Do not include hashtab.h or
2758         common/enum-flags.h.
2759         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2760         (gcc_convert_symbol, gcc_symbol_address)
2761         (generate_c_for_variable_locations, c_get_mode_for_size)
2762         (c_get_range_decl_name): Definitions moved to compile-c.h.
2763         * compile/compile-loc2c.c: Include compile-c.h.
2764
2765 2018-08-10  Keith Seitz  <keiths@redhat.com>
2766
2767         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2768         (c_symbol_substitution_name): ... this.
2769         Update all callers.
2770
2771 2018-08-10  Keith Seitz  <keiths@redhat.com>
2772
2773         * compile/compile-c-support.c (c_compute_program): Use
2774         unique_xmalloc_ptr to eliminate cleanup.
2775         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2776         Return a unique_xmalloc_ptr and eliminate cleanup.
2777         * compile/compile-internal.h (generate_c_for_variable_locations):
2778         Return unique_xmalloc_ptr and update description.
2779
2780 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2781
2782         * corelow.c (core_target::get_core_register_section): Rename
2783         min_size to section_min_size.
2784
2785 2018-08-09  Jim Wilson  <jimw@sifive.com>
2786
2787         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2788         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2789         * NEWS: Mention new GNU/Linux RISC-V target.
2790         * configure.host: Add riscv*-*-linux*.
2791         * configure.nat: Add riscv*.
2792         * configure.tgt: Add riscv*-*-linux*.
2793         * riscv-linux-nat.c: New file.
2794         * riscv-linux-tdep.c: New file.
2795
2796 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2797
2798         * infrun.c (resume): Make static, add forward declaration.
2799         (proceed): Update header comment.
2800         * infrun.h (resume): Delete declaration.
2801
2802 2018-08-09  Tom Tromey  <tom@tromey.com>
2803
2804         * riscv-tdep.h: Minor formatting fixes.
2805
2806 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2807
2808         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2809         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2810         (test_mkdir_recursive): Likewise.
2811         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2812
2813 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2814
2815         * valarith.c (value_subscripted_rvalue): If an array is not in
2816         memory, and we don't know the upper bound, then we can't know that
2817         the requested element exists or not.
2818
2819 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2820
2821         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2822         (target_options_to_string): Add comment.
2823
2824 2018-08-08  Tom Tromey  <tom@tromey.com>
2825
2826         * unittests/scoped_mmap-selftests.c: Check result of "write".
2827
2828 2018-08-08  Jim Wilson  <jimw@sifive.com>
2829
2830         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2831         (decode_register_index_short): New.
2832         (decode_j_type_insn, decode_cj_type_insn): New.
2833         (decode_b_type_insn, decode_cb_type_insn): New.
2834         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2835         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2836         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2837         is_c_sw_insn instead of is_sw_insn.
2838         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2839         (riscv_software_single_step): New.
2840         * riscv-tdep.h (riscv_software_single_step): Declare.
2841
2842         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2843         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2844
2845 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2846
2847         PR gdb/18050:
2848         * target.c (dispose_inferior): Don't dispose of inferiors that are
2849         already killed.
2850
2851 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2852
2853         * remote.c (remote_target::download_tracepoint): Change char* to
2854         const char*.
2855
2856 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2857
2858         * target.h (target_options_to_string): Return an std::string.
2859         * target.c (str_comma_list_concat_elem): Return void, use
2860         std::string.
2861         (do_option): Likewise.
2862         (target_options_to_string): Return an std::string.
2863         * linux-nat.c (linux_nat_target::wait): Adjust.
2864         * target-debug.h (target_debug_print_options): Adjust.
2865
2866 2018-08-07  Tom Tromey  <tom@tromey.com>
2867
2868         * Makefile.in (CPPFLAGS): New variable.
2869         (INTERNAL_CPPFLAGS): Use it.
2870
2871 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2872
2873         * NEWS: Mention the index cache.
2874
2875 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2876
2877         * common/pathstuff.h (get_standard_cache_dir): New.
2878         * common/pathstuff.c (get_standard_cache_dir): New.
2879         * build-id.h (build_id_to_string): New.
2880         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2881         DEBUG_STR_SUFFIX): Move to here.
2882         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2883         DEBUG_STR_SUFFIX): Move from there.
2884         (write_psymtabs_to_index): Make non-static, add basename
2885         parameter.  Write to temporary files, rename when done.
2886         (save_gdb_index_command): Adjust call to
2887         write_psymtabs_to_index.
2888         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2889         field.
2890         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2891         (get_gdb_index_contents_from_cache): New.
2892         (get_gdb_index_contents_from_cache_dwz): New.
2893         (dwarf2_initialize_objfile): Read index from cache.
2894         (dwarf2_build_psymtabs): Save to index.
2895         * dwarf-index-cache.h: New file.
2896         * dwarf-index-cache.c: New file.
2897         * dwarf-index-write.h: New file.
2898
2899 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2900
2901         * gnulib/aclocal.m4: Re-generate.
2902         * gnulib/config.in: Re-generate.
2903         * gnulib/configure: Re-generate.
2904         * gnulib/import/Makefile.am: Re-generate.
2905         * gnulib/import/Makefile.in: Re-generate.
2906         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2907         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2908         * gnulib/import/m4/mkdir.m4: New file.
2909         * gnulib/import/mkdir.c: New file.
2910         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2911         module.
2912
2913 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2914
2915         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2916         * common/scoped_mmap.c: New file.
2917         * common/scoped_mmap.h (destroy): New method.
2918         (~scoped_mmap, reset): Use destroy.
2919         (scoped_mmap): New move constructor.
2920         (mmap_file): New declaration.
2921         * unittests/scoped_mmap-selftests.c (test_normal,
2922         test_invalid_filename, run_tests): New functions.
2923         (_initialize_scoped_mmap_selftests): Register selftest.
2924
2925 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2926
2927         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2928         (read_gdb_index_from_buffer): ... this.  Remove section
2929         parameter, add buffer parameter.
2930         (get_gdb_index_contents_ftype,
2931         get_gdb_index_contents_dwz_ftype): New typedefs.
2932         (dwarf2_read_gdb_index): Add callback parameters to get the
2933         index contents.
2934         (get_gdb_index_contents_from_section): New.
2935         (dwarf2_initialize_objfile): Update call to
2936         dwarf2_read_gdb_index.
2937
2938 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2939
2940         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2941         (gdb_open_cloexec): Likewise.
2942         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2943         (commandline_from_pid): Likewise.
2944         (linux_xfer_osdata_threads): Likewise.
2945         (linux_xfer_osdata_fds): Likewise.
2946         * ada-lang.c (is_package_name): Likewise.
2947         * auxv.c (procfs_xfer_auxv): Likewise.
2948         * breakpoint.c (print_one_breakpoint_location): Use
2949         uiout::field_fmt.
2950         (print_one_catch_solib): Use string_printf.
2951         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2952         (add_pe_forwarded_sym): Likewise.
2953         * dwarf2read.c (create_type_unit_group): Likewise.
2954         (build_error_marker_type): Likewise.
2955         * infcall.c (get_function_name): Likewise.
2956         * valprint.c (print_converted_chars_to_obstack): Likewise.
2957         * xtensa-tdep.c (xtensa_register_type): Likewise.
2958
2959 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2960
2961         * remote.c (remote_target::download_tracepoint): Fix format
2962         string errors.
2963
2964 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2965
2966         * tracefile.c: Include common/byte-vector.h.
2967         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2968         with trace_regblock_size if needed.  Update uses of buf.
2969
2970 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2971
2972         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2973         std::vector<unsigned char>.
2974         * tracepoint.c (collection_list::collection_list): Remove
2975         m_regs_mask initializer from initializer list.  Resize
2976         m_regs_mask using the largest remote register number.
2977         (collection_list::add_remote_register): Remove size check on
2978         m_regs_mask.  Use at to access element.
2979         (collection_list::stringify): Change type of temp_buf to
2980         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2981         stringify the register mask.  Use pack_hex_byte for the register
2982         mask.
2983
2984 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2985
2986         * tracepoint.h (class collection_list) <add_register>: Remove.
2987         <add_remote_register, add_ax_registers, add_local_register>:
2988         Declare.
2989         <add_memrange>: Add scope parameter.
2990         * tracepoint.c (encode_actions_1): Likewise.
2991         (collection_list::add_register): Rename to ...
2992         (collection_list::add_remote_register): ... this.  Update
2993         comment.
2994         (collection_list::add_ax_registers, add_local_register): New
2995         methods.
2996         (collection_list::add_memrange): Add scope parameter.  Call
2997         add_local_register instead of add_register.
2998         (finalize_tracepoint_aexpr): New function.
2999         (collection_list::collect_symbol): Update calls to add_memrange.
3000         Call add_local_register instead of add_register.  Call
3001         add_ax_registers.  Call finalize_tracepoint_aexpr.
3002         (encode_actions_1): Get remote regnos for $reg action.  Call
3003         add_remote_register, add_ax_registers, and add_local_register.
3004         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
3005         (validate_actionline): Call finalize_tracepoint_aexpr.
3006
3007 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3008
3009         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
3010         Replace array buf with gdb::char_vector buf, of size
3011         get_remote_packet_size ().  Replace references to buf and
3012         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
3013         and xsnprintf with snprintf.  Raise errors if the buffer is too
3014         small.
3015
3016 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3017
3018         * remote.c (remote_target::download_tracepoint): Fix the has_more
3019         predicate in the QTDP action list iteration.
3020
3021 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3022
3023         * remote.c (remote_target::download_tracepoint): Fix indentation
3024         in for block.
3025
3026 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3027
3028         * proc-api.c (_initialize_proc_api): Remove c, unused.
3029         * procfs.c (procfs_init_inferior): Remove signals, unused.
3030         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
3031         unused.
3032
3033 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
3034             Andrew Burgess  <andrew.burgess@embecosm.com>
3035
3036         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
3037         'W_STOPCODE (0)' as this could be ambiguous.
3038
3039 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
3040
3041         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3042         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3043         "ai_socktype").
3044
3045 2018-08-02  Tom Tromey  <tom@tromey.com>
3046
3047         PR symtab/16842.
3048         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3049         symbols.
3050         (process_structure_scope): Likewise.
3051
3052 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3053
3054         PR gdb/22629:
3055         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3056         kill inferior.
3057
3058 2018-08-02  Tom Tromey  <tom@tromey.com>
3059
3060         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3061         (darwin_suspend_inferior, darwin_resume_inferior)
3062         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3063         (darwin_check_new_threads): Check result of get_darwin_inferior.
3064
3065 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3066
3067         GDB 8.1.1 released.
3068
3069 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3070
3071         * varobj.c (varobj_get_path_expr_parent): Report an error if
3072         parent is a dynamic varobj.
3073
3074 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3075
3076         * gnulib/aclocal.m4: Re-generate.
3077         * gnulib/config.in: Re-generate.
3078         * gnulib/configure: Re-generate.
3079         * gnulib/import/Makefile.in: Re-generate.
3080         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3081         * gnulib/import/m4/onceonly.m4: Re-generate.
3082
3083 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3084
3085         * target-descriptions.c (struct xml_test_tdesc): New.
3086         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3087         (record_xml_tdesc): Update.
3088         (maintenance_check_xml_descriptions): Update.
3089         * target-descriptions.h (record_xml_tdesc): Update comment.
3090
3091 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3092
3093         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3094         checking array bounds are defined.
3095
3096 2018-07-30  Tom Tromey  <tom@tromey.com>
3097
3098         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3099         irreflexivity violation.
3100
3101 2018-07-30  Tom Tromey  <tom@tromey.com>
3102
3103         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3104         * value.c (unpack_long): Remove lint code.
3105         * valops.c (value_ind): Remove lint code.
3106         * valarith.c (value_x_binop, value_x_unop, value_equal)
3107         (value_pos): Remove lint code.
3108
3109 2018-07-28  Tom de Vries  <tdevries@suse.de>
3110
3111         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3112         with undefined upper bound as <optimized out>.
3113
3114 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3115
3116         * gcore.in: Rename variable "name" to "prefix".  Expand
3117         "usage" text.
3118
3119 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3120
3121         * windows-nat.c (windows_nat_target::create_inferior): Update to
3122         call close() in global namespace.
3123
3124 2018-07-26  Tom Tromey  <tom@tromey.com>
3125
3126         * dwarf-index-write.c (add_address_entry): Don't add objfile
3127         offsets.
3128         * dbxread.c (find_stab_function): Rename from
3129         find_stab_function_addr.  Return a bound_minimal_symbol.
3130         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3131         Don't add objfile offsets.
3132         (end_psymtab): Use raw_text_low, raw_text_high,
3133         MSYMBOL_VALUE_RAW_ADDRESS.
3134         (read_ofile_symtab): Update.
3135         (process_one_symbol): Update.
3136         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3137         offsets.
3138         (dw2_relocate): Remove.
3139         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3140         searching addrmap.
3141         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3142         Update.
3143         (process_psymtab_comp_unit_reader, add_partial_symbol)
3144         (add_partial_subprogram, dwarf2_ranges_read): Update.
3145         (load_partial_dies): Update.
3146         (add_address_entry): Don't add objfile offsets.
3147         (dwarf2_build_include_psymtabs): Update.
3148         (create_addrmap_from_aranges): Don't add objfile offsets.
3149         (dw2_find_pc_sect_compunit_symtab): Update.
3150         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3151         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3152         Update.
3153         (parse_partial_symbols): Don't add objfile offsets.  Use
3154         raw_text_low, raw_text_high.  Update.
3155         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3156         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3157         or call 'relocate' quick function.  Clear psymbol_map.
3158         * psympriv.h (struct partial_symbol) <address>: Add section
3159         offset.
3160         <set_unrelocated_address>: Rename from set_address.
3161         <raw_text_low, raw_text_high>: New methods.
3162         <text_low, text_high>: Add objfile parameter.
3163         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3164         set_unrelocated_address.
3165         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3166         (find_pc_psymbol): Update.
3167         (fixup_psymbol_section, relocate_psymtabs): Remove.
3168         (dump_psymtab, psym_functions): Update.
3169         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3170         parameter.
3171         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3172         (start_psymtab_common): Update.
3173         * symfile-debug.c (debug_qf_relocate): Remove.
3174         (debug_sym_quick_functions): Update.
3175         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3176         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3177         Update.
3178
3179 2018-07-26  Tom Tromey  <tromey@redhat.com>
3180
3181         * dbxread.c (end_psymtab): Use text_high_valid and
3182         text_low_valid.
3183         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3184         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3185         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3186         Update comment.
3187         <text_low_valid, text_high_valid>: New fields.
3188         <set_text_low, set_text_high>: Update.
3189         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3190
3191 2018-07-26  Tom Tromey  <tom@tromey.com>
3192
3193         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3194         Update.
3195         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3196         textlow and texthigh fields.
3197         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3198         Update.
3199         * mdebugread.c (parse_lines, parse_partial_symbols)
3200         (psymtab_to_symtab_1): Update.
3201         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3202         Rename fields.  Update comment.  Now private.
3203         <text_low, text_high, set_text_low, set_text_high>: New methods.
3204         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3205         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3206         (start_psymtab_common, maintenance_info_psymtabs)
3207         (maintenance_check_psymtabs): Update.
3208         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3209         texthigh fields.
3210         (scan_xcoff_symtab): Update.
3211
3212 2018-07-26  Tom Tromey  <tromey@redhat.com>
3213
3214         * psympriv.h (struct partial_symbol) <unrelocated_address,
3215         address, set_address>: New methods.
3216         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3217         (fixup_psymbol_section, relocate_psymtabs): Update.
3218         (print_partial_symbols): Add 'objfile' parameter.  Update.
3219         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3220         Update.
3221
3222 2018-07-26  Tom Tromey  <tom@tromey.com>
3223
3224         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3225         (debug_names::write_psymbols): Update.
3226         * psympriv.h (struct partial_symbol): Derive from
3227         general_symbol_info.
3228         <obj_section>: New method.
3229         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3230         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3231         (find_pc_sect_psymbol, fixup_psymbol_section)
3232         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3233         (print_partial_symbols, recursively_search_psymtabs)
3234         (compare_psymbols, psymbol_hash, psymbol_compare)
3235         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3236         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3237
3238 2018-07-26  Tom Tromey  <tromey@redhat.com>
3239
3240         * dbxread.c (end_psymtab): Remove dead code.
3241
3242 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3243
3244         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3245         DWARF unwinders are disabled.
3246         * dwarf2-frame.c: Add dwarf2read.h include.
3247         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3248         disabled.
3249         (dwarf2_frame_unwinders_enabled_p): Define.
3250         (show_dwarf_unwinders_enabled_p): New function.
3251         (_initialize_dwarf2_frame): Register switch to control DWARF
3252         unwinder use.
3253         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3254         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3255         (show_dwarf_cmdlist): Remove static keyword.
3256         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3257         (show_dwarf_cmdlist): Declare.
3258         * NEWS: Document new feature.
3259
3260 2018-07-26  Tom de Vries  <tdevries@suse.de>
3261
3262         PR breakpoints/23366
3263         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3264
3265 2018-07-26  Tom de Vries  <tdevries@suse.de>
3266
3267         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3268         DW_AT_count can't be translated to a dynamic prop.
3269
3270 2018-07-25  Tom de Vries  <tdevries@suse.de>
3271
3272         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3273         try/catch.
3274
3275 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3276
3277         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3278
3279 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3280
3281         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3282
3283 2018-07-24  Keith Seitz  <keiths@redhat.comt
3284
3285         PR symtab/23010
3286         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3287         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3288         instead of add_symbol_to_list.
3289         (read_file_scope): Call prepare_one_comp_unit before reading
3290         any other DIEs.
3291
3292 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3293
3294         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3295
3296 2018-07-24  Tom Tromey  <tom@tromey.com>
3297
3298         * utils.c (malloc, realloc, free): Don't declare.
3299         * configure, config.in: Rebuild.
3300         * configure.ac: Don't check for declarations of free, malloc, or
3301         realloc.
3302
3303 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3304
3305         * aarch64-linux-nat.c
3306         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3307         variable.
3308         * arm-linux-nat.c (fetch_regs): Likewise.
3309         (store_regs): Likewise.
3310         (fetch_vfp_regs): Likewise.
3311         (store_vfp_regs): Likewise.
3312         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3313         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3314         (arm_linux_nat_target::insert_watchpoint): Likewise.
3315         (arm_linux_nat_target::remove_watchpoint): Likewise.
3316         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3317         Likewise.
3318         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3319         Likewise.
3320         * ppc-linux-nat.c (fetch_register): Likewise.
3321         (fetch_all_gp_regs): Likewise.
3322         (fetch_ppc_registers): Likewise.
3323         (store_all_gp_regs): Likewise.
3324         (store_ppc_registers): Likewise.
3325         (hwdebug_insert_point): Likewise.
3326         (can_use_watchpoint_cond_accel): Likewise.
3327         * remote-sim.c (gdb_os_write_stdout): Likewise.
3328
3329 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3330             Tom Tromey  <tom@tromey.com>
3331
3332         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3333         test for it.
3334         * configure: Rebuild.
3335
3336 2018-07-22  Tom Tromey  <tom@tromey.com>
3337
3338         * regformats/regdat.sh: Define xmltarget_${name} inside
3339         #ifndef IN_PROCESS_AGENT.
3340
3341 2018-07-22  Tom Tromey  <tom@tromey.com>
3342
3343         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3344
3345 2018-07-22  Tom Tromey  <tom@tromey.com>
3346
3347         * symfile.c (reread_symbols): Notify iter, not objfile.
3348
3349 2018-07-22  Tom Tromey  <tom@tromey.com>
3350
3351         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3352         Use arch_ops.
3353         (ravenscar_thread_target::prepare_to_store): Likewise.
3354
3355 2018-07-22  Tom Tromey  <tom@tromey.com>
3356
3357         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3358         unused variable.  Call value_fetch_lazy when needed.
3359         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3360         Remove unused variable.  Call value_fetch_lazy when needed.
3361
3362 2018-07-22  Tom Tromey  <tom@tromey.com>
3363
3364         * m32c-tdep.c (mark_dma): Return void.
3365         (make_regs): Remove unused declarations.
3366
3367 2018-07-22  Tom Tromey  <tom@tromey.com>
3368
3369         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3370         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3371         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3372         bkscm_get_valid_block_smob_arg_unsafe for effect.
3373
3374 2018-07-22  Tom Tromey  <tom@tromey.com>
3375
3376         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3377         value_type.
3378
3379 2018-07-22  Tom Tromey  <tom@tromey.com>
3380
3381         * windows-nat.c (saved_context): Conditionally define.
3382         * remote.c (remote_target::remote_btrace_maybe_reopen):
3383         Conditionally declare "warned".
3384         * inflow.c (sigquit_ours): Conditionally define.
3385         (new_tty): Move "tty" declaration inside #if.
3386         * guile/guile.c (guile_datadir): Conditionally define.
3387         * charset.c (set_be_le_names): Move some declarations inside #if.
3388         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3389         #if.
3390         (parse_xml_btrace_conf): Likewise.
3391
3392 2018-07-22  Tom Tromey  <tom@tromey.com>
3393
3394         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3395
3396 2018-07-22  Tom Tromey  <tom@tromey.com>
3397
3398         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3399         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3400         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3401         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3402         * stack.c (frame_apply_level_command): Remove unused variable.
3403         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3404         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3405         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3406         unused variable.
3407         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3408         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3409         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3410         variable.
3411         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3412         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3413         variable.
3414         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3415         Remove unused variable.
3416         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3417         variable.
3418         * common/tdesc.c (print_xml_feature::visit): Remove unused
3419         variable.
3420         * compile/compile-object-load.c (store_regs): Remove unused
3421         variables.
3422         * complaints.c (clear_complaints): Remove unused variable.
3423         * corelow.c (core_target_open): Remove unused variable.
3424         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3425         variable.
3426         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3427         variable.
3428         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3429         variable.
3430         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3431         variable.
3432         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3433         variable.
3434         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3435         variable.
3436         * ia64-tdep.c (examine_prologue): Remove unused variable.
3437         * infcall.c (run_inferior_call): Remove unused variable.
3438         * inferior.c (exit_inferior): Remove unused variable.
3439         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3440         * linespec.c (decode_line_2): Remove unused variable.
3441         * linux-nat.c (super_close): Remove.
3442         * linux-tdep.c (linux_info_proc): Remove unused variable.
3443         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3444         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3445         Remove unused variable.
3446         * parse.c (find_minsym_type_and_address): Remove unused variable.
3447         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3448         variable.
3449         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3450         variable.
3451         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3452         variables.
3453         * record-btrace.c (record_btrace_target::store_registers): Remove
3454         unused variable.
3455         (cmd_show_record_btrace_cpu): Remove unused variable.
3456         * riscv-tdep.c (riscv_register_reggroup_p)
3457         (riscv_push_dummy_call, riscv_return_value): Remove unused
3458         variable.
3459         * rust-exp.y (literal): Remove unused variable.
3460         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3461         unused variable.
3462         <STRUCTOP_ANONYMOUS>: Likewise.
3463         * s390-linux-tdep.c (s390_linux_init_abi_31)
3464         (s390_linux_init_abi_64): Remove unused variable.
3465         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3466         (file_select_thread, net_windows_open, _initialize_ser_windows):
3467         Remove unused variables.
3468         * symtab.c (find_pc_sect_line): Remove unused variable.
3469         * target-memory.c (compute_garbled_blocks): Remove unused
3470         variable.
3471         (target_write_memory_blocks): Remove unused variable.
3472         * target.c (target_stack::unpush): Remove unused variables.
3473         * tracepoint.c (start_tracing, all_tracepoint_actions)
3474         (merge_uploaded_trace_state_variables)
3475         (print_one_static_tracepoint_marker): Remove unused variable.
3476         * unittests/basic_string_view/element_access/char/1.cc (test01):
3477         Remove unused variable.
3478         * windows-nat.c (windows_continue, windows_add_all_dlls)
3479         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3480         Remove unused variables.
3481
3482 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3483
3484         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3485         attr_profile in HAVE_ELF.
3486         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3487         HAVE_ELF.
3488
3489 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3490
3491         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
3497         (frame_unwind_register): Likewise.
3498         (frame_unwind_register_value): Likewise.
3499         (frame_unwind_register_signed): Likewise.
3500         (frame_unwind_register_unsigned): Likewise.
3501         (frame_unwind_arch): Likewise.
3502
3503 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3504
3505         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3506         ISA maintenance.
3507
3508 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3509
3510         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3511         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3512         hand.
3513
3514 2018-07-20  Keith Seitz  <keiths@redhat.com>
3515
3516         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3517         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3518         m_compunit_symtab, m_language>: Add "m_" prefix.
3519         Update all uses.
3520         * buildsym.c: Update all uses.
3521
3522 2018-07-20  Tom Tromey  <tom@tromey.com>
3523
3524         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3525         * buildsym.h (record_line_ftype): Remove typedef.
3526
3527 2018-07-20  Tom Tromey  <tom@tromey.com>
3528
3529         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3530         (end_expandable_symtab): Likewise.
3531         (end_symtab_get_static_block): Likewise.
3532         (end_symtab_from_static_block): Likewise.
3533         * buildsym-legacy.c (augment_type_symtab): Remove.
3534         (end_expandable_symtab): Remove.
3535         (end_symtab_get_static_block): Remove.
3536         (end_symtab_from_static_block): Remove.
3537
3538 2018-07-20  Tom Tromey  <tom@tromey.com>
3539
3540         * dwarf2read.c: Include buildsym.h.
3541         (struct dwarf2_cu) <builder>: New method.
3542         (fixup_go_packaging): Update.
3543         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3544         use scoped_free_pendings.
3545         (using_directives): Add "cu" parameter, remove "language".
3546         (read_import_statement, setup_type_unit_groups, )
3547         (read_func_scope, read_lexical_block_scope)
3548         (dwarf2_record_block_ranges, read_namespace): Update.
3549         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3550         (lnp_state_machine::handle_end_sequence): Update.
3551         (class lnp_state_machine) <m_cu>: New member.
3552         <m_record_line_callback>: Remove.
3553         <m_currently_recording_lines>: New member.
3554         (lnp_state_machine::handle_set_file): Update.
3555         (noop_record_line): Remove.
3556         (dwarf_record_line_p): Add cu parameter.
3557         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3558         (lnp_state_machine::record_line)
3559         (lnp_state_machine::lnp_state_machine)
3560         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3561         (dwarf_decode_lines): Update.
3562         (dwarf2_start_subfile): Add cu parameter.
3563         (dwarf2_start_symtab, new_symbol): Update.
3564         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3565         Remove dwarf2_per_objfile parameter.
3566         (dwarf_decode_macros): Update.
3567
3568 2018-07-20  Tom Tromey  <tom@tromey.com>
3569
3570         * stabsread.c (define_symbol): Update.
3571         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3572         * dwarf2read.c (new_symbol): Update.
3573         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3574         * cp-namespace.c: Include buildsym.h.
3575         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3576         * buildsym-legacy.c (get_buildsym_compunit): New function.
3577
3578 2018-07-20  Tom Tromey  <tom@tromey.com>
3579
3580         * xcoffread.c: Include buildsym-legacy.h.
3581         * windows-nat.c: Include buildsym-legacy.h.
3582         * stabsread.c: Include buildsym-legacy.h.
3583         * mdebugread.c: Include buildsym-legacy.h.
3584         * buildsym-legacy.h: New file.
3585         * buildsym-legacy.c: New file, from buildsym.c.
3586         * go32-nat.c: Include buildsym-legacy.h.
3587         * dwarf2read.c: Include buildsym-legacy.h.
3588         * dbxread.c: Include buildsym-legacy.h.
3589         * cp-namespace.c: Include buildsym-legacy.h.
3590         * coffread.c: Include buildsym-legacy.h.
3591         * buildsym.h: Move some contents to buildsym-legacy.h.
3592         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3593         buildsym-legacy.c.
3594         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3595
3596 2018-07-20  Tom Tromey  <tom@tromey.com>
3597
3598         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3599         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3600         (buildsym_compunit::buildsym_compunit)
3601         (buildsym_compunit::~buildsym_compunit)
3602         (buildsym_compunit::get_macro_table): Define.
3603
3604 2018-07-20  Tom Tromey  <tom@tromey.com>
3605
3606         * buildsym.c (reset_symtab_globals): Remove.
3607         (buildsym_compunit::end_symtab_from_static_block): Update.
3608         (buildsym_compunit::augment_type_symtab): Update.
3609         (end_symtab_from_static_block): Call free_buildsym_compunit.
3610         (augment_type_symtab, end_symtab, end_expandable_symtab):
3611         Likewise.
3612
3613 2018-07-20  Tom Tromey  <tom@tromey.com>
3614
3615         * arch-utils.c: Do not include buildsym.h.
3616         * mipsread.c: Do not include buildsym.h.
3617         * machoread.c: Do not include buildsym.h.
3618         * elfread.c: Do not include buildsym.h.
3619
3620 2018-07-20  Tom Tromey  <tom@tromey.com>
3621
3622         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3623         initialization.
3624         (buildsym_compunit): Add new constructor.
3625         (struct buildsym_compunit) <get_last_source_file, finish_block,
3626         record_block_range, start_subfile, patch_subfile_names,
3627         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3628         set_last_source_start_addr, get_last_source_start_addr,
3629         get_local_using_directives, set_local_using_directives,
3630         get_global_using_directives, outermost_context_p,
3631         get_current_context_stack, get_context_stack_depth,
3632         get_current_subfile, get_local_symbols, get_file_symbols,
3633         get_global_symbols, record_debugformat, record_producer,
3634         push_context, pop_context, end_symtab_get_static_block,
3635         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3636         New public methods.
3637         <record_pending_block, finish_block_internal, make_blockvector,
3638         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3639         private methods.
3640         Update all users.
3641
3642 2018-05-22  Tom Tromey  <tom@tromey.com>
3643
3644         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3645         parameter.
3646         (finish_block_internal): Update.
3647
3648 2018-07-20  Tom Tromey  <tom@tromey.com>
3649
3650         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3651         parameter.
3652         (finish_block_internal): Update.
3653
3654 2018-07-20  Tom Tromey  <tom@tromey.com>
3655
3656         * buildsym.h (EXTERN): Don't define or undef.
3657         * buildsym.c (EXTERN): Don't define.
3658
3659 2018-07-20  Tom Tromey  <tom@tromey.com>
3660
3661         * buildsym.c: Remove TODO comment.
3662
3663 2018-07-20  Tom Tromey  <tom@tromey.com>
3664
3665         * coffread.c (coff_symtab_read): Update.
3666         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3667         (xcoff_new_init): Update.
3668         * mipsread.c (mipscoff_new_init): Update.
3669         * mdebugread.c (mdebug_build_psymtabs): Update.
3670         * elfread.c (elf_new_init): Update.
3671         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3672         Update.
3673         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3674         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3675         (stabsect_build_psymtabs): Update.
3676         * buildsym.h (buildsym_init): Don't declare.
3677         * buildsym.c: Update comment.
3678         (prepare_for_building): Remove.
3679         (start_symtab, restart_symtab): Update.
3680         (reset_symtab_globals): Update comment.
3681         (buildsym_init): Remove.
3682
3683 2018-07-20  Tom Tromey  <tom@tromey.com>
3684
3685         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3686         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3687         (read_enum_type, common_block_start, common_block_end)
3688         (cleanup_undefined_types_1, finish_global_stabs): Update.
3689         * mdebugread.c (psymtab_to_symtab_1): Update.
3690         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3691         (read_lexical_block_scope, new_symbol): Update.
3692         * dbxread.c (process_one_symbol): Update.
3693         * coffread.c (coff_symtab_read, process_coff_symbol)
3694         (coff_read_enum_type): Update.
3695         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3696         declare.
3697         (get_local_symbols, get_file_symbols, get_global_symbols): New
3698         functions.
3699         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3700         m_global_symbols.
3701         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3702         (~scoped_free_pendings): Update.
3703         (finish_block, prepare_for_building, reset_symtab_globals)
3704         (end_symtab_get_static_block, end_symtab_with_blockvector)
3705         (augment_type_symtab, push_context): Update.
3706         (get_local_symbols, get_file_symbols, get_global_symbols): New
3707         functions.
3708         (buildsym_init): Update.
3709
3710 2018-07-20  Tom Tromey  <tom@tromey.com>
3711
3712         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3713         (process_full_type_unit): Likewise.
3714         (dwarf2_start_symtab): Set list_in_scope.
3715
3716 2018-07-20  Tom Tromey  <tom@tromey.com>
3717
3718         * dwarf2read.c (process_psymtab_comp_unit_reader)
3719         (build_type_psymtabs_reader): Do not set list_in_scope.
3720
3721 2018-07-20  Tom Tromey  <tom@tromey.com>
3722
3723         * buildsym.c (free_pendings): Remove.
3724         (add_symbol_to_list, scoped_free_pendings)
3725         (finish_block_internal, buildsym_init): Update.
3726
3727 2018-07-20  Tom Tromey  <tom@tromey.com>
3728
3729         * xcoffread.c (read_xcoff_symtab): Update.
3730         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3731         Update.
3732         * dbxread.c (process_one_symbol): Update.
3733         * coffread.c (coff_symtab_read): Update.
3734         * buildsym.h (finish_block): Update.
3735         * buildsym.c (finish_block): Remove "listhead" argument.
3736         (end_symtab_get_static_block): Update.
3737
3738 2018-07-20  Tom Tromey  <tom@tromey.com>
3739
3740         * buildsym.h (class scoped_free_pendings): Remove constructor.
3741         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3742         method.
3743         <m_pending_block_obstack, m_pending_blocks>: New members.
3744         (pending_block_obstack, pending_blocks): Remove.
3745         (scoped_free_pendings::scoped_free_pendings): Default.
3746         (~scoped_free_pendings): Update.
3747         (free_pending_blocks): Remove.
3748         (finish_block_internal, record_pending_block, make_blockvector)
3749         (end_symtab_get_static_block, augment_type_symtab, push_context)
3750         (buildsym_init): Update.
3751
3752 2018-07-20  Tom Tromey  <tom@tromey.com>
3753
3754         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3755         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3756         members.
3757         (pending_addrmap, pending_addrmap_obstack)
3758         (pending_addrmap_interesting): Remove.
3759         (scoped_free_pendings, record_block_range, make_blockvector)
3760         (prepare_for_building, reset_symtab_globals, buildsym_init):
3761         Update.
3762
3763 2018-07-20  Tom Tromey  <tom@tromey.com>
3764
3765         * xcoffread.c (process_linenos): Update.
3766         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3767         * mdebugread.c (psymtab_to_symtab_1): Update.
3768         * dwarf2read.c (setup_type_unit_groups)
3769         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3770         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3771         * dbxread.c (process_one_symbol): Update.
3772         * coffread.c (coff_symtab_read, enter_linenos)
3773         (process_coff_symbol): Update.
3774         * buildsym.h (current_subfile): Don't declare.
3775         (get_current_subfile): Declare.
3776         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3777         member.
3778         (start_subfile, free_buildsym_compunit, push_subfile)
3779         (prepare_for_building, start_symtab): Update.
3780         (get_current_subfile): New function.
3781
3782 2018-07-20  Tom Tromey  <tom@tromey.com>
3783
3784         * coffread.c (coff_symtab_read): Update.
3785         * xcoffread.c (read_xcoff_symtab): Update.
3786         * dwarf2read.c (new_symbol): Update.
3787         (read_func_scope, read_lexical_block_scope): Update.
3788         * dbxread.c (process_one_symbol): Update.
3789         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3790         (outermost_context_p): Remove macro.
3791         (outermost_context_p, get_current_context_stack)
3792         (get_context_stack_depth): Declare.
3793         (pop_context): Return struct context_stack.
3794         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3795         member.
3796         (context_stack_size): Remove.
3797         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3798         (prepare_for_building, end_symtab_get_static_block)
3799         (augment_type_symtab, push_context): Update.
3800         (pop_context): Return struct context_stack.
3801         (outermost_context_p, get_current_context_stack)
3802         (get_context_stack_depth): New functions.
3803         (buildsym_init): Update.
3804
3805 2018-07-20  Tom Tromey  <tom@tromey.com>
3806
3807         * rust-exp.y: Now a pure parser.  Update all rules.
3808         (%union): Move earlier.
3809         (current_parser, work_obstack): Remove globals.
3810         (rust_parser, ~rust_parser): Update.
3811         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3812         lex_character, lex_number, lex_string, lex_identifier,
3813         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3814         convert_name, convert_params_to_expression,
3815         convert_ast_to_expression, ast_basic_type, ast_operation,
3816         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3817         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3818         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3819         ast_array_type, ast_slice_type, ast_reference_type,
3820         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3821         (rust_parse): Update.
3822         (rustyyerror, rustyylex): Add parser parameter.
3823         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3824         (rust_lex_stringish_test, rust_lex_test_sequence)
3825         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3826         (rust_lex_test_push_back, rust_lex_tests): Update.
3827
3828 2018-07-19  Pedro Alves  <palves@redhat.com>
3829
3830         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3831         gdb::unique_xmalloc_ptr.
3832         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3833         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3834         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3835         copy-initialization.
3836         * guile/scm-pretty-print.c (ppscm_print_children): Use
3837         gdb::unique_xmalloc_ptr instead of cleanups.
3838         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3839         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3840         gdb::unique_xmalloc_ptr.
3841         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3842         Adjust to use gdb::unique_xmalloc_ptr.
3843         * guile/scm-utils.c (extract_arg): Adjust.
3844         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3845         gdb::unique_xmalloc_ptr instead of a cleanup.
3846
3847 2018-07-19  Tom Tromey  <tom@tromey.com>
3848
3849         * utils.c (do_value_free_to_mark)
3850         (make_cleanup_value_free_to_mark): Remove.
3851         * utils.h (make_cleanup_value_free_to_mark): Remove.
3852
3853 2018-07-19  Pedro Alves  <palves@redhat.com>
3854
3855         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3856         forwarding reference.
3857
3858 2018-07-18  Pedro Alves  <palves@redhat.com>
3859
3860         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3861         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3862         cleanup.
3863
3864 2018-07-18  Pedro Alves  <palves@redhat.com>
3865
3866         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3867         exceptions.
3868         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3869         (gdbscm_wrap): New.
3870         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3871         directly instead of a cleanup.
3872         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3873         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3874         (vlscm_binop_gdbthrow): New, factored out from ...
3875         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3876         (vlscm_rich_compare): Use gdbscm_wrap.
3877         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3878         instead of a cleanup.
3879         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3880         cleanup.
3881         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3882         Use xfree directly instead of a cleanup.
3883         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3884         Adjust to use gdbscm_wrap and scoped_value_mark.
3885         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3886         (gdbscm_value_address, gdbscm_value_dereference)
3887         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3888         scoped_value_mark.
3889         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3890         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3891         scoped_value_mark.
3892         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3893         gdbscm_wrap and scoped_value_mark.
3894         (gdbscm_value_to_string): Use xfree directly instead of a
3895         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3896         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3897         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3898         scoped_value_mark.
3899         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3900         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3901         scoped_value_mark.
3902         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3903         gdbscm_wrap.
3904
3905 2018-07-18  Tom de Vries  <tdevries@suse.de>
3906
3907         * findvar.c (default_read_var_value): Also resolve dynamic type for
3908         LOC_OPTIMIZED_OUT vars.
3909
3910 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3911
3912         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3913         decoding.
3914
3915 2018-07-17  Tom Tromey  <tom@tromey.com>
3916
3917         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3918         (compute_enum_list, pascm_set_param_value_x)
3919         (gdbscm_parameter_value): Update.
3920         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3921         (gdbscm_scm_to_host_string): Update.
3922         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3923         Update.
3924         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3925         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3926         * guile/scm-string.c (gdbscm_scm_to_string): Return
3927         unique_xmalloc_ptr.
3928         (gdbscm_scm_to_host_string): Likewise.
3929
3930 2018-07-17  Tom Tromey  <tom@tromey.com>
3931
3932         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3933         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3934         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3935         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3936         unique_xmalloc_ptr.
3937
3938 2018-07-17  Tom Tromey  <tom@tromey.com>
3939
3940         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3941         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3942         Update.
3943         * guile/scm-cmd.c (cmdscm_function): Update.
3944         * guile/scm-pretty-print.c
3945         (ppscm_print_exception_unless_memory_error): Update.
3946         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3947         Return unique_xmalloc_ptr.
3948
3949 2018-07-17  Tom Tromey  <tom@tromey.com>
3950
3951         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3952         Use string_printf.
3953
3954 2018-07-17  Jim Wilson  <jimw@sifive.com>
3955
3956         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3957         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3958         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3959         unecessary braces after EF_RISCV_RVC test.  Delete call to
3960         set_gdbarch_decr_pc_after_break.
3961
3962         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3963         RISCV_LAST_FP_REGNUM + 1.
3964         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3965
3966 2018-07-17  Tom Tromey  <tom@tromey.com>
3967
3968         * configure.ac: Remove --disable-gdbcli.
3969         * configure: Rebuild.
3970         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3971         (SUBDIR_CLI_CFLAGS): Remove.
3972         (SFILES): Use SUBDIR_CLI_SRCS.
3973         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3974
3975 2018-07-17  Tom Tromey  <tom@tromey.com>
3976
3977         PR gdb/18624:
3978         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3979
3980 2018-07-16  Jim Wilson  <jimw@sifive.com>
3981
3982         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3983
3984 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3985
3986         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3987         variable.
3988         (libunwind_frame_sniffer): Likewise.
3989         (libunwind_frame_prev_register): Likewise.
3990         (libunwind_sigtramp_frame_sniffer): Likewise.
3991         * ia64-tdep.c (ia64_access_reg): Likewise.
3992         (ia64_access_rse_reg): Likewise.
3993         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3994         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3995
3996 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3997
3998         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3999
4000 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
4001
4002         * remote-sim.c (gdbsim_target::close,
4003         gdbsim_target::mourn_inferior): Remove unused variables.
4004
4005 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
4006
4007         * ia64-tdep.c (ktab_buf): New global.
4008         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
4009         (get_kernel_table): Adjust.
4010
4011 2018-07-16  Tom Tromey  <tom@tromey.com>
4012
4013         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
4014         * dwarf2read.c (using_directives, new_symbol): Use
4015         outermost_context_p.
4016         * dbxread.c (process_one_symbol): Use outermost_context_p.
4017         * coffread.c (coff_symtab_read): Use outermost_context_p.
4018
4019 2018-07-16  Tom Tromey  <tom@tromey.com>
4020
4021         * dwarf2read.c (using_directives, read_func_scope)
4022         (read_lexical_block_scope): Update.
4023         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
4024         * buildsym.h (local_using_directives, global_using_directives):
4025         Don't declare.
4026         (get_local_using_directives, set_local_using_directives)
4027         (get_global_using_directives): Declare.
4028         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
4029         m_global_using_directives>: New members.
4030         (finish_block_internal, prepare_for_building)
4031         (reset_symtab_globals, end_symtab_get_static_block)
4032         (push_context): Update.
4033         (get_local_using_directives, set_local_using_directives)
4034         (get_global_using_directives): New functions.
4035         (buildsym_init): Update.
4036
4037 2018-07-16  Tom Tromey  <tom@tromey.com>
4038
4039         * xcoffread.c (xcoff_initial_scan): Don't call
4040         free_pending_blocks.
4041         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4042         * buildsym.h (class scoped_free_pendings): Add constructor.
4043         (free_pending_blocks): Don't declare.
4044         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4045         (free_pending_blocks): Now static.
4046
4047 2018-07-16  Tom Tromey  <tom@tromey.com>
4048
4049         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4050         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4051         member.
4052         (struct subfile_stack): Remove.
4053         (subfile_stack): Remove.
4054         (push_subfile, pop_subfile, buildsym_init): Update.
4055
4056 2018-07-16  Tom Tromey  <tom@tromey.com>
4057
4058         * buildsym.c (push_subfile): Use gdb_assert.
4059         (pop_subfile): Use gdb_assert.
4060
4061 2018-07-16  Tom Tromey  <tom@tromey.com>
4062
4063         * buildsym.h (merge_symbol_lists): Remove.
4064         * buildsym.c (merge_symbol_lists): Remove.
4065
4066 2018-07-16  Tom Tromey  <tom@tromey.com>
4067
4068         * stabsread.c (scan_file_globals): Update comment.
4069         * stabsread.h (scan_file_globals): Move from buildsym.h.
4070         * buildsym.h (scan_file_globals): Move to stabsread.h.
4071
4072 2018-07-16  Tom Tromey  <tom@tromey.com>
4073
4074         * xcoffread.c (xcoff_new_init): Update.
4075         * mipsread.c (mipscoff_new_init): Update.
4076         * mdebugread.c (mdebug_build_psymtabs): Update.
4077         * elfread.c (elf_new_init): Update.
4078         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4079         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4080         * buildsym.h (buildsym_new_init): Don't declare.
4081         * buildsym.c (buildsym_new_init): Remove.
4082
4083 2018-07-16  Tom Tromey  <tom@tromey.com>
4084
4085         * stabsread.h (within_function): Move from buildsym.h.
4086         * stabsread.c (start_stabs): Clear within_function.
4087         * coffread.c (coff_start_symtab): Clear within_function.
4088         * buildsym.h (within_function): Move to stabsread.h.
4089         * buildsym.c (prepare_for_building): Update.
4090
4091 2018-07-16  Tom Tromey  <tom@tromey.com>
4092
4093         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4094         * dwarf2read.c (dwarf2_start_symtab): Don't set
4095         processing_gcc_compilation.
4096         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4097
4098 2018-07-16  Tom Tromey  <tom@tromey.com>
4099
4100         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4101         (next_symbol_text_func): Move from buildsym.h.
4102         * stabsread.c (hashname): Move from buildsym.c.
4103         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4104         (next_symbol_text_func, hashname): Move to stabsread.h.
4105         * buildsym.c: Don't include bcache.h
4106         (hashname): Move to stasbread.c.
4107
4108 2018-07-16  Tom Tromey  <tom@tromey.com>
4109
4110         * buildsym.h (context_stack_size): Don't declare.
4111         * buildsym.c (context_stack_size): New global.
4112
4113 2018-07-16  Tom Tromey  <tom@tromey.com>
4114
4115         * dbxread.c (processing_acc_compilation): New global.
4116         * buildsym.h (processing_acc_compilation): Don't declare.
4117
4118 2018-07-16  Tom Tromey  <tom@tromey.com>
4119
4120         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4121         * dbxread.c (read_ofile_symtab): Update.
4122         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4123         * buildsym.h (last_source_start_addr): Remove.
4124         (set_last_source_start_addr, get_last_source_start_addr):
4125         Declare.
4126         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4127         parameter.
4128         (struct buildsym_compunit) <m_last_source_start_addr>: New
4129         member.
4130         (prepare_for_building): Remove start_addr parameter.
4131         (start_symtab, restart_symtab, end_symtab_get_static_block)
4132         (end_symtab_with_blockvector): Update.
4133         (set_last_source_start_addr, get_last_source_start_addr): New
4134         functions.
4135
4136 2018-07-16  Tom Tromey  <tom@tromey.com>
4137
4138         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4139         member.
4140         (have_line_numbers): Remove.
4141         (record_line, prepare_for_building, end_symtab_get_static_block)
4142         (augment_type_symtab): Update.
4143
4144 2018-07-16  Tom Tromey  <tom@tromey.com>
4145
4146         * buildsym.c (~buildsym_compunit): Free the macro table.
4147         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4148         methods.
4149         <m_pending_macros>: New member.
4150         (pending_macros): Remove.
4151         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4152         (reset_symtab_globals, end_symtab_get_static_block)
4153         (end_symtab_with_blockvector, augment_type_symtab)
4154         (buildsym_init): Update.
4155
4156 2018-07-16  Tom Tromey  <tom@tromey.com>
4157
4158         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4159         parameter.
4160         (buildsym_compunit::set_last_source_file): New method.
4161         <m_last_source_file>: New member.
4162         (prepare_for_building): Remove "name" parameter.
4163         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4164         (last_source_file): Remove.
4165         (set_last_source_file, get_last_source_file): Update.
4166
4167 2018-07-16  Tom Tromey  <tom@tromey.com>
4168
4169         * buildsym.c (prepare_for_building): Add assert.
4170
4171 2018-07-16  Tom Tromey  <tom@tromey.com>
4172
4173         * buildsym.c (~buildsym_compunit): Update.
4174         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4175         (start_subfile, patch_subfile_names)
4176         (end_symtab_with_blockvector): Update.
4177
4178 2018-07-16  Tom Tromey  <tom@tromey.com>
4179
4180         * buildsym.c (struct buildsym_compunit): Add constructor,
4181         destructor, initializers.
4182         (start_buildsym_compunit): Remove.
4183         (free_buildsym_compunit): Use "delete".
4184         (start_symtab, restart_symtab): Use "new".
4185
4186 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4187
4188         * symfile.c (set_objfile_default_section_offset): Remove struct
4189         keyword.
4190
4191 2018-07-14  Stafford Horne  <shorne@gmail.com>
4192
4193         * (Responsible Maintainers): Add myself as or1k maintainer.
4194
4195 2018-07-13  Tom Tromey  <tom@tromey.com>
4196
4197         * symfile.c (set_objfile_default_section_offset): Use extra braces
4198         around initializer.
4199
4200 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4201
4202         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4203         non-branching basr.
4204
4205 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4206
4207         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4208         unittests/cli-utils-selftests.c
4209         * unittests/cli-utils-selftests.c: New file.
4210
4211 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4212
4213         * NEWS: Mention new commands. Mention change to 'thread apply'.
4214
4215 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4216
4217         * thread.c (thr_try_catch_cmd): New function.
4218         (thread_apply_all_command): Handle qcs flags.
4219         (thread_apply_command): Handle qcs flags.
4220         (taas_command): New function.
4221         (tfaas_command): New function.
4222         (_initialize_thread): Update to setup the new commands 'taas
4223         and 'tfaas'. Change doc string for 'thread apply'.
4224
4225 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4226
4227         * stack.c: (trailing_outermost_frame): New function, mostly
4228         extracted from backtrace_command_1.
4229         (leading_innermost_frame): New function.
4230         (backtrace_command_1): Update to call trailing_outermost_frame.
4231         (frame_apply_command_count): New function.
4232         (frame_apply_level_command): New function.
4233         (frame_apply_all_command): New function.
4234         (frame_apply_command): New function.
4235         (faas_command): New function.
4236         (frame_cmd_list): New variable.
4237         (_initialize_stack): Update to setup the new commands 'frame apply'
4238         and 'faas'.
4239
4240 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4241
4242         * cli-utils.c (number_or_range_parser::get_number): Only handle
4243         numbers or convenience var as numbers.
4244         (parse_flags): New function.
4245         (parse_flags_qcs): New function.
4246         (number_or_range_parser::finished): Ensure parsing end is detected
4247         before end of string.
4248         * cli-utils.h (parse_flags): New function.
4249         (parse_flags_qcs): New function.
4250         (number_or_range_parser): Remove m_finished bool.
4251         (number_or_range_parser::skip_range): Set m_in_range to false.
4252
4253 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4254
4255         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4256         on Windows.
4257
4258 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4259             Jan Kratochvil  <jan.kratochvil@redhat.com>
4260             Paul Fertser  <fercerpav@gmail.com>
4261             Tsutomu Seki  <sekiriki@gmail.com>
4262             Pedro Alves  <palves@redhat.com>
4263
4264         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4265         'unittests/parse-connection-spec-selftests.c'.
4266         (COMMON_SFILES): Add 'common/netstuff.c'.
4267         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4268         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4269         * common/netstuff.c: New file.
4270         * common/netstuff.h: New file.
4271         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4272         (wait_for_connect): Update comment.  New parameter
4273         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4274         Use 'sock' directly instead of 'scb->fd'.
4275         (try_connect): New function, with code from 'net_open'.
4276         (net_open): Rewrite main loop to deal with multiple
4277         sockets/addresses.  Handle IPv6-style hostnames; implement
4278         support for IPv6 connections.
4279         * unittests/parse-connection-spec-selftests.c: New file.
4280
4281 2018-07-11  Pedro Alves  <palves@redhat.com>
4282
4283         PR gdb/23377
4284         * remote.c (remote_target::remote_detach_pid): Call
4285         set_current_process.
4286
4287 2018-07-11  Pedro Alves  <palves@redhat.com>
4288
4289         * h8300-tdep.c (h8300_gdbarch_init): Remove
4290         set_gdbarch_ecoff_reg_to_regnum calls.
4291
4292 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4293
4294         PR c++/23373
4295         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4296         offsets/sizes for static members of a class/struct.
4297
4298 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4299
4300         * target-descriptions.c (tdesc_register_bitsize): Rename.
4301         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4302         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4303         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4304
4305 2018-07-10  Tom Tromey  <tom@tromey.com>
4306
4307         * breakpoint.c (moribund_locations): Now static and a
4308         std::vector.
4309         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4310         (build_bpstat_chain, update_global_location_list)
4311         (breakpoint_retire_moribund): Update.
4312         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4313         VEC.
4314
4315 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4316
4317         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4318         (riscv_register_reggroup_p): Use new function, remove unneeded
4319         parenthesis.
4320         (riscv_push_dummy_call): Extend assert to compare against xlen or
4321         flen based on register type.
4322
4323 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4324
4325         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4326
4327 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4328
4329         * remote.c (show_hardware_watchpoint_limit): New function.
4330         (show_hardware_watchpoint_length_limit): New function.
4331         (show_hardware_breakpoint_limit): New function.
4332         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4333         where appropriate, update help text.
4334
4335 2018-07-09  Tom Tromey  <tom@tromey.com>
4336
4337         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4338         (CLIBS): Don't mention NAT_CLIBS.
4339
4340 2018-07-09  Tom Tromey  <tom@tromey.com>
4341
4342         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4343         (LIBGDB_OBS, clean mostlyclean): Update.
4344         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4345
4346 2018-07-09  Tom Tromey  <tom@tromey.com>
4347
4348         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4349         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4350         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4351
4352 2018-07-09  Tom Tromey  <tom@tromey.com>
4353
4354         * Makefile.in (ALLDEPFILES): Remove exec.c.
4355         (COMMON_OBS): Remove exec.o.
4356         (COMMON_SFILES): Add exec.c.
4357
4358 2018-07-09  Tom Tromey  <tom@tromey.com>
4359
4360         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4361
4362 2018-07-09  Tom Tromey  <tom@tromey.com>
4363
4364         * Makefile.in (clean mostlyclean): Remove stamp-version.
4365         (version.c): Depend on stamp-version.
4366         (stamp-version): New rule, from version.c rule.
4367
4368 2018-07-09  Tom Tromey  <tom@tromey.com>
4369
4370         * Makefile.in (init.c): Depend on stamp-init.
4371         (stamp-init): New rule, from init.c rule.
4372         (clean mostlyclean): Remove stamp-init.
4373
4374 2018-07-09  Tom Tromey  <tom@tromey.com>
4375
4376         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4377         SUBDIR_GCC_COMPILE_SRCS.
4378
4379 2018-07-09  Tom Tromey  <tom@tromey.com>
4380
4381         * Makefile.in (init.c): Remove some unused sed rules.
4382
4383 2018-07-09  Tom Tromey  <tom@tromey.com>
4384
4385         * Makefile.in (TSOBS): Remove.
4386         (INIT_FILES): Update.
4387         (LIBGDB_OBS): Update.
4388         (COMMON_SFILES): Add inflow.c.
4389         (SFILES): Remove inflow.c.
4390
4391 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4392
4393         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4394
4395 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4396
4397         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4398         get_saveloc_name, is_signal_frame_name, step_name,
4399         init_remote_name, create_addr_space_name,
4400         destroy_addr_space_name, search_unwind_table_name,
4401         find_dyn_list_name): Constify.
4402
4403 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4404
4405         * darwin-nat.c (darwin_pthread_kill): New function.
4406         (darwin_resume_thread): Use darwin_pthread_kill.
4407
4408 2018-07-05  Tom de Vries  <tdevries@suse.de>
4409
4410         * macroexp.c (macro_buffer) <operator=>: New member function.
4411
4412 2018-07-04  Tom Tromey  <tom@tromey.com>
4413
4414         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4415
4416 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4417
4418         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4419         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4420         * maint.c: Likewise.
4421         * top.c: Likewise.
4422
4423 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4424
4425         * NEWS: Create a new section for the next release branch.
4426         Rename the section of the current branch, now that it has
4427         been cut.
4428
4429 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4430
4431         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4432         * version.in: Bump version to 8.2.50.DATE-git.
4433
4434 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4435             Pedro Alves  <palves@redhat.com>
4436
4437         * linux-nat.c (linux_init_ptrace): Rename to ...
4438         (linux_init_ptrace_procfs): ... this.  Call
4439         linux_proc_init_warnings.
4440         (linux_nat_target::post_attach)
4441         (linux_nat_target::post_startup_inferior): Adjust.
4442         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4443         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4444
4445 2018-07-04  Tom de Vries  <tdevries@suse.de>
4446
4447         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4448         check ...
4449         (read_comp_unit_head): ... here.
4450
4451 2018-07-03  Tom Tromey  <tom@tromey.com>
4452
4453         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4454         (stop_tracing, tstatus_command)
4455         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4456         (print_one_static_tracepoint_marker): Update.
4457         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4458         std::vector.
4459         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4460         VEC.
4461         (all_tracepoints, static_tracepoints_here): Return std::vector.
4462
4463 2018-07-03  Tom Tromey  <tom@tromey.com>
4464
4465         * common/ptid.c (ptid_equal): Remove.
4466         * common/ptid.h (ptid_equal): Don't declare.
4467         * ada-tasks.c: Update.
4468         * breakpoint.c: Update.
4469         * common/agent.c: Update.
4470         * corelow.c: Update.
4471         * darwin-nat-info.c: Update.
4472         * darwin-nat.c: Update.
4473         * dcache.c: Update.
4474         * dtrace-probe.c: Update.
4475         * dummy-frame.c: Update.
4476         * fbsd-nat.c: Update.
4477         * frame.c: Update.
4478         * gdbthread.h: Update.
4479         * gnu-nat.c: Update.
4480         * go32-nat.c: Update.
4481         * inf-loop.c: Update.
4482         * inf-ptrace.c: Update.
4483         * infcall.c: Update.
4484         * infcmd.c: Update.
4485         * inflow.c: Update.
4486         * infrun.c: Update.
4487         * linux-fork.c: Update.
4488         * linux-nat.c: Update.
4489         * linux-thread-db.c: Update.
4490         * mi/mi-cmd-var.c: Update.
4491         * mi/mi-interp.c: Update.
4492         * mi/mi-main.c: Update.
4493         * nto-procfs.c: Update.
4494         * ppc-linux-tdep.c: Update.
4495         * procfs.c: Update.
4496         * python/py-inferior.c: Update.
4497         * python/py-record-btrace.c: Update.
4498         * python/py-record.c: Update.
4499         * ravenscar-thread.c: Update.
4500         * regcache.c: Update.
4501         * remote-sim.c: Update.
4502         * remote.c: Update.
4503         * sol-thread.c: Update.
4504         * solib.c: Update.
4505         * target.c: Update.
4506         * tui/tui-stack.c: Update.
4507         * varobj.c: Update.
4508         * windows-nat.c: Update.
4509         * windows-tdep.c: Update.
4510
4511 2018-07-03  Tom Tromey  <tom@tromey.com>
4512
4513         * common/ptid.c (ptid_match): Remove.
4514         * common/ptid.h (ptid_match): Don't declare.
4515         * fbsd-nat.c: Update.
4516         * infcmd.c: Update.
4517         * infrun.c: Update.
4518         * linux-nat.c: Update.
4519         * record-btrace.c: Update.
4520         * regcache.c: Update.
4521         * remote.c: Update.
4522
4523 2018-07-03  Tom Tromey  <tom@tromey.com>
4524
4525         * common/ptid.c (ptid_tid_p): Remove.
4526         * common/ptid.h (ptid_tid_p): Don't declare.
4527         * sol-thread.c: Update.
4528
4529 2018-07-03  Tom Tromey  <tom@tromey.com>
4530
4531         * common/ptid.c (ptid_lwp_p): Remove.
4532         * common/ptid.h (ptid_lwp_p): Don't declare.
4533         * fbsd-nat.c: Update.
4534         * linux-nat.c: Update.
4535         * nat/linux-procfs.c: Update.
4536         * nat/x86-linux-dregs.c: Update.
4537         * sol-thread.c: Update.
4538
4539 2018-07-03  Tom Tromey  <tom@tromey.com>
4540
4541         * common/ptid.c (ptid_is_pid): Remove.
4542         * common/ptid.h (ptid_is_pid): Don't declare.
4543         * infrun.c: Update.
4544         * linux-nat.c: Update.
4545         * mi/mi-interp.c: Update.
4546         * remote.c: Update.
4547         * thread.c: Update.
4548
4549 2018-07-03  Tom Tromey  <tom@tromey.com>
4550
4551         * common/ptid.c (ptid_get_tid): Remove.
4552         * common/ptid.h (ptid_get_tid): Don't declare.
4553         * ada-tasks.c: Update.
4554         * aix-thread.c: Update.
4555         * bsd-uthread.c: Update.
4556         * darwin-nat.c: Update.
4557         * fbsd-nat.c: Update.
4558         * i386-darwin-nat.c: Update.
4559         * infrun.c: Update.
4560         * linux-tdep.c: Update.
4561         * nto-procfs.c: Update.
4562         * ppc-ravenscar-thread.c: Update.
4563         * python/py-infthread.c: Update.
4564         * ravenscar-thread.c: Update.
4565         * sol-thread.c: Update.
4566         * sparc-ravenscar-thread.c: Update.
4567         * windows-nat.c: Update.
4568
4569 2018-07-03  Tom Tromey  <tom@tromey.com>
4570
4571         * common/ptid.c (ptid_get_lwp): Remove.
4572         * common/ptid.h (ptid_get_lwp): Don't declare.
4573         * aarch64-linux-nat.c: Update.
4574         * ada-tasks.c: Update.
4575         * aix-thread.c: Update.
4576         * amd64-linux-nat.c: Update.
4577         * arm-linux-nat.c: Update.
4578         * corelow.c: Update.
4579         * fbsd-nat.c: Update.
4580         * fbsd-tdep.c: Update.
4581         * gnu-nat.c: Update.
4582         * i386-cygwin-tdep.c: Update.
4583         * i386-gnu-nat.c: Update.
4584         * i386-linux-nat.c: Update.
4585         * ia64-linux-nat.c: Update.
4586         * inf-ptrace.c: Update.
4587         * infrun.c: Update.
4588         * linux-fork.c: Update.
4589         * linux-nat.c: Update.
4590         * linux-tdep.c: Update.
4591         * linux-thread-db.c: Update.
4592         * mips-linux-nat.c: Update.
4593         * nat/aarch64-linux-hw-point.c: Update.
4594         * nat/aarch64-linux.c: Update.
4595         * nat/linux-btrace.c: Update.
4596         * nat/linux-osdata.c: Update.
4597         * nat/linux-procfs.c: Update.
4598         * nat/x86-linux-dregs.c: Update.
4599         * obsd-nat.c: Update.
4600         * ppc-fbsd-nat.c: Update.
4601         * ppc-linux-nat.c: Update.
4602         * procfs.c: Update.
4603         * python/py-infthread.c: Update.
4604         * ravenscar-thread.c: Update.
4605         * remote.c: Update.
4606         * s390-linux-nat.c: Update.
4607         * sol-thread.c: Update.
4608         * sol2-tdep.c: Update.
4609         * spu-linux-nat.c: Update.
4610         * x86-linux-nat.c: Update.
4611         * xtensa-linux-nat.c: Update.
4612
4613 2018-07-03  Tom Tromey  <tom@tromey.com>
4614
4615         * common/ptid.c (ptid_get_pid): Remove.
4616         * common/ptid.h (ptid_get_pid): Don't declare.
4617         * aarch64-linux-nat.c: Update.
4618         * ada-lang.c: Update.
4619         * aix-thread.c: Update.
4620         * alpha-bsd-nat.c: Update.
4621         * amd64-fbsd-nat.c: Update.
4622         * amd64-linux-nat.c: Update.
4623         * arm-linux-nat.c: Update.
4624         * arm-nbsd-nat.c: Update.
4625         * auxv.c: Update.
4626         * break-catch-syscall.c: Update.
4627         * breakpoint.c: Update.
4628         * bsd-uthread.c: Update.
4629         * corelow.c: Update.
4630         * ctf.c: Update.
4631         * darwin-nat.c: Update.
4632         * fbsd-nat.c: Update.
4633         * fbsd-tdep.c: Update.
4634         * gcore.c: Update.
4635         * gnu-nat.c: Update.
4636         * hppa-nbsd-nat.c: Update.
4637         * hppa-obsd-nat.c: Update.
4638         * i386-fbsd-nat.c: Update.
4639         * ia64-linux-nat.c: Update.
4640         * inf-ptrace.c: Update.
4641         * infcmd.c: Update.
4642         * inferior.c: Update.
4643         * inferior.h: Update.
4644         * inflow.c: Update.
4645         * infrun.c: Update.
4646         * linux-fork.c: Update.
4647         * linux-nat.c: Update.
4648         * linux-tdep.c: Update.
4649         * linux-thread-db.c: Update.
4650         * m68k-bsd-nat.c: Update.
4651         * mi/mi-interp.c: Update.
4652         * mi/mi-main.c: Update.
4653         * mips-linux-nat.c: Update.
4654         * mips-nbsd-nat.c: Update.
4655         * mips64-obsd-nat.c: Update.
4656         * nat/aarch64-linux-hw-point.c: Update.
4657         * nat/aarch64-linux.c: Update.
4658         * nat/linux-btrace.c: Update.
4659         * nat/linux-osdata.c: Update.
4660         * nat/linux-procfs.c: Update.
4661         * nat/x86-linux-dregs.c: Update.
4662         * nto-procfs.c: Update.
4663         * obsd-nat.c: Update.
4664         * ppc-linux-nat.c: Update.
4665         * ppc-nbsd-nat.c: Update.
4666         * ppc-obsd-nat.c: Update.
4667         * proc-service.c: Update.
4668         * procfs.c: Update.
4669         * python/py-inferior.c: Update.
4670         * python/py-infthread.c: Update.
4671         * ravenscar-thread.c: Update.
4672         * record.c: Update.
4673         * remote-sim.c: Update.
4674         * remote.c: Update.
4675         * rs6000-nat.c: Update.
4676         * s390-linux-nat.c: Update.
4677         * sh-nbsd-nat.c: Update.
4678         * sol-thread.c: Update.
4679         * sparc-nat.c: Update.
4680         * sparc64-tdep.c: Update.
4681         * spu-linux-nat.c: Update.
4682         * spu-tdep.c: Update.
4683         * target-debug.h: Update.
4684         * target.c: Update.
4685         * thread.c: Update.
4686         * tid-parse.c: Update.
4687         * tracefile-tfile.c: Update.
4688         * vax-bsd-nat.c: Update.
4689         * windows-nat.c: Update.
4690         * x86-linux-nat.c: Update.
4691         * x86-nat.c: Update.
4692
4693 2018-07-03  Tom Tromey  <tom@tromey.com>
4694
4695         * common/ptid.c (pid_to_ptid): Remove.
4696         * common/ptid.h (pid_to_ptid): Don't declare.
4697         * aix-thread.c: Update.
4698         * arm-linux-nat.c: Update.
4699         * common/ptid.c: Update.
4700         * common/ptid.h: Update.
4701         * corelow.c: Update.
4702         * ctf.c: Update.
4703         * darwin-nat.c: Update.
4704         * fbsd-nat.c: Update.
4705         * fork-child.c: Update.
4706         * gnu-nat.c: Update.
4707         * go32-nat.c: Update.
4708         * inf-ptrace.c: Update.
4709         * infcmd.c: Update.
4710         * inferior.c: Update.
4711         * infrun.c: Update.
4712         * linux-fork.c: Update.
4713         * linux-nat.c: Update.
4714         * nat/aarch64-linux-hw-point.c: Update.
4715         * nat/fork-inferior.c: Update.
4716         * nat/x86-linux-dregs.c: Update.
4717         * nto-procfs.c: Update.
4718         * obsd-nat.c: Update.
4719         * procfs.c: Update.
4720         * progspace.c: Update.
4721         * remote.c: Update.
4722         * rs6000-nat.c: Update.
4723         * s390-linux-nat.c: Update.
4724         * sol-thread.c: Update.
4725         * spu-linux-nat.c: Update.
4726         * target.c: Update.
4727         * top.c: Update.
4728         * tracefile-tfile.c: Update.
4729         * windows-nat.c: Update.
4730
4731 2018-07-03  Tom Tromey  <tom@tromey.com>
4732
4733         * common/ptid.h (ptid_build): Don't declare.
4734         * common/ptid.c (ptid_build): Remove.
4735         * aix-thread.c: Update.
4736         * bsd-kvm.c: Update.
4737         * bsd-uthread.c: Update.
4738         * common/agent.c: Update.
4739         * common/ptid.c: Update.
4740         * common/ptid.h: Update.
4741         * corelow.c: Update.
4742         * darwin-nat.c: Update.
4743         * fbsd-nat.c: Update.
4744         * gnu-nat.c: Update.
4745         * linux-fork.c: Update.
4746         * linux-nat.c: Update.
4747         * linux-thread-db.c: Update.
4748         * nat/linux-osdata.c: Update.
4749         * nat/linux-procfs.c: Update.
4750         * nto-procfs.c: Update.
4751         * obsd-nat.c: Update.
4752         * proc-service.c: Update.
4753         * procfs.c: Update.
4754         * ravenscar-thread.c: Update.
4755         * remote-sim.c: Update.
4756         * remote.c: Update.
4757         * sol-thread.c: Update.
4758         * target.c: Update.
4759         * windows-nat.c: Update.
4760
4761 2018-07-03  Tom Tromey  <tom@tromey.com>
4762
4763         * infrun.c (follow_exec): Use exit_inferior_silent.
4764         * inferior.c (exit_inferior_num_silent): Remove.
4765         * inferior.h (exit_inferior_num_silent): Don't declare.
4766
4767 2018-07-03  Tom Tromey  <tom@tromey.com>
4768
4769         PR cli/23340:
4770         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4771         inferior_ptid on error.
4772
4773 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4774             Simon Marchi  <simon.marchi@polymtl.ca>
4775
4776         PR tdep/8282
4777         * disasm.h (gdb_disassembler): Add
4778         `m_disassembler_options_holder'. member
4779         * disasm.c (get_all_disassembler_options): New function.
4780         (gdb_disassembler::gdb_disassembler): Use it.
4781         (gdb_buffered_insn_length_init_dis): Likewise.
4782         (gdb_buffered_insn_length): Adjust accordingly.
4783         (set_disassembler_options): Handle options with arguments.
4784         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4785         line if showing options with descriptions.
4786         (disassembler_options_completer): Adapt to using the
4787         `disasm_options_and_args_t' structure.
4788         * mips-tdep.c (mips_disassembler_options): New variable.
4789         (mips_disassembler_options_o32): Likewise.
4790         (mips_disassembler_options_n32): Likewise.
4791         (mips_disassembler_options_n64): Likewise.
4792         (gdb_print_insn_mips): Don't set `disassembler_options'.
4793         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4794         functions.
4795         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4796         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4797         `gdbarch_disassembler_options_implicit' and
4798         `gdbarch_valid_disassembler_options'.
4799         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4800         `disasm_options_and_args_t' structure.
4801         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4802         method.
4803         (valid_disassembler_options): Switch from `disasm_options_t' to
4804         the `disasm_options_and_args_t' structure.
4805         * NEWS: Document `set disassembler-options' support for the MIPS
4806         target.
4807         * gdbarch.h: Regenerate.
4808         * gdbarch.c: Regenerate.
4809
4810 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4811
4812         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4813
4814 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4815
4816         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4817         parameter in call to amd64_target_description.
4818         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4819         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4820         (amd64fbsd_init_abi): Likewise.
4821         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4822         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4823         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4824         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4825
4826 2018-06-29  Pedro Alves  <palves@redhat.com>
4827
4828         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4829         "segments" parameter.
4830         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4831         (_initialize_amd64_tdep): Update call to
4832         amd64_create_target_description.
4833         (amd64_target_description): Add "segments" parameter.  Adjust
4834         the implementation to use it.
4835         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4836         call to amd64_create_target_description.
4837         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4838         * gdb/arch/amd64.h (amd64_create_target_description): Add
4839         "segments" register.
4840         * gdb/arch/amd64.c (amd64_create_target_description): Add
4841         "segments" parameter.  Call create_feature_i386_64bit_segments
4842         only if SEGMENTS is true.
4843         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4844         call to amd64_create_target_description.
4845
4846 2018-06-29  Pedro Alves  <palves@redhat.com>
4847
4848         * thread.c (thread_target_id_str): New, factored out from ...
4849         (print_thread_info_1): ... here.  Use it to compute the max
4850         "Target Id" column width.
4851
4852 2018-06-29  Pedro Alves  <palves@redhat.com>
4853
4854         * remote.c (remote_target::extra_thread_info): Delete
4855         'display_buf' and 'n' locals.  from the cache, regardless of
4856         packet mechanims is in use.  Use cache for qThreadExtra and qP
4857         methods too.
4858
4859 2018-06-29  Pedro Alves  <palves@redhat.com>
4860
4861         * blockframe.c (find_pc_sect_containing_function): New function.
4862         * breakpoint.c (print_breakpoint_location): Don't call
4863         find_pc_sect_function.
4864         * linespec.c (create_sals_line_offset): Record the location's
4865         symbol in the sal.
4866         * linespec.c (convert_address_location_to_sals): Fill in sal's
4867         symbol with find_pc_sect_containing_function.
4868         * symtab.c (find_function_start_sal): Rename to ...
4869         (find_function_start_sal_1): ... this.
4870         (find_function_start_sal): Reimplement as wrapper around
4871         find_function_start_sal_1, and use
4872         find_pc_sect_containing_function to fill in the sal's symbol.
4873         (find_function_start_sal(symbol*, bool)): Adjust.
4874         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4875         comments.
4876         (find_pc_sect_containing_function): Declare.
4877
4878 2018-06-29  Pedro Alves  <palves@redhat.com>
4879
4880         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4881         true if the the location has no symbol.
4882
4883 2018-06-28  Tom Tromey  <tom@tromey.com>
4884
4885         * NEWS: Mention --enable-codesign.
4886         * silent-rules.mk (ECHO_SIGN): New variable.
4887         * configure.ac: Add --enable-codesign.
4888         * configure: Rebuild.
4889         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4890         (gdb$(EXEEXT)): Optionally invoke codesign.
4891
4892 2018-06-28  Pedro Alves  <palves@redhat.com>
4893
4894         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4895         comments.
4896         (switch_to_thread_no_regs): Adjust comment.
4897         * infcmd.c (stop_pc): Delete.
4898         (post_create_inferior, info_program_command): Replace references
4899         to stop_pc with references to thread_info->suspend.stop_pc.
4900         * inferior.h (stop_pc): Delete declaration.
4901         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4902         (handle_inferior_event_1, handle_signal_stop)
4903         (process_event_stop_test, keep_going_stepped_thread)
4904         (handle_step_into_function, handle_step_into_function_backward)
4905         (print_stop_location): Replace references to stop_pc with
4906         references to thread_info->suspend.stop_pc.
4907         (struct infcall_suspend_state) <stop_pc>: Delete field.
4908         (save_infcall_suspend_state, restore_infcall_suspend_state):
4909         Remove references to inf_stat->stop_pc.
4910         * linux-fork.c (fork_load_infrun_state): Likewise.
4911         * record-btrace.c (record_btrace_set_replay): Likewise.
4912         * record-full.c (record_full_goto_entry): Likewise.
4913         * remote.c (print_one_stopped_thread): Likewise.
4914         * target.c (target_resume): Extend comment.
4915         * thread.c (set_executing_thread): New.
4916         (set_executing): Use it.
4917         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4918         Remove references to stop_pc.
4919
4920 2018-06-28  Pedro Alves  <palves@redhat.com>
4921
4922         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4923         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4924
4925 2018-06-28  Tom Tromey  <tom@tromey.com>
4926
4927         * coffread.c (coff_symfile_finish): Update.
4928         * xcoffread.c (xcoff_symfile_finish): Update.
4929         * elfread.c (elf_symfile_finish): Update.
4930         * symfile.h (dwarf2_free_objfile): Don't declare.
4931         * dwarf2read.c (_initialize_dwarf2_read): Use
4932         register_objfile_data_with_cleanup.
4933         (dwarf2_free_objfile): Now static.  Change signature.
4934
4935 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4936
4937         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4938         option "-o" to add-symbol-file-load to add an offset to each
4939         section's load address.
4940         * symfile.c (set_objfile_default_section_offset): New function.
4941
4942 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4943
4944         * symfile.c (add_symbol_file_command): Make sure that sections
4945         with the same name are sorted in the same order.
4946
4947 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4948
4949         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4950         require the second argument.  If omitted, load sections at the
4951         addresses specified in the file.
4952
4953 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4954
4955         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4956         (_initialize_symfile): Add option "-o" to symbol-file to add an
4957         offset to each section of the symbol file.
4958
4959 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4960
4961         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4962
4963 2018-06-27  Tom Tromey  <tom@tromey.com>
4964
4965         * stack.c (_initialize_stack): Update "func" help text.
4966
4967 2018-06-27  Tom Tromey  <tom@tromey.com>
4968
4969         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4970         std::vector.
4971         (unwind_infopy_str, pyuw_create_unwind_info)
4972         (unwind_infopy_add_saved_register, pyuw_sniffer)
4973         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4974         Update.
4975         (struct saved_reg): Add constructor.
4976         <value>: Now a gdbpy_ref<>.
4977
4978 2018-06-27  Tom Tromey  <tom@tromey.com>
4979
4980         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4981
4982 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4983
4984         * gdb-gdb.py.in: Format using autopep8.
4985
4986 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4987
4988         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4989         (type_lookup_function): Recognize CORE_ADDR values.
4990
4991 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4992
4993         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4994         print tag_name.
4995
4996 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4997
4998         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4999         <__lt__>: Add.
5000
5001 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5002
5003         * gdb-gdb.py: Move to...
5004         * gdb-gdb.py.in: ... here.
5005         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
5006         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
5007         dependencies.
5008         (distclean): Remove gdb-gdb.py when cleaning.
5009         (gdb-gdb.py, gdb-gdb.gdb): New rules.
5010         * configure: Re-generate.
5011
5012 2018-06-27  Pedro Alves  <palves@redhat.com>
5013
5014         * proc-service.c (get_ps_regcache): New.
5015         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
5016         (ps_lsetfpregs): Use it.
5017
5018 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
5019
5020         PR gdb/21695
5021         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
5022         (dwarf_decode_lines_1): Adjust.
5023
5024 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
5025
5026         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
5027         override.
5028         <info_proc>: Likewise.
5029
5030 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
5031
5032         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
5033         to windows_fetch_one_register, and only handle the case of
5034         fetching one register.  Move the code that reloads the context
5035         and iterates over all registers if R is negative to...
5036         (windows_nat_target::fetch_registers): ... here.
5037         (do_windows_store_inferior_registers): Rename to
5038         windows_store_one_register, and only handle the case of storing
5039         one register.  Move the code that handles the case where r is
5040         negative to...
5041         (windows_nat_target::store_registers) ... here.
5042
5043 2018-06-26  Tom Tromey  <tom@tromey.com>
5044
5045         PR rust/22574:
5046         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5047         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5048         Update.
5049         (rust_internal_print_type): Add podata parameter.
5050         (rust_print_type): Update.
5051
5052 2018-06-26  Tom Tromey  <tom@tromey.com>
5053
5054         * typeprint.h (struct print_offset_data) <update, finish,
5055         maybe_print_hole>: New methods.
5056         <indentation>: New constant.
5057         * typeprint.c (print_offset_data::indentation): Define.
5058         (print_offset_data::maybe_print_hole, print_offset_data::update)
5059         (print_offset_data::finish): Move from c-typeprint.c and rename.
5060         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5061         (print_spaces_filtered_with_print_options): Update.
5062         (c_print_type_union_field_offset, maybe_print_hole)
5063         (c_print_type_struct_field_offset): Move to typeprint.c and
5064         rename.
5065         (c_type_print_base_struct_union): Update.
5066
5067 2018-06-25  Pedro Alves  <palves@redhat.com>
5068
5069         * gdbthread.h (thread_info_ref, delete_thread)
5070         (delete_thread_silent, first_thread_of_inferior)
5071         (any_thread_of_inferior, switch_to_thread)
5072         (enable_thread_stack_temporaries)
5073         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5074         (get_last_thread_stack_temporary)
5075         (value_in_thread_stack_temporaries, can_access_registers_thread):
5076         Spell out "struct thread_info" instead of just "thread_info".
5077         * inferior.h (notice_new_inferior): Likewise.
5078
5079 2018-06-25  Pedro Alves  <palves@redhat.com>
5080
5081         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5082         pass thread_info pointer to delete_thread.
5083         (windows_nat_target::detach): Pass inferior pointer to
5084         detach_inferior.
5085         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5086         delete_thread.
5087         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5088         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5089         and pass a thread_info pointer to delete_thread.
5090         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5091         pass thread_info pointer to delete_thread.
5092         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5093         delete_thread_silent call.
5094         * procfs.c (procfs_target::detach): Pass inferior pointer to
5095         detach_inferior.
5096         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5097         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5098         delete_thread_silent call.
5099         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5100         pass thread_info pointer to delete_thread.
5101         (windows_nat_target::detach): Pass inferior pointer to
5102         delete_inferior.
5103
5104 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5105
5106         * regcache.c (readable_regcache::read_part): Fix asserts.
5107         (reg_buffer::raw_collect_part): New function.
5108         (regcache::write_part): Fix asserts.
5109         (reg_buffer::raw_supply_part): New function.
5110         (regcache::transfer_regset_register): New helper function.
5111         (regcache::transfer_regset): Call new functions.
5112         (regcache_supply_regset): Use gdb_byte*.
5113         (regcache::supply_regset): Likewise.
5114         (regcache_collect_regset): Likewise.
5115         (regcache::collect_regset): Likewise.
5116         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5117         (reg_buffer::raw_supply_part): Likewise.
5118         (regcache::transfer_regset_register): Likewise.
5119         (regcache::transfer_regset): Use gdb_byte*.
5120
5121 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5122
5123         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5124
5125 2018-06-21  Pedro Alves  <palves@redhat.com>
5126
5127         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5128         instead of a ptid_t.  All callers adjusted.
5129         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5130         adjusted.
5131         (print_ada_task_info, display_current_task_id, task_command_1):
5132         Adjust.
5133         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5134         inferior_thread.
5135         (breakpoint_kind): Adjust.
5136         (remove_breakpoints_pid): Rename to ...
5137         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5138         pointer.  All callers adjusted.
5139         (bpstat_clear_actions): Use inferior_thread.
5140         (get_bpstat_thread): New.
5141         (bpstat_do_actions): Use it.
5142         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5143         to take a thread_info pointer.  All callers adjusted.
5144         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5145         (breakpoint_re_set_thread): Use inferior_thread.
5146         * breakpoint.h (struct inferior): Forward declare.
5147         (bpstat_stop_status): Update.
5148         (remove_breakpoints_pid): Delete.
5149         (remove_breakpoints_inf): New.
5150         * bsd-uthread.c (bsd_uthread_target::wait)
5151         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5152         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5153         (maint_btrace_packet_history_cmd)
5154         (maint_btrace_clear_packet_history_cmd): Adjust.
5155         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5156         inferior_thread.
5157         * cli/cli-interp.c: Include "inferior.h".
5158         * common/refcounted-object.h (struct
5159         refcounted_object_ref_policy): New.
5160         * compile/compile-object-load.c: Include gdbthread.h.
5161         (store_regs): Use inferior_thread.
5162         * corelow.c (core_target::close): Use current_inferior.
5163         (core_target_open): Adjust to use first_thread_of_inferior and use
5164         the current inferior.
5165         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5166         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5167         <thread>: ... this new field.  All references adjusted.
5168         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5169         Take a thread_info pointer instead of a ptid_t.
5170         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5171         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5172         thread_info pointer instead of a ptid_t.
5173         * elfread.c: Include "inferior.h".
5174         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5175         Use inferior_thread.
5176         * eval.c (evaluate_subexp): Likewise.
5177         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5178         inferior_thread.
5179         * gdb_proc_service.h (struct thread_info): Forward declare.
5180         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5181         <thread>: ... this new field.  All references adjusted.
5182         * gdbarch.h, gdbarch.c: Regenerate.
5183         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5184         'thread' parameter.  All implementations and callers adjusted.
5185         * gdbthread.h (thread_info) <set_running>: New method.
5186         (delete_thread, delete_thread_silent): Take a thread_info pointer
5187         instead of a ptid.
5188         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5189         (first_thread_of_process): Delete, replaced by ...
5190         (first_thread_of_inferior): ... this new function.  All callers
5191         adjusted.
5192         (any_live_thread_of_process): Delete, replaced by ...
5193         (any_live_thread_of_inferior): ... this new function.  All callers
5194         adjusted.
5195         (switch_to_thread, switch_to_no_thread): Declare.
5196         (is_executing): Delete.
5197         (enable_thread_stack_temporaries): Update comment.
5198         <enable_thread_stack_temporaries>: Take a thread_info pointer
5199         instead of a ptid_t.  Incref the thread.
5200         <~enable_thread_stack_temporaries>: Decref the thread.
5201         <m_ptid>: Delete
5202         <m_thr>: New.
5203         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5204         (get_last_thread_stack_temporary)
5205         (value_in_thread_stack_temporaries, can_access_registers_thread):
5206         Take a thread_info pointer instead of a ptid_t.  All callers
5207         adjusted.
5208         * infcall.c (get_call_return_value): Use inferior_thread.
5209         (run_inferior_call): Work with thread pointers instead of ptid_t.
5210         (call_function_by_hand_dummy): Work with thread pointers instead
5211         of ptid_t.  Use thread_info_ref.
5212         * infcmd.c (proceed_thread_callback): Access thread's state
5213         directly.
5214         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5215         access thread's state directly.
5216         (continue_command): Use inferior_thread.
5217         (info_program_command): Use find_thread_ptid and access thread
5218         state directly.
5219         (proceed_after_attach_callback): Use thread state directly.
5220         (notice_new_inferior): Take a thread_info pointer instead of a
5221         ptid_t.  All callers adjusted.
5222         (exit_inferior): Take an inferior pointer instead of a pid.  All
5223         callers adjusted.
5224         (exit_inferior_silent): New.
5225         (detach_inferior): Delete.
5226         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5227         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5228         (detach_inferior_command, kill_inferior_command): Use
5229         find_inferior_id instead of valid_gdb_inferior_id and
5230         gdb_inferior_id_to_pid.
5231         (inferior_command): Use inferior and thread pointers.
5232         * inferior.h (struct thread_info): Forward declare.
5233         (notice_new_inferior): Take a thread_info pointer instead of a
5234         ptid_t.  All callers adjusted.
5235         (detach_inferior): Delete declaration.
5236         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5237         instead of a pid.  All callers adjusted.
5238         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5239         (valid_gdb_inferior_id): Delete.
5240         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5241         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5242         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5243         ...
5244         <inf>: ... this new field.
5245         <step_ptid>: Delete, replaced by ...
5246         <step_thread>: ... this new field.
5247         (get_displaced_stepping_state): Take an inferior pointer instead
5248         of a pid.  All callers adjusted.
5249         (displaced_step_in_progress_any_inferior): Adjust.
5250         (displaced_step_in_progress_thread): Take a thread pointer instead
5251         of a ptid_t.  All callers adjusted.
5252         (displaced_step_in_progress, add_displaced_stepping_state): Take
5253         an inferior pointer instead of a pid.  All callers adjusted.
5254         (get_displaced_step_closure_by_addr): Adjust.
5255         (remove_displaced_stepping_state): Take an inferior pointer
5256         instead of a pid.  All callers adjusted.
5257         (displaced_step_prepare_throw, displaced_step_prepare)
5258         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5259         All callers adjusted.
5260         (start_step_over): Adjust.
5261         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5262         displaced step queue.
5263         (do_target_resume): Adjust.
5264         (fetch_inferior_event): Use inferior_thread.
5265         (context_switch, get_inferior_stop_soon): Take an
5266         execution_control_state pointer instead of a ptid_t.  All callers
5267         adjusted.
5268         (switch_to_thread_cleanup): Delete.
5269         (stop_all_threads): Use scoped_restore_current_thread.
5270         * inline-frame.c: Include "gdbthread.h".
5271         (inline_state) <inline_state>: Take a thread pointer instead of a
5272         ptid_t.  All callers adjusted.
5273         <ptid>: Delete, replaced by ...
5274         <thread>: ... this new field.
5275         (find_inline_frame_state): Take a thread pointer instead of a
5276         ptid_t.  All callers adjusted.
5277         (skip_inline_frames, step_into_inline_frame)
5278         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5279         pointer instead of a ptid_t.  All callers adjusted.
5280         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5281         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5282         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5283         pointers directly.
5284         * linux-nat.c (get_detach_signal): Likewise.
5285         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5286         (thread_db_notice_clone): Adjust.
5287         (thread_db_find_new_threads_silently)
5288         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5289         a thread pointer instead of a ptid_t.  All callers adjusted.
5290         * mi/mi-cmd-var.c: Include "inferior.h".
5291         (mi_cmd_var_update_iter): Update to use thread pointers.
5292         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5293         inferior directly.
5294         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5295         out to ...
5296         (mi_output_running): ... this new function.
5297         (mi_on_resume_1): Adjust to use it.
5298         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5299         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5300         directly.
5301         (interrupt_thread_callback): : Adjust to use thread and inferior
5302         pointers.
5303         * proc-service.c: Include "gdbthread.h".
5304         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5305         * progspace-and-thread.c: Include "inferior.h".
5306         * progspace.c: Include "inferior.h".
5307         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5308         hold a reference to an inferior_object.
5309         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5310         inferior_thread.
5311         * python/py-inferior.c (struct inferior_object): Give the type a
5312         tag name instead of a typedef.
5313         (python_on_normal_stop): No need to check if the current thread is
5314         listed.
5315         (inferior_to_inferior_object): Change return type to
5316         inferior_object.  All callers adjusted.
5317         (find_thread_object): Delete, bits factored out to ...
5318         (thread_to_thread_object): ... this new function.
5319         * python/py-infthread.c (create_thread_object): Use
5320         inferior_to_inferior_object.
5321         (thpy_is_stopped): Use thread pointer directly.
5322         (gdbpy_selected_thread): Use inferior_thread.
5323         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5324         field, replaced with ...
5325         <thread>: ... this new field.  All users adjusted.
5326         (btpy_insn_or_gap_new): Drop const.
5327         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5328         callers adjusted.
5329         * python/py-record.c: Include "gdbthread.h".
5330         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5331         a ptid_t.  All callers adjusted.
5332         (gdbpy_current_recording): Use inferior_thread.
5333         * python/py-record.h (recpy_record_object) <ptid>: Delete
5334         field, replaced with ...
5335         <thread>: ... this new field.  All users adjusted.
5336         (recpy_element_object) <ptid>: Delete
5337         field, replaced with ...
5338         <thread>: ... this new field.  All users adjusted.
5339         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5340         a ptid_t.  All callers adjusted.
5341         * python/py-threadevent.c: Include "gdbthread.h".
5342         (get_event_thread): Use thread_to_thread_object.
5343         * python/python-internal.h (struct inferior_object): Forward
5344         declare.
5345         (find_thread_object, find_inferior_object): Delete declarations.
5346         (thread_to_thread_object, inferior_to_inferior_object): New
5347         declarations.
5348         * record-btrace.c: Include "inferior.h".
5349         (require_btrace_thread): Use inferior_thread.
5350         (record_btrace_frame_sniffer)
5351         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5352         (get_thread_current_frame): Use scoped_restore_current_thread and
5353         switch_to_thread.
5354         (get_thread_current_frame): Use thread pointer directly.
5355         (record_btrace_replay_at_breakpoint): Use thread's inferior
5356         pointer directly.
5357         * record-full.c: Include "inferior.h".
5358         * regcache.c: Include "gdbthread.h".
5359         (get_thread_arch_regcache): Use the inferior's address space
5360         directly.
5361         (get_thread_regcache, registers_changed_thread): New.
5362         * regcache.h (get_thread_regcache(thread_info *thread)): New
5363         overload.
5364         (registers_changed_thread): New.
5365         (remote_target) <remote_detach_1>: Swap order of parameters.
5366         (remote_add_thread): <remote_add_thread>: Return the new thread.
5367         (get_remote_thread_info(ptid_t)): New overload.
5368         (remote_target::remote_notice_new_inferior): Use thread pointers
5369         directly.
5370         (remote_target::process_initial_stop_replies): Use
5371         thread_info::set_running.
5372         (remote_target::remote_detach_1, remote_target::detach)
5373         (extended_remote_target::detach): Adjust.
5374         * stack.c (frame_show_address): Use inferior_thread.
5375         * target-debug.h (target_debug_print_thread_info_pp): New.
5376         * target-delegates.c: Regenerate.
5377         * target.c (default_thread_address_space): Delete.
5378         (memory_xfer_partial_1): Use current_inferior.
5379         (target_detach): Use current_inferior.
5380         (target_thread_address_space): Delete.
5381         (generic_mourn_inferior): Use current_inferior.
5382         * target.h (struct target_ops) <thread_address_space>: Delete.
5383         (target_thread_address_space): Delete.
5384         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5385         pointers directly.
5386         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5387         thread pointer instead of a ptid_t.  Adjust all callers.
5388         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5389         (first_thread_of_process): Delete, replaced by ...
5390         (first_thread_of_inferior): ... this new function.  All callers
5391         adjusted.
5392         (any_thread_of_process): Rename to ...
5393         (any_thread_of_inferior): ... this, and take an inferior pointer.
5394         (any_live_thread_of_process): Rename to ...
5395         (any_live_thread_of_inferior): ... this, and take an inferior
5396         pointer.
5397         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5398         (value_in_thread_stack_temporaries)
5399         (get_last_thread_stack_temporary): Take a thread pointer instead
5400         of a ptid_t.  Adjust all callers.
5401         (thread_info::set_running): New.
5402         (validate_registers_access): Use inferior_thread.
5403         (can_access_registers_ptid): Rename to ...
5404         (can_access_registers_thread): ... this, and take a thread
5405         pointer.
5406         (print_thread_info_1): Adjust to compare thread pointers instead
5407         of ptids.
5408         (switch_to_no_thread, switch_to_thread): Make extern.
5409         (scoped_restore_current_thread::~scoped_restore_current_thread):
5410         Use m_thread pointer directly.
5411         (scoped_restore_current_thread::scoped_restore_current_thread):
5412         Use inferior_thread.
5413         (thread_command): Use thread pointer directly.
5414         (thread_num_make_value_helper): Use inferior_thread.
5415         * top.c (execute_command): Use inferior_thread.
5416         * tui/tui-interp.c: Include "inferior.h".
5417         * varobj.c (varobj_create): Use inferior_thread.
5418         (value_of_root_1): Use find_thread_global_id instead of
5419         global_thread_id_to_ptid.
5420
5421 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5422
5423         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5424         possible.
5425         (regcache::write_part): Likewise.
5426         (readable_regcache::cooked_read_part): Update comment.
5427         (readable_regcache::cooked_write_part): Likewise.
5428         * regcache.h: (readable_regcache::read_part): Likewise.
5429         (regcache::write_part): Likewise.
5430
5431 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5432             Dirk Schubert  <dirk.schubert@arm.com>
5433
5434         * aarch64-linux-nat.c (post_attach): New.
5435         (aarch64_linux_nat_target::post_attach): Override post_attach to
5436         record the number of hardware debug registers.
5437
5438 2018-06-20  Tom Tromey  <tom@tromey.com>
5439
5440         * python/py-param.c (add_setshow_generic): Make parameters const.
5441         (parmpy_init): Update.
5442
5443 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5444
5445         * regcache.h (regcache_cooked_read_ftype): Rename to...
5446         (register_read_ftype): ...this, change type to function_view.
5447         (class reg_buffer) <save>: Remove src parameter.
5448         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5449         parameter non-const in first overload.  Remove src parameter in
5450         second overload.
5451         * regcache.c (do_cooked_read): Remove.
5452         (readonly_detached_regcache::readonly_detached_regcache): Make
5453         parameter non-const, adjust call to other constructor.
5454         (reg_buffer::save): Remove src parameter.
5455         * frame.c (do_frame_register_read): Remove.
5456         (frame_save_as_regcache): Use lambda function.
5457         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5458         parameter to ppu2spu_data *.
5459         (ppu2spu_sniffer): Use lambda function.
5460
5461 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5462
5463         * record-full.c (record_full_target::insert_breakpoint): Remove
5464         "struct" keyword, add const.
5465
5466 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5467
5468         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5469         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5470         * configure.ac: Remove AC_PREREQ, add missing quoting.
5471         * gnulib/configure.ac: Modernize usage of
5472         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5473         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5474         (AUTOMAKE_VERSION): Bump to 1.15.1.
5475         * configure: Re-generate.
5476         * config.in: Re-generate.
5477         * aclocal.m4: Re-generate.
5478         * gnulib/aclocal.m4: Re-generate.
5479         * gnulib/config.in: Re-generate.
5480         * gnulib/configure: Re-generate.
5481         * gnulib/import/Makefile.in: Re-generate.
5482
5483 2018-06-19  Pedro Alves  <palves@redhat.com>
5484
5485         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5486         (lookup_minimal_symbol_by_pc_section): ... here with
5487         gdb_assert_not_reached added.
5488
5489 2018-06-19  Pedro Alves  <palves@redhat.com>
5490
5491         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5492         parameter with a block parameter.  Compare location's block symbol
5493         with the frame's block instead of addresses.
5494         (skip_inline_frames): Pass the current block instead of the
5495         frame's address.  Break out as soon as we determine the frame
5496         should not be skipped.
5497
5498 2018-06-18  Tom Tromey  <tom@tromey.com>
5499
5500         * solib-aix.c (solib_aix_get_section_offsets): Return
5501         unique_xmalloc_ptr.
5502         (solib_aix_solib_create_inferior_hook): Update.
5503
5504 2018-06-18  Tom Tromey  <tom@tromey.com>
5505
5506         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5507
5508 2018-06-18  Tom Tromey  <tom@tromey.com>
5509
5510         * solib-frv.c (frv_relocate_main_executable): Use
5511         unique_xmalloc_ptr.
5512         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5513         unique_xmalloc_ptr.
5514
5515 2018-06-18  Tom Tromey  <tom@tromey.com>
5516
5517         * objfiles.h (inhibit_section_map_updates): Update.
5518         (resume_section_map_updates, resume_section_map_updates_cleanup):
5519         Remove.
5520         * solib-svr4.c (svr4_handle_solib_event): Update.
5521         * objfiles.c (inhibit_section_map_updates): Return
5522         scoped_restore_tmpl<int>.
5523         (resume_section_map_updates, resume_section_map_updates_cleanup):
5524         Remove.
5525
5526 2018-06-18  Tom Tromey  <tom@tromey.com>
5527
5528         * valprint.h (read_string): Update.
5529         * valprint.c (read_string): Change type of "buffer".
5530         (val_print_string): Update.
5531         * python/py-value.c (valpy_string): Update.
5532         * language.h (struct language_defn) <la_get_string>: Change
5533         type of "buffer".
5534         (default_get_string, c_get_string): Update.
5535         * language.c (default_get_string): Change type of "buffer".
5536         * guile/scm-value.c (gdbscm_value_to_string): Update.
5537         * c-lang.c (c_get_string): Change type of "buffer".
5538
5539 2018-06-18  Tom Tromey  <tom@tromey.com>
5540
5541         * ser-mingw.c (struct pipe_state_destroyer): New.
5542         (pipe_state_up): New typedef.
5543         (cleanup_pipe_state): Remove.
5544         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5545
5546 2018-06-18  Tom Tromey  <tom@tromey.com>
5547
5548         * rust-lang.h (rust_yyerror): Don't declare.
5549         * rust-lang.c (rust_language_defn): Update.
5550         * rust-exp.y (yyerror): Now static.
5551         * parse.c (parse_exp_in_context_1): Update.
5552         * p-lang.h (p_yyerror): Don't declare.
5553         * p-lang.c (p_language_defn): Update.
5554         * p-exp.y (yyerror): Now static.
5555         * opencl-lang.c (opencl_language_defn): Update.
5556         * objc-lang.c (objc_language_defn): Update.
5557         * m2-lang.h (m2_yyerror): Don't declare.
5558         * m2-lang.c (m2_language_defn): Update.
5559         * m2-exp.y (yyerror): Now static.
5560         * language.h (struct language_defn) <la_error>: Remove.
5561         * language.c (unk_lang_error): Remove.
5562         (unknown_language_defn, auto_language_defn): Remove.
5563         * go-lang.h (go_yyerror): Don't declare.
5564         * go-lang.c (go_language_defn): Update.
5565         * go-exp.y (yyerror): Now static.
5566         * f-lang.h (f_yyerror): Don't declare.
5567         * f-lang.c (f_language_defn): Update.
5568         * f-exp.y (yyerror): Now static.
5569         * d-lang.h (d_yyerror): Don't declare.
5570         * d-lang.c (d_language_defn): Update.
5571         * d-exp.y (yyerror): Now static.
5572         * c-lang.h (c_yyerror): Don't declare.
5573         * c-lang.c (c_language_defn, cplus_language_defn)
5574         (asm_language_defn, minimal_language_defn): Update.
5575         * c-exp.y (yyerror): Now static.
5576         * ada-lang.h (ada_yyerror): Don't declare.
5577         * ada-lang.c (ada_language_defn): Update.
5578         * ada-exp.y (yyerror): Now static.
5579
5580 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5581
5582         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5583         (store_sveregs_to_thread): Likewise.
5584         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5585         (aarch64_linux_store_inferior_registers): Likewise.
5586         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5587         function.
5588         (aarch64_sve_regs_copy_to_regcache): Likewise.
5589         (aarch64_sve_regs_copy_from_regcache): Likewise.
5590         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5591         declaration.
5592         (aarch64_sve_regs_copy_to_regcache): Likewise.
5593         (aarch64_sve_regs_copy_from_regcache): Likewise.
5594         (sve_context): Structure from Linux headers.
5595         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5596         (SVE_SIG_ZREG_SIZE): Likewise.
5597         (SVE_SIG_PREG_SIZE): Likewise.
5598         (SVE_SIG_FFR_SIZE): Likewise.
5599         (SVE_SIG_REGS_OFFSET): Likewise.
5600         (SVE_SIG_ZREGS_OFFSET): Likewise.
5601         (SVE_SIG_ZREG_OFFSET): Likewise.
5602         (SVE_SIG_ZREGS_SIZE): Likewise.
5603         (SVE_SIG_PREGS_OFFSET): Likewise.
5604         (SVE_SIG_PREG_OFFSET): Likewise.
5605         (SVE_SIG_PREGS_SIZE): Likewise.
5606         (SVE_SIG_FFR_OFFSET): Likewise.
5607         (SVE_SIG_REGS_SIZE): Likewise.
5608         (SVE_SIG_CONTEXT_SIZE): Likewise.
5609         (SVE_PT_REGS_MASK): Likewise.
5610         (SVE_PT_REGS_FPSIMD): Likewise.
5611         (SVE_PT_REGS_SVE): Likewise.
5612         (SVE_PT_VL_INHERIT): Likewise.
5613         (SVE_PT_VL_ONEXEC): Likewise.
5614         (SVE_PT_REGS_OFFSET): Likewise.
5615         (SVE_PT_FPSIMD_OFFSET): Likewise.
5616         (SVE_PT_FPSIMD_SIZE): Likewise.
5617         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5618         (SVE_PT_SVE_PREG_SIZE): Likewise.
5619         (SVE_PT_SVE_FFR_SIZE): Likewise.
5620         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5621         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5622         (__SVE_SIG_TO_PT): Likewise.
5623         (SVE_PT_SVE_OFFSET): Likewise.
5624         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5625         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5626         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5627         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5628         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5629         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5630         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5631         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5632         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5633         (SVE_PT_SVE_SIZE): Likewise.
5634         (SVE_PT_SIZE): Likewise.
5635         (HAS_SVE_STATE): New define.
5636
5637 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5638
5639         * nat/aarch64-sve-linux-sigcontext.h: New file.
5640         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5641         new files.
5642         (SVE_VQ_MIN): Likewise.
5643         (SVE_VQ_MAX): Likewise.
5644         (SVE_VL_MIN): Likewise.
5645         (SVE_VL_MAX): Likewise.
5646         (SVE_NUM_ZREGS): Likewise.
5647         (SVE_NUM_PREGS): Likewise.
5648         (sve_vl_valid): Likewise.
5649         (struct user_sve_header): Likewise.
5650
5651 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5652             Richard Bunt <Richard.Bunt@arm.com>
5653
5654         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5655         was requested by GDB.
5656
5657 2018-06-15  Tom de Vries  <tdevries@suse.de>
5658
5659         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5660
5661 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5662
5663         * gnulib/update-gnulib.sh: Print expected versions of
5664         autoconf/aclocal.
5665
5666 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5667
5668         * arch-utils.c (default_type_align): Use type_length_units.
5669         * gdbtypes.c (type_align): Use type_length_units.
5670
5671 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5672
5673         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5674         of 'define' command.
5675
5676 2018-06-14  Tom de Vries  <tdevries@suse.de>
5677
5678         PR cli/22573
5679         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5680         get_no_prettyformat_print_options.
5681
5682 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5683
5684         * sparc-nat.h: Include target.h.
5685         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5686         <fetch_registers>: Remove this argument in function call.
5687         <store_registers>: Remove this argument in function call, remove
5688         extra semicolon.
5689         <low_forget_process>: Call sparc64_forget_process instead of
5690         sparc_forget_process.
5691
5692 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5693
5694         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5695         (procfs_target::make_corefile_notes): Adjust to new
5696         target_read_alloc return type.
5697
5698 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5699             Stephen Roberts  <stephen.roberts@arm.com>
5700
5701         PR gdb/22882
5702         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5703         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5704         Move should_notify_stop local into more inner scope.
5705
5706 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5707             Stephen Roberts  <stephen.roberts@arm.com>
5708
5709         PR gdb/22882
5710         * infrun.c (resume_1): Add call to mark_async_event_handler.
5711
5712 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5713
5714         * infrun.c (do_target_wait): Change old version of $pc printed.
5715
5716 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5717
5718         * dwarf2read.c (read_index_from_section): Rename to...
5719         (read_gdb_index_from_section): ... this, update all callers.
5720         (dwarf2_read_index): Rename to...
5721         (dwarf2_read_gdb_index): ... this, update all callers.
5722
5723 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5724
5725         * gdb/hppa-linux-nat.c
5726         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5727         hppa_linux_nat_target::fetch_registers.
5728
5729 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5730
5731         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5732         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5733         (AARCH64_DWARF_SVE_FFR): Likewise.
5734         (AARCH64_DWARF_SVE_P0): Likewise.
5735         (AARCH64_DWARF_SVE_Z0): Likewise.
5736
5737 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5738
5739         * common/common-regcache.h (raw_compare): New function.
5740         * regcache.c (regcache::raw_compare): Likewise.
5741         * regcache.h (regcache::raw_compare): New declaration.
5742
5743 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5744
5745         * common/common-regcache.h (reg_buffer_common): New structure.
5746         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5747         (reg_buffer::raw_supply): Likewise.
5748         (reg_buffer::raw_supply_integer): Likewise.
5749         (reg_buffer::raw_supply_zeroed): Likewise.
5750         (reg_buffer::raw_collect): Likewise.
5751         (reg_buffer::raw_collect_integer): Likewise.
5752         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5753         (reg_buffer::raw_supply): Likewise.
5754         (reg_buffer::raw_supply_integer): Likewise.
5755         (reg_buffer::raw_supply_zeroed): Likewise.
5756         (reg_buffer::raw_collect): Likewise.
5757         (reg_buffer::raw_collect_integer): Likewise.
5758
5759 2018-06-10  Tom Tromey  <tom@tromey.com>
5760
5761         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5762         (class remote_state) <stop_reply_queue>: Now std::vector.
5763         (remote_state::~remote_state)
5764         (remote_target::stop_reply_queue_length): Update.
5765         (struct queue_iter_param, remove_child_of_pending_fork)
5766         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5767         (check_pending_event_prevents_wildcard_vcont_callback)
5768         (remove_stop_reply_for_inferior)
5769         (remove_stop_reply_of_remote_state)
5770         (remote_notif_remove_once_on_match)
5771         (stop_reply_match_ptid_and_ws)
5772         (remote_kill_child_of_pending_fork): Remove.
5773         (remote_target::remove_new_fork_children)
5774         (remote_target::check_pending_events_prevent_wildcard_vcont)
5775         (remote_target::discard_pending_stop_replies)
5776         (remote_target::discard_pending_stop_replies_in_queue)
5777         (remote_target::remote_notif_remove_queued_reply)
5778         (remote_target::queued_stop_reply)
5779         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5780         (remote_target::wait, remote_target::kill_new_fork_children)
5781         (remote_target::async): Update.
5782
5783 2018-06-10  Tom Tromey  <tom@tromey.com>
5784
5785         * record-full.c (record_full_arch_list_cleanups): Remove.
5786         (record_full_message): Use try/catch.
5787         (record_full_wait_cleanups): Remove.
5788         (record_full_wait_1): Use try/catch.
5789         (record_full_restore): Likewise.
5790
5791 2018-06-10  Tom Tromey  <tom@tromey.com>
5792
5793         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5794         declare VEC.  Add constructor.
5795         <in_target_beneath>: Now bool.
5796         (record_full_breakpoints): Now a std::vector, static.
5797         (record_full_sync_record_breakpoints)
5798         (record_full_init_record_breakpoints)
5799         (record_full_target::insert_breakpoint)
5800         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5801
5802 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5803
5804         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5805         * serial.c (serial_interface_lookup): Remove struct keyword.
5806
5807 2018-06-10  Tom Tromey  <tom@tromey.com>
5808
5809         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5810         method.
5811         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5812         a method.
5813         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5814         method.
5815         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5816         "beneath" as a method.
5817         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5818         Use "beneath" as a method.
5819
5820 2018-06-10  Tom Tromey  <tom@tromey.com>
5821
5822         * tracefile.c (struct trace_file_writer_deleter): New.
5823         <operator()>: Rename from trace_file_writer_xfree.
5824         (trace_file_writer_up): New typedef.
5825         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5826
5827 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5828
5829         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5830         <m_registers, m_register_status>: Change type to
5831         std::unique_ptr.
5832         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5833         XCNEWVEC.
5834
5835 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5836
5837         * common/common-regcache.h (enum register_status): Add
5838         underlying type "signed char".
5839         * regcache.h (reg_buffer) <m_register_status>: Change type to
5840         register_status *.
5841         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5842         register_status instead of signed char.
5843         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5844         (reg_buffer::get_register_status): Remove cast.
5845         (readable_regcache::raw_read): Remove cast.
5846         (readable_regcache::cooked_read): Remove cast.
5847
5848 2018-06-09  Tom Tromey  <tom@tromey.com>
5849
5850         * source.c (reverse_search_command, forward_search_command): Use
5851         scoped_fd.
5852
5853 2018-06-09  Tom Tromey  <tom@tromey.com>
5854
5855         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5856         (serial_ops_list): Now static, std::vector.
5857         (serial_interface_lookup, serial_add_interface): Update.
5858
5859 2018-06-09  Tom Tromey  <tom@tromey.com>
5860
5861         * dwarf2read.c (process_cu_includes): Update.
5862         (process_full_comp_unit): Update.
5863         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5864         std::vector.
5865
5866 2018-06-08  Paul Koning  <paul_koning@dell.com>
5867
5868         PR gdb/23252
5869
5870         * python/python.c (do_start_initialization):
5871         Avoid call to internal Python API.
5872         (init__gdb_module): New function.
5873
5874 2018-06-08  Gary Benson <gbenson@redhat.com>
5875
5876         * linux-thread-db.c (valprint.h): New include.
5877         (struct check_thread_db_info): New structure.
5878         (check_thread_db_on_load, tdb_testinfo): New static globals.
5879         (check_thread_db, check_thread_db_callback): New functions.
5880         (try_thread_db_load_1): Run integrity checks if requested.
5881         (maintenance_check_libthread_db): New function.
5882         (_initialize_thread_db): Register "maint check libthread-db"
5883         and "maint set/show check-libthread-db".
5884         * NEWS: Mention the above new commands.
5885
5886 2018-06-08  Tom Tromey  <tom@tromey.com>
5887
5888         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5889         now a method.
5890
5891 2018-06-08  Tom Tromey  <tom@tromey.com>
5892
5893         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5894
5895 2018-06-08  Tom Tromey  <tom@tromey.com>
5896
5897         * common/btrace-common.h (struct btrace_data): Add constructor,
5898         destructor, move assignment operator.
5899         <empty, clear, fini>: New methods.
5900         <format>: Initialize.
5901         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5902         (btrace_data_empty): Don't declare.
5903         * common/btrace-common.c (btrace_data_init): Remove.
5904         (btrace_data::fini): Rename from btrace_data_fini.
5905         (btrace_data::empty): Rename from btrace_data_empty.
5906         (btrace_data::clear): Rename from btrace_data_clear.  Return
5907         bool.
5908         * btrace.h (make_cleanup_btrace_data): Don't declare.
5909         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5910         (parse_xml_btrace): Update.
5911         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5912         (maint_btrace_clear_packet_history_cmd): Update.
5913
5914 2018-06-07  Pedro Alves  <palves@redhat.com>
5915
5916         * target.h (target_ops) <beneath>: Now a method.  All references
5917         updated.
5918         (class target_stack): New.
5919         * target.c (g_target_stack): New.
5920         (g_current_top_target): Delete.
5921         (current_top_target): Get the top target out of g_target_stack.
5922         (target_stack::push, target_stack::unpush): New.
5923         (push_target, unpush_target): Reimplement.
5924         (target_is_pushed): Reimplement in terms of g_target_stack.
5925         (target_ops::beneath, target_stack::find_beneath): New.
5926
5927 2018-06-07  Pedro Alves  <palves@redhat.com>
5928
5929         * target.h (find_target_beneath): Delete declaration.
5930         * target.c (find_target_beneath): Delete definition.
5931         * aix-thread.c: All callers of find_target_beneath adjusted to
5932         call target_ops::beneath instead.
5933         * bsd-uthread.c: Likewise.
5934         * linux-thread-db.c: Likewise.
5935         * ravenscar-thread.c: Likewise.
5936         * sol-thread.c: Likewise.
5937         * spu-multiarch.c: Likewise.
5938
5939 2018-06-07  Pedro Alves  <palves@redhat.com>
5940
5941         * target.h (target_ops) <beneath>: Now a method.  All references
5942         updated.
5943         (target_ops) <m_beneath>: New.
5944         * target.c (target_ops::beneath): New.
5945         * corelow.c: Adjust all references to target_ops::beneath.
5946         * linux-thread-db.c: Likewise.
5947         * make-target-delegates: Likewise.
5948         * record-btrace.c: Likewise.
5949         * record-full.c: Likewise.
5950         * remote.c: Likewise.
5951         * target.c: Likewise.
5952         * target-delegates.c: Regenerate.
5953
5954 2018-06-07  Pedro Alves  <palves@redhat.com>
5955
5956         * target.h (target_stack): Delete.
5957         (current_top_target): Declare function.
5958         * target.c (target_stack): Delete.
5959         (g_current_top_target): New.
5960         (current_top_target): New function.
5961         * auxv.c: Use current_top_target instead of target_stack
5962         throughout.
5963         * avr-tdep.c: Likewise.
5964         * breakpoint.c: Likewise.
5965         * corefile.c: Likewise.
5966         * elfread.c: Likewise.
5967         * eval.c: Likewise.
5968         * exceptions.c: Likewise.
5969         * frame.c: Likewise.
5970         * gdbarch-selftests.c: Likewise.
5971         * gnu-v3-abi.c: Likewise.
5972         * ia64-tdep.c: Likewise.
5973         * ia64-vms-tdep.c: Likewise.
5974         * infcall.c: Likewise.
5975         * infcmd.c: Likewise.
5976         * infrun.c: Likewise.
5977         * linespec.c: Likewise.
5978         * linux-tdep.c: Likewise.
5979         * minsyms.c: Likewise.
5980         * ppc-linux-nat.c: Likewise.
5981         * ppc-linux-tdep.c: Likewise.
5982         * procfs.c: Likewise.
5983         * regcache.c: Likewise.
5984         * remote.c: Likewise.
5985         * rs6000-tdep.c: Likewise.
5986         * s390-linux-nat.c: Likewise.
5987         * s390-tdep.c: Likewise.
5988         * solib-aix.c: Likewise.
5989         * solib-darwin.c: Likewise.
5990         * solib-dsbt.c: Likewise.
5991         * solib-spu.c: Likewise.
5992         * solib-svr4.c: Likewise.
5993         * solib-target.c: Likewise.
5994         * sparc-tdep.c: Likewise.
5995         * sparc64-tdep.c: Likewise.
5996         * spu-tdep.c: Likewise.
5997         * symfile.c: Likewise.
5998         * symtab.c: Likewise.
5999         * target-descriptions.c: Likewise.
6000         * target-memory.c: Likewise.
6001         * target.c: Likewise.
6002         * target.h: Likewise.
6003         * tracefile-tfile.c: Likewise.
6004         * tracepoint.c: Likewise.
6005         * valops.c: Likewise.
6006         * valprint.c: Likewise.
6007         * value.c: Likewise.
6008         * windows-tdep.c: Likewise.
6009         * mi/mi-main.c: Likewise.
6010
6011 2018-06-07  Tom Tromey  <tom@tromey.com>
6012
6013         * valprint.h (build_address_symbolic): Declare.
6014         * printcmd.c (print_address_symbolic): Update.
6015         (build_address_symbolic): Change "name" and "filename" to
6016         std::string.
6017         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
6018         Update.
6019         * defs.h (build_address_symbolic): Remove declaration.
6020
6021 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
6022
6023         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
6024         (aarch64_vnv_type): Add function.
6025         (aarch64_pseudo_register_name): Add V regs for SVE.
6026         (aarch64_pseudo_register_type): Likewise.
6027         (aarch64_pseudo_register_reggroup_p): Likewise.
6028         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
6029         (aarch64_pseudo_read_value): Add V regs for SVE.
6030         (aarch64_pseudo_write_2): Use V0 offset for SVE
6031         (aarch64_pseudo_write): Add V regs for SVE.
6032         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
6033
6034 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
6035
6036         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
6037         (sve_vl_from_vq): Likewise.
6038
6039 2018-06-05  Tom Tromey  <tom@tromey.com>
6040
6041         * cli/cli-cmds.c (show_version): Update.
6042         * top.c (print_gdb_version): Add "interactive" parameter.
6043         Update.
6044         * main.c (captured_main_1): Update.
6045         * top.h (print_gdb_version): Add "interactive" parameter and a
6046         comment.
6047
6048 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6049
6050         * common/enum-flags.h: Add trailing semicolon to example in
6051         comment.
6052
6053 2018-06-05  Tom Tromey  <tom@tromey.com>
6054
6055         PR cli/12326:
6056         * NEWS: Add entry about pager.
6057         * utils.c (pagination_disabled_for_command): New global.
6058         (prompt_for_continue): Allow "c" response to prompt.
6059         (reinitialize_more_filter): Clear
6060         pagination_disabled_for_command.
6061         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6062
6063 2018-06-04  Tom Tromey  <tom@tromey.com>
6064
6065         * ada-lang.h (ada_lookup_symbol_list): Update.
6066         * ada-lang.c (resolve_subexp): Update.
6067         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6068         parameter.
6069         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6070         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6071         results parameter to std::vector.
6072         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6073         Update.
6074         * ada-exp.y (block_lookup): Update.
6075         (select_possible_type_sym): Change type of syms.  Remove nsyms
6076         parameter.
6077         (write_var_or_type, write_name_assoc): Update.
6078
6079 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6080
6081         * windows-nat.c (windows_nat_target::xfer_partial): Return
6082         TARGET_XFER_E_IO if we need to delegate to the target beneath
6083         but BENEATH is NULL.
6084
6085 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6086
6087         * Makefile.in (config.status): Add configure.nat as a
6088         dependency.
6089
6090 2018-06-04  Tom Tromey  <tom@tromey.com>
6091
6092         * cp-name-parser.y (cpname_state): Add method declarations.
6093         (HANDLE_QUAL): Update.
6094         (cpname_state::d_grab, cpname_state::fill_comp)
6095         (cpname_state::make_operator, cpname_state::make_dtor)
6096         (cpname_state::make_builtin_type, cpname_state::make_name)
6097         (cpname_state::d_qualify, cpname_state::d_int_type)
6098         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6099         (%union): Move earlier.
6100
6101 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6102
6103         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6104
6105 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6106
6107         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6108         (aarch64_pseudo_write_1): Likewise.
6109         (aarch64_pseudo_read_value): Use helper.
6110         (aarch64_pseudo_write): Likewise.
6111
6112 2018-06-04  Pedro Alves  <palves@redhat.com>
6113
6114         * darwin-nat.c (darwin_ops): Delete.
6115         (darwin_attach_pid): Use get_native_target.
6116
6117 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6118
6119         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6120         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6121
6122 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6123
6124         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6125         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6126         (aarch64_gdbarch_init): Check for SVE.
6127         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6128
6129 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6130
6131         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6132         * aarch64-tdep.h (aarch64_read_description): Likewise.
6133         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6134         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6135         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6136         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6137         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6138
6139 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6140
6141         * value.c (value_fetch_lazy_bitfield): New.
6142         (value_fetch_lazy_memory): New.
6143         (value_fetch_lazy_register): New.
6144         (value_fetch_lazy): Factor out to smaller functions.
6145
6146 2018-06-01  Tom Tromey  <tom@tromey.com>
6147
6148         * cp-name-parser.y (backslashable, represented): Now const.
6149
6150 2018-06-01  Tom Tromey  <tom@tromey.com>
6151
6152         * cp-name-parser.y: Include parser-defs.h.
6153         (parser_fprintf): Remove declaration.
6154
6155 2018-06-01  Tom Tromey  <tom@tromey.com>
6156
6157         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6158         %parse-param.
6159         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6160         (global_result): Remove globals.
6161         (struct cpname_state): New.
6162         (yyparse): Don't declare.
6163         (yylex, yyerror): Move declarations after %union.
6164         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6165         (make_name): Add state parameter.
6166         Update all callers.
6167         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6168         parameter.
6169         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6170         Update.
6171         (yylex): Add lvalp, state parameters.
6172         (yyerror): Add state parameter.
6173         (cp_demangled_name_to_comp): Update.
6174
6175 2018-06-01  Tom Tromey  <tom@tromey.com>
6176
6177         * cp-name-parser.y (parser_fprintf): Declare.
6178         (GDB_YY_REMAP_PREFIX): Define.
6179         Include yy-remap.h.  Don't redefine yy* identifiers.
6180
6181 2018-06-01  Tom Tromey  <tom@tromey.com>
6182
6183         * python/py-type.c (typy_legacy_template_argument): Update.
6184         * cp-support.h (cp_demangled_name_to_comp): Update.
6185         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6186         parameter to be a "std::string *".
6187         (main): Update.
6188
6189 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6190
6191         * ada-lex.l: Include "diagnostics.h" instead of
6192         "common/diagnostics.h".
6193         * unittests/environ-selftests.c: Likewise.
6194         * common/diagnostics.h: Moved to ../include.
6195
6196 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6197
6198         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6199         to language_mode_manual while calling breakpoint_re_set_one.
6200
6201 2018-06-01  Tom Tromey  <tom@tromey.com>
6202
6203         * valops.c (value_cast_structs, destructor_name_p): Update.
6204         * symtab.c (gdb_mangle_name): Update.
6205         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6206         Update.
6207         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6208         (pascal_object_print_value_fields, pascal_object_print_value):
6209         Update.
6210         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6211         * linespec.c (find_methods): Update.
6212         * gdbtypes.h (type_name_no_tag): Remove.
6213         (type_name_or_error): Rename from type_name_no_tag_or_error.
6214         * gdbtypes.c (type_name_no_tag): Remove.
6215         (type_name_or_error): Rename from type_name_no_tag_or_error.
6216         (lookup_struct_elt_type, check_typedef): Update.
6217         * expprint.c (print_subexp_standard): Update.
6218         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6219         * d-namespace.c (d_lookup_nested_symbol): Update.
6220         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6221         (cp_print_class_member): Update.
6222         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6223         * completer.c (add_struct_fields): Update.
6224         * c-typeprint.c (cp_type_print_derivation_info)
6225         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6226         Update.
6227         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6228         (ada_prefer_type, ada_is_exception_sym): Update.
6229
6230 2018-06-01  Tom Tromey  <tom@tromey.com>
6231
6232         * valops.c (enum_constant_from_type, value_namespace_elt)
6233         (value_maybe_namespace_elt): Update.
6234         * valarith.c (find_size_for_pointer_math): Update.
6235         * target-descriptions.c (make_gdb_type): Update.
6236         * symmisc.c (print_symbol): Update.
6237         * stabsread.c (define_symbol, read_type)
6238         (complain_about_struct_wipeout, add_undefined_type)
6239         (cleanup_undefined_types_1): Update.
6240         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6241         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6242         (rust_internal_print_type, rust_composite_type)
6243         (rust_evaluate_funcall, rust_evaluate_subexp)
6244         (rust_inclusive_range_type_p): Update.
6245         * python/py-type.c (typy_get_tag): Update.
6246         * p-typeprint.c (pascal_type_print_base): Update.
6247         * mdebugread.c (parse_symbol, parse_type): Update.
6248         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6249         Update.
6250         * guile/scm-type.c (gdbscm_type_tag): Update.
6251         * go-lang.c (sixg_string_p): Update.
6252         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6253         Update.
6254         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6255         (TYPE_TAG_NAME): Remove.
6256         * gdbtypes.c (type_name_no_tag): Simplify.
6257         (check_typedef, check_types_equal, recursive_dump_type)
6258         (copy_type_recursive, arch_composite_type): Update.
6259         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6260         in summary mode when needed.
6261         * eval.c (evaluate_funcall): Update.
6262         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6263         (process_structure_scope, read_enumeration_type)
6264         (read_namespace_type, read_module_type, determine_prefix): Update.
6265         * cp-support.c (inspect_type): Update.
6266         * coffread.c (process_coff_symbol, decode_base_type): Update.
6267         * c-varobj.c (c_is_path_expr_parent): Update.
6268         * c-typeprint.c (c_type_print_base_struct_union): Update.
6269         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6270         summary when using C language.
6271         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6272         (gen_maybe_namespace_elt): Update.
6273         * ada-lang.c (ada_type_name): Simplify.
6274         (empty_record, ada_template_to_fixed_record_type_1)
6275         (template_to_static_fixed_type)
6276         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6277
6278 2018-06-01  Tom Tromey  <tom@tromey.com>
6279
6280         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6281         c_print_type.
6282         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6283         (c_print_type): Update.
6284         (c_print_type): New overload.
6285         (c_type_print_varspec_prefix, c_type_print_args)
6286         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6287         (c_type_print_base_struct_union, c_type_print_base_1)
6288         (cp_type_print_method_args): Add "language" parameter.
6289         (c_type_print_base): Update.
6290         * c-lang.h (c_print_type): Add new overload.
6291
6292 2018-06-01  Tom Tromey  <tom@tromey.com>
6293
6294         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6295         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6296
6297 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6298
6299         * aarch64-tdep.c (aarch64_sve_register_names): New const
6300         var.
6301         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6302         (AARCH64_SVE_Z_REGS_NUM): New define.
6303         (AARCH64_SVE_P_REGS_NUM): Likewise.
6304         (AARCH64_SVE_NUM_REGS): Likewise.
6305
6306 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6307
6308         * nat/linux-ptrace.h [__alpha__]
6309         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6310         definitions.
6311
6312 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6313
6314         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6315         the endianness selected.
6316         * NEWS: Document `set endian auto' mode operation update.
6317
6318 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6319
6320         * Makefile.in: Add new header.
6321         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6322         (sve_vl_from_vg): Likewise.
6323         (sve_vq_from_vl): Likewise.
6324         (sve_vl_from_vq): Likewise.
6325         (sve_vq_from_vg): Likewise.
6326         (sve_vg_from_vq): Likewise.
6327         * configure.nat: Add new c file.
6328         * nat/aarch64-sve-linux-ptrace.c: New file.
6329         * nat/aarch64-sve-linux-ptrace.h: New file.
6330
6331 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6332
6333         * aarch64-linux-nat.c (aarch64_linux_read_description):
6334         Add parmeter zero.
6335         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6336         Likewise.
6337         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6338         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6339         (aarch64_gdbarch_init): Add parmeter zero.
6340         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6341         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6342         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6343         parmeter.
6344         * doc/gdb.texinfo: Describe SVE feature
6345         * features/aarch64-sve.c: New file.
6346
6347 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6348
6349         PR gdb/23210
6350         * gdbarch.sh (significant_addr_bit): Default to zero when
6351         not set by target architecture.
6352         * gdbarch.c: Re-generated.
6353         * utils.c (address_significant): Update.
6354
6355 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6356
6357         * stack.c (func_command): Remove trailing newline in call to error.
6358
6359 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * regcache.h (regcache_raw_collect): Remove, update callers to
6362         use regcache::raw_collect.
6363         * regcache.c (regcache_raw_collect): Remove.
6364
6365 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6366
6367         * regcache.h (regcache_raw_supply): Remove, update callers to
6368         use detached_regcache::raw_supply.
6369         * regcache.c (regcache_raw_supply): Remove.
6370
6371 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6372
6373         * regcache.h (regcache_cooked_write_part): Remove, update
6374         callers to use regcache::cooked_write_part.
6375         * regcache.c (regcache_cooked_write_part): Remove.
6376
6377 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6378
6379         * regcache.h (regcache_cooked_read_part): Remove, update callers
6380         to use readable_regcache::cooked_read_part.
6381         * regcache.c (regcache_cooked_read_part): Remove.
6382
6383 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6384
6385         * regcache.h (regcache_cooked_read_value): Remove, update
6386         callers to use readable_regcache::cooked_read_value.
6387         * regcache.c (regcache_cooked_read_value): Remove.
6388
6389 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6390
6391         * regcache.h (regcache_cooked_write): Remove, update callers to
6392         use regcache::cooked_write.
6393         * regcache.c (regcache_cooked_write): Remove.
6394
6395 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6396
6397         * regcache.h (regcache_invalidate): Remove, update callers to
6398         use detached_regcache::invalidate instead.
6399         * regcache.c (regcache_invalidate): Remove.
6400
6401 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6402
6403         * regcache.h (regcache_raw_write_part): Remove, update callers
6404         to use regcache::raw_write_part instead.
6405         * regcache.c (regcache_raw_write_part): Remove.
6406
6407 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6408
6409         * regcache.h (regcache_raw_read_part): Remove, update callers to
6410         use readable_regcache::raw_read_part instead.
6411         * regcache.c (regcache_raw_read_part): Remove.
6412
6413 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6414
6415         * regcache.h (regcache_cooked_read): Remove, update callers to
6416         use readable_regcache::cooked_read instead.
6417         * regcache.c (regcache_cooked_read): Remove.
6418
6419 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6420
6421         * regcache.h (regcache_raw_write): Remove, update callers to use
6422         regcache::raw_write instead.
6423         * regcache.c (regcache_raw_write): Remove.
6424
6425 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6426
6427         * regcache.h (regcache_raw_read): Remove, update callers to use
6428         readable_regcache::raw_read instead.
6429         * regcache.c (regcache_raw_read): Remove.
6430
6431 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6432
6433         * regcache.h (regcache_raw_update): Remove, update callers to
6434         use readable_regcache::raw_update instead.
6435         * regcache.c (regcache_raw_update): Remove.
6436
6437 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6438
6439         * regcache.h (regcache_register_status): Remove, update callers
6440         to use reg_buffer::get_register_status directly instead.
6441         * regcache.c (regcache_register_status): Remove.
6442
6443 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6444
6445         * regcache.h (regcache_get_ptid): Remove, update all callers to
6446         call regcache::ptid instead.
6447         * regcache.c (regcache_get_ptid): Remove.
6448
6449 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6450
6451         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6452
6453 2018-05-30  Pedro Alves  <palves@redhat.com>
6454
6455         * common/common-exceptions.h (exception_rethrow): Use
6456         ATTRIBUTE_NORETURN.
6457
6458 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6459
6460         * breakpoint.c (print_solib_event, check_status_catch_solib):
6461         Remove struct keyword in range-based for loops.
6462         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6463         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6464         Likewise.
6465         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6466         Likewise.
6467         * symfile.c (addr_info_make_relative): Likewise.
6468         * thread.c (value_in_thread_stack_temporaries): Likewise.
6469
6470 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6471
6472         PR gdb/16841
6473         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6474         aggregate type to get its real type before accessing it.
6475
6476 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6477
6478         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6479         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6480         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6481         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6482         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6483         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6484         * printcmd.c (info_address_command): Likewise.
6485
6486 2018-05-29  Tom Tromey  <tom@tromey.com>
6487
6488         * windows-nat.c (handle_exception): Update fall-through comment.
6489
6490 2018-05-29  Tom Tromey  <tom@tromey.com>
6491
6492         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6493         (struct program_space) <added_solibs>: Now a std::vector.
6494         * breakpoint.c (print_solib_event): Update.
6495         (check_status_catch_solib): Update.
6496         * progspace.c (clear_program_space_solib_cache): Update.
6497         * solib.c (update_solib_list): Update.
6498
6499 2018-05-29  Tom Tromey  <tom@tromey.com>
6500
6501         * python/py-type.c (typy_richcompare): Update.
6502         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6503         * gdbtypes.h (types_deeply_equal): Return bool.
6504         (types_equal): Likewise.
6505         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6506         declare VEC.
6507         (check_types_equal): Change worklist to std::vector.  Return
6508         bool.
6509         (struct type_equality_entry): Add constructor.
6510         (compare_maybe_null_strings): Return bool.
6511         (check_types_worklist): Return bool.  Change worklist to
6512         std::vector.
6513         (types_deeply_equal): Use std::vector.
6514         (types_equal): Return bool.
6515         (compare_maybe_null_strings): Simplify.
6516
6517 2018-05-29  Tom Tromey  <tom@tromey.com>
6518
6519         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6520
6521 2018-05-29  Tom Tromey  <tom@tromey.com>
6522
6523         * objc-lang.h: Don't include cp-support.h.
6524         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6525         declare VEC.
6526
6527 2018-05-27  Tom Tromey  <tom@tromey.com>
6528
6529         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6530
6531 2018-05-25  Tom Tromey  <tom@tromey.com>
6532
6533         * value.c (value::location): Initialize.
6534
6535 2018-05-25  Tom Tromey  <tom@tromey.com>
6536
6537         * dbxread.c (init_bincl_list): Remove.
6538         (bincl_list): Now a std::vector.
6539         (bincls_allocated, next_bincl): Remove.
6540         (free_bincl_list, do_free_bincl_list_cleanup)
6541         (make_cleanup_free_bincl_list): Remove.
6542         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6543         unique_xmalloc_ptr.
6544         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6545         (struct header_file_location): Add constructor.
6546         (add_bincl_to_list): Remove.
6547
6548 2018-05-25  Tom Tromey  <tom@tromey.com>
6549
6550         * tui/tui.c (tui_enable): Update.
6551         * mi/mi-interp.c (mi_interp::init): Update.
6552         * interps.h (class interp) <name>: New method.
6553         <m_name>: Rename from name.
6554         (~scoped_restore_interp): Update.
6555         * interps.c (interp::interp): Update.
6556         (interp_add, interp_set, interp_lookup_existing)
6557         (current_interp_named_p): Update.
6558
6559 2018-05-25  Tom Tromey  <tom@tromey.com>
6560
6561         * interps.c (interp_name): Remove.
6562         * mi/mi-interp.c (mi_interp::init): Update.
6563         * interps.h (interp_name): Remove.
6564         (~scoped_restore_interp): Update.
6565         * tui/tui.c (tui_enable): Update.
6566
6567 2018-05-25  Tom Tromey  <tom@tromey.com>
6568
6569         * utils.c (fputs_maybe_filtered): Update.
6570         * linespec.c (decode_line_full): Update.
6571         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6572         (mi_print_breakpoint_for_event, mi_solib_loaded)
6573         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6574         (mi_user_selected_context_changed): Update.
6575         * mi/mi-main.c (mi_execute_command): Update.
6576         * cli/cli-script.c (execute_control_command): Update.
6577         * python/python.c (execute_gdb_command): Update.
6578         * solib.c (info_sharedlibrary_command): Update.
6579         * interps.c (interp_ui_out): Remove.
6580         * interps.h (interp_ui_out): Remove.
6581
6582 2018-05-25  Tom Tromey  <tom@tromey.com>
6583
6584         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6585         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6586         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6587
6588 2018-05-25  Tom Tromey  <tom@tromey.com>
6589
6590         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6591         * interps.c (interp_exec): Use scoped_restore.
6592
6593 2018-05-25  Tom Tromey  <tom@tromey.com>
6594
6595         * remote.c (remote_target::remote_file_get): Use
6596         gdb::byte_vector.
6597         (remote_target::remote_file_put): Likewise.
6598
6599 2018-05-25  Tom Tromey  <tom@tromey.com>
6600
6601         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6602         a std::string.
6603         (get_pe_section_index, add_pe_exported_sym): Update.
6604         (read_pe_exported_syms): Use gdb::def_vector.
6605
6606 2018-05-25  Tom Tromey  <tom@tromey.com>
6607
6608         * frame.c (remove_prev_frame): Remove.
6609         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6610
6611 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6612
6613         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6614         Remove prototypes.
6615         * mips-linux-nat.c (supply_fpregset): Always call
6616         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6617         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6618         `mips_fill_fpregset'.
6619         * mips-linux-tdep.c (mips_supply_fpregset)
6620         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6621         (mips_fill_fpregset_wrapper): Remove functions.
6622         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6623         (mips_linux_fpregset): Remove variable.
6624         (mips_linux_iterate_over_regset_sections): Use
6625         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6626         (mips_linux_o32_sigframe_init): Remove comment.
6627
6628 2018-05-25  Pedro Alves  <palves@redhat.com>
6629
6630         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6631         (struct readahead_cache, struct packet_reg, struct
6632         remote_arch_state, class remote_state): Move higher up in the
6633         file.
6634         (remote_target::m_remote_state): Now an object instead of a pointer.
6635         (remote_target::get_remote_state): Adjust.
6636
6637 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6638
6639         * stack.c (select_and_print_frame): Delete.
6640         (struct function_bounds): Move struct within function.
6641         (func_command): Most content moved into new function
6642         find_frame_for_function, use new function, print result, add
6643         function comment.
6644         (find_frame_for_function): New function, now returns a result.
6645
6646 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6647
6648         * stack.c (iterate_over_block_arg_vars): Fix comment.
6649         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6650
6651 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6652
6653         PR gdb/23203
6654         * frame.c
6655         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6656         Define.
6657         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6658         Define.
6659         * frame.h (class scoped_restore_selected_frame): New class.
6660         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6661         of any exception, use scoped_restore_selected_frame to restore the
6662         frame instead.
6663
6664 2018-05-24  Pedro Alves  <palves@redhat.com>
6665
6666         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6667         override.
6668
6669 2018-05-23  Tom Tromey  <tom@tromey.com>
6670
6671         * complaints.c (struct complaints): Remove.
6672         (symfile_complaint_book): Remove.
6673         (series): New global.
6674         (complaint_internal): Update.
6675         (clear_complaints): Update.
6676
6677 2018-05-23  Tom Tromey  <tom@tromey.com>
6678
6679         * complaints.c (counters): New global.
6680         (struct complain): Remove.
6681         (struct complaints) <root>: Remove.
6682         (complaint_sentinel): Remove.
6683         (symfile_complaint_book): Update.
6684         (find_complaint) Remove.
6685         (complaint_internal, clear_complaints): Update.
6686
6687 2018-05-23  Tom Tromey  <tom@tromey.com>
6688
6689         * complaints.c (struct complain) <file, line>: Remove.
6690         (find_complaint): Remove file, line parameters.
6691         (complaint_internal): Update.
6692
6693 2018-05-23  Tom Tromey  <tom@tromey.com>
6694
6695         * complaints.c (vcomplaint): Remove.
6696         (complaint_internal) Merge in contents of vcomplaint.
6697
6698 2018-05-23  Tom Tromey  <tom@tromey.com>
6699
6700         * complaints.c (struct complaints) <explanation>: Remove.
6701         (symfile_explanations): Remove.
6702         (symfile_complaint_book): Update.
6703         (vcomplaint): Update.
6704         (struct explanation): Remove.
6705
6706 2018-05-23  Tom Tromey  <tom@tromey.com>
6707
6708         * complaints.c (symfile_complaints): Remove.
6709         (complaint_internal): Remove "complaints" parameter.
6710         (clear_complaints, vcomplaint): Remove "c" parameter.
6711         (get_complaints): Remove.
6712         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6713         (dwarf2_debug_line_missing_file_complaint)
6714         (dwarf2_debug_line_missing_end_sequence_complaint)
6715         (dwarf2_complex_location_expr_complaint)
6716         (dwarf2_const_value_length_mismatch_complaint)
6717         (dwarf2_section_buffer_overflow_complaint)
6718         (dwarf2_macro_malformed_definition_complaint)
6719         (dwarf2_invalid_attrib_class_complaint)
6720         (create_addrmap_from_index, dw2_symtab_iter_next)
6721         (dw2_expand_marked_cus)
6722         (dw2_debug_names_iterator::find_vec_in_debug_names)
6723         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6724         (create_debug_type_hash_table, init_cutu_and_read_dies)
6725         (partial_die_parent_scope, add_partial_enumeration)
6726         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6727         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6728         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6729         (create_cus_hash_table, create_dwp_hash_table)
6730         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6731         (dwarf2_rnglists_process, dwarf2_ranges_process)
6732         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6733         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6734         (handle_struct_member_die, process_structure_scope)
6735         (read_array_type, read_common_block, read_module_type)
6736         (read_tag_pointer_type, read_typedef, read_base_type)
6737         (read_subrange_type, load_partial_dies, partial_die_info::read)
6738         (partial_die_info::read, partial_die_info::read)
6739         (partial_die_info::read, read_checked_initial_length_and_offset)
6740         (dwarf2_string_attr, read_formatted_entries)
6741         (dwarf_decode_line_header)
6742         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6743         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6744         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6745         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6746         (get_signatured_type, get_DW_AT_signature_type)
6747         (decode_locdesc, file_file_name, consume_improper_spaces)
6748         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6749         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6750         (dwarf2_symbol_mark_computed, set_die_type)
6751         (read_attribute_value): Update.
6752         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6753         Update.
6754         * dbxread.c (unknown_symtype_complaint)
6755         (lbrac_mismatch_complaint, repeated_header_complaint)
6756         (set_namestring, function_outside_compilation_unit_complaint)
6757         (read_dbx_symtab, process_one_symbol): Update.
6758         * gdbtypes.c (stub_noname_complaint): Update.
6759         * windows-nat.c (handle_unload_dll): Update.
6760         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6761         (decode_base_type): Update.
6762         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6763         (eb_complaint, record_include_begin, record_include_end)
6764         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6765         (process_xcoff_symbol, read_symbol)
6766         (function_outside_compilation_unit_complaint)
6767         (scan_xcoff_symtab): Update.
6768         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6769         * buildsym.c (finish_block_internal, make_blockvector)
6770         (end_symtab_get_static_block, augment_type_symtab): Update.
6771         * dtrace-probe.c (dtrace_process_dof)
6772         (dtrace_static_probe_ops::get_probes): Update.
6773         * complaints.h (struct complaint): Don't declare.
6774         (symfile_complaints): Remove.
6775         (complaint_internal): Remove "complaints" parameter.
6776         (complaint): Likewise.
6777         (clear_complaints): Likewise.
6778         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6779         (reread_symbols): Update.
6780         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6781         (dwarf2_frame_cache, decode_frame_entry): Update.
6782         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6783         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6784         (info_selectors_command): Update.
6785         * macrotab.c (macro_include, check_for_redefinition)
6786         (macro_undef): Update.
6787         * objfiles.c (filter_overlapping_sections): Update.
6788         * stabsread.c (invalid_cpp_abbrev_complaint)
6789         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6790         (define_symbol, error_type, read_type, rs6000_builtin_type)
6791         (stabs_method_name_from_physname, read_member_functions)
6792         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6793         (attach_fields_to_type, complain_about_struct_wipeout)
6794         (read_range_type, read_args, common_block_start)
6795         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6796         Update.
6797         * mdebugread.c (index_complaint, unknown_ext_complaint)
6798         (basic_type_complaint, bad_tag_guess_complaint)
6799         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6800         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6801         (parse_procedure, parse_lines)
6802         (function_outside_compilation_unit_complaint)
6803         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6804         (bad_tag_guess_complaint, reg_value_complaint): Update.
6805         * cp-support.c (demangled_name_complaint): Update.
6806         * macroscope.c (sal_macro_scope): Update.
6807         * dwarf-index-write.c (class debug_names): Update.
6808
6809 2018-05-23  Tom Tromey  <tom@tromey.com>
6810
6811         * complaints.c (clear_complaints): Remove "noisy" parameter.
6812         * complaints.h (clear_complaints): Update.
6813         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6814         (reread_symbols): Update.
6815
6816 2018-05-23  Tom Tromey  <tom@tromey.com>
6817
6818         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6819         SUBSEQUENT_MESSAGE.
6820         (vcomplaint, clear_complaints): Update.
6821         (symfile_explanations): Remove some messages.
6822
6823 2018-05-23  Tom Tromey  <tom@tromey.com>
6824
6825         * complaints.c (internal_complaint): Remove.
6826         * complaints.h (internal_complaint): Remove.
6827
6828 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6829
6830         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6831
6832 2018-05-22  Pedro Alves  <palves@redhat.com>
6833
6834         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6835         (remote_fileio_badfd, remote_fileio_return_errno)
6836         (remote_fileio_return_success, remote_fileio_func_open)
6837         (remote_fileio_func_open, remote_fileio_func_close)
6838         (remote_fileio_func_read, remote_fileio_func_write)
6839         (remote_fileio_func_lseek, remote_fileio_func_rename)
6840         (remote_fileio_func_unlink, remote_fileio_func_stat)
6841         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6842         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6843         remote_target parameter.
6844         (remote_fio_func_map) <func>: Add remote_target parameter.
6845         (do_remote_fileio_request, remote_fileio_request):
6846         * remote-fileio.h (remote_fileio_request):
6847         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6848         remote_target parameter.
6849         (remote_notif_process, handle_notification): Adjust to pass down
6850         the remote.
6851         (remote_notif_state_allocate): Add remote_target parameter.  Save
6852         it.
6853         * remote-notif.h (struct remote_target): Forward declare.
6854         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6855         remote_target parameter.
6856         (struct remote_notif_state) <remote>: New field.
6857         (remote_notif_ack, remote_notif_parse): Add remote_target
6858         parameter.
6859         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6860         remote_target parameter.
6861         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6862         (threads_listing_context, rmt_thread_action, protocol_feature)
6863         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6864         (packet_result, struct threads_listing_context, remote_state):
6865         Move definitions and declarations higher up.
6866         (remote_target) <~remote_target>: Declare.
6867         (remote_download_command_source, remote_file_put, remote_file_get)
6868         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6869         (remote_hostio_pread_vFile, remote_hostio_send_command)
6870         (remote_hostio_set_filesystem, remote_hostio_open)
6871         (remote_hostio_close, remote_hostio_unlink, remote_state)
6872         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6873         (get_memory_write_packet_size, get_memory_read_packet_size)
6874         (append_pending_thread_resumptions, remote_detach_1)
6875         (append_resumption, remote_resume_with_vcont)
6876         (add_current_inferior_and_thread, wait_ns, wait_as)
6877         (process_stop_reply, remote_notice_new_inferior)
6878         (process_initial_stop_replies, remote_add_thread)
6879         (btrace_sync_conf, remote_btrace_maybe_reopen)
6880         (remove_new_fork_children, kill_new_fork_children)
6881         (discard_pending_stop_replies, stop_reply_queue_length)
6882         (check_pending_events_prevent_wildcard_vcont)
6883         (discard_pending_stop_replies_in_queue, stop_reply)
6884         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6885         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6886         (remote_interrupt_as, remote_interrupt_ns)
6887         (remote_get_noisy_reply, remote_query_attached)
6888         (remote_add_inferior, remote_current_thread, get_current_thread)
6889         (set_thread, set_general_thread, set_continue_thread)
6890         (set_general_process, write_ptid)
6891         (remote_unpack_thread_info_response, remote_get_threadinfo)
6892         (parse_threadlist_response, remote_get_threadlist)
6893         (remote_threadlist_iterator, remote_get_threads_with_ql)
6894         (remote_get_threads_with_qxfer)
6895         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6896         (get_offsets, remote_check_symbols, remote_supported_packet)
6897         (remote_query_supported, remote_packet_size)
6898         (remote_serial_quit_handler, remote_detach_pid)
6899         (remote_vcont_probe, remote_resume_with_hc)
6900         (send_interrupt_sequence, interrupt_query)
6901         (remote_notif_get_pending_events, fetch_register_using_p)
6902         (send_g_packet, process_g_packet, fetch_registers_using_g)
6903         (store_register_using_P, store_registers_using_G)
6904         (set_remote_traceframe, check_binary_download)
6905         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6906         (remote_xfer_live_readonly_partial, remote_read_bytes)
6907         (remote_send_printf, remote_flash_write, readchar)
6908         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6909         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6910         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6911         (extended_remote_disable_randomization, extended_remote_run)
6912         (send_environment_packet, extended_remote_environment_support)
6913         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6914         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6915         (packet_command): Now methods of ...
6916         (remote_target): ... this class.
6917         (m_remote_state) <remote_target>: New field.
6918         (struct remote_state) <stop_reply_queue,
6919         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6920         fields.
6921         (remote_state::remote_state): Allocate stop_reply_queue.
6922         (remote_state): Delete global.
6923         (get_remote_state_raw): Delete.
6924         (remote_target::get_remote_state): Allocate m_remote_state on
6925         demand.
6926         (get_current_remote_target): New.
6927         (remote_ops, extended_remote_ops): Delete.
6928         (wait_forever_enabled_p, remote_async_inferior_event_token):
6929         Delete, moved to struct remote_state.
6930         (remote_target::close): Delete self.  Destruction bits split to
6931         ...
6932         (remote_target::~remote_target): ... this.
6933         (show_memory_packet_size): Adjust to use
6934         get_current_remote_target.
6935         (struct protocol_feature) <func>: Add remote_target parameter.
6936         All callers adjusted.
6937         (curr_quit_handler_target): New.
6938         (remote_serial_quit_handler): Reimplement.
6939         (remote_target::open_1): Adjust to use get_current_remote_target.
6940         Heap-allocate remote_target/extended_remote_target instances.
6941         (vcont_builder::vcont_builder): Add remote_target parameter, and
6942         save it in m_remote.  All callers adjusted.
6943         (vcont_builder::m_remote): New field.
6944         (vcont_builder::restart, vcont_builder::flush)
6945         (vcont_builder::push_action): Use it.
6946         (remote_target::commit_resume): Use it.
6947         (struct queue_iter_param) <remote>: New field.
6948         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6949         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6950         (check_pending_event_prevents_wildcard_vcont_callback)
6951         (remote_target::check_pending_events_prevent_wildcard_vcont)
6952         (remote_target::discard_pending_stop_replies)
6953         (remote_target::discard_pending_stop_replies_in_queue)
6954         (remote_target::remote_notif_remove_queued_reply): Fill in
6955         'remote' field.
6956         (remote_notif_get_pending_events): New.
6957         (remote_target::readchar, remote_target::remote_serial_write):
6958         Save/restore curr_quit_handler_target.
6959         (putpkt): New.
6960         (kill_new_fork_children): Fill in 'remote' field.
6961         (packet_command): Use get_current_remote_target, defer to
6962         remote_target method of same name.
6963         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6964         parameter, and save it in m_remote.  All callers adjusted.
6965         (scoped_remote_fd::release): Use m_remote.
6966         (scoped_remote_fd::m_remote): New field.
6967         (remote_file_put, remote_file_get, remote_file_delete): Use
6968         get_current_remote_target, defer to remote_target method of same
6969         name.
6970         (remote_btrace_reset): Add remote_state paremeter.  Update all
6971         callers.
6972         (remote_async_inferior_event_handler). Pass down 'data'.
6973         (remote_new_objfile): Use get_current_remote_target.
6974         (remote_target::vcont_r_supported): New.
6975         (set_range_stepping): Use get_current_remote_target and
6976         remote_target::vcont_r_supported.
6977         (_initialize_remote): Don't allocate 'remote_state' and
6978         'stop_reply_queue' globals.
6979         * remote.h (struct remote_target): Forward declare.
6980         (getpkt, putpkt, remote_notif_get_pending_events): Add
6981         'remote_target' parameter.
6982
6983 2018-05-22  Pedro Alves  <palves@redhat.com>
6984
6985         * remote.c (vcont_builder): Now a class.  Make all data members
6986         private.
6987         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6988         Declare methods.
6989         (vcont_builder_restart): Rename to ...
6990         (vcont_builder::restart): ... this.
6991         (vcont_builder_flush): Rename to ...
6992         (vcont_builder::flush): ... this.
6993         (vcont_builder_push_action): Rename to ...
6994         (vcont_builder::push_action): ... this.
6995         (remote_target::commit_resume): Adjust.
6996
6997 2018-05-22  Pedro Alves  <palves@redhat.com>
6998
6999         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
7000         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
7001         (get_fixed_memory_packet_size): New.
7002         (get_memory_packet_size): Use it.
7003         (set_memory_packet_size): Don't override the config size with
7004         DEFAULT_MAX_MEMORY_PACKET_SIZE.
7005         (show_memory_packet_size): Use get_fixed_memory_packet_size.
7006         Don't refer to get_memory_packet_size if not connected to a remote
7007         target.  Show "(default)" if configured size is 0.
7008
7009 2018-05-22  Pedro Alves  <palves@redhat.com>
7010
7011         * remote.c (remote_target::mourn_inferior): Move
7012         discard_pending_stop_replies call here from ...
7013         (_initialize_remote): ... here.
7014
7015 2018-05-22  Pedro Alves  <palves@redhat.com>
7016
7017         * remote.c (compare_section_command): Remove set_general_process
7018         call.
7019
7020 2018-05-22  Pedro Alves  <palves@redhat.com>
7021
7022         * remote.c (struct packet_reg, struct remote_arch_state):
7023         Move higher up in the file.
7024         (remote_state) <m_arch_states>: Store remote_arch_state values
7025         instead of remote_arch_state pointers.
7026         (remote_state::get_remote_arch_state): Adjust.
7027
7028 2018-05-22  Pedro Alves  <palves@redhat.com>
7029
7030         * remote.c: Include <unordered_map>.
7031         (remote_state): Now a class.
7032         (remote_state) <get_remote_arch_state>: Declare method.
7033         <get_remote_arch_state>: New field.
7034         (remote_arch_state) <remote_arch_state>: Declare ctor.
7035         <regs>: Now a unique_ptr.
7036         (remote_gdbarch_data_handle): Delete.
7037         (get_remote_arch_state): Delete.
7038         (remote_state::get_remote_arch_state): New.
7039         (get_remote_state): Adjust to call remote_state's
7040         get_remote_arch_state method.
7041         (init_remote_state): Delete, bits factored out to ...
7042         (remote_arch_state::remote_arch_state): ... this new method.
7043         (get_remote_packet_size, get_memory_packet_size)
7044         (process_g_packet, remote_target::fetch_registers)
7045         (remote_target::prepare_to_store, store_registers_using_G)
7046         (remote_target::store_registers, remote_target::get_trace_status):
7047         Adjust to call remote_state's method.
7048         (_initialize_remote): Remove reference to
7049         remote_gdbarch_data_handle.
7050
7051 2018-05-22  Pedro Alves  <palves@redhat.com>
7052
7053         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7054         pread>: New method declarations.
7055         (remote_target::open_1): Adjust.
7056         (readahead_cache_invalidate): Rename to ...
7057         (readahead_cache::invalidate): ... this, and adjust to be a class
7058         method.
7059         (readahead_cache_invalidate_fd): Rename to ...
7060         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7061         class method.
7062         (remote_hostio_pwrite): Adjust.
7063         (remote_hostio_pread_from_cache): Rename to ...
7064         (readahead_cache::pread): ... this, and adjust to be a class
7065         method.
7066         (remote_hostio_close): Adjust.
7067
7068 2018-05-22  Pedro Alves  <palves@redhat.com>
7069
7070         * remote.c (remote_hostio_close_cleanup): Delete.
7071         (class scoped_remote_fd): New.
7072         (remote_file_put, remote_file_get): Use it.
7073
7074 2018-05-22  Pedro Alves  <palves@redhat.com>
7075
7076         (struct vCont_action_support): Use bool and initialize all fields.
7077         (struct readahead_cache): Initialize all fields.
7078         (remote_state): Use bool and initialize all fields.
7079         (remote_state::remote_state, remote_state::~remote_state): New.
7080         (new_remote_state): Delete.
7081         (_initialize_remote): Use new to allocate remote_state.
7082
7083 2018-05-22  Pedro Alves  <palves@redhat.com>
7084             張俊芝  <zjz@zjz.name>
7085
7086         PR gdb/22973
7087         * c-exp.y: Include "c-support.h".
7088         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7089         of tolower.  Use c_ident_is_alpha to scan names.
7090         * c-lang.c: Include "c-support.h".
7091         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7092         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7093         * c-support.h: New file, with bits factored out from ...
7094         * cp-name-parser.y: ... this file.
7095         Include "c-support.h".
7096         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7097         c-support.h and renamed.
7098         (symbol_end, yylex): Adjust.
7099
7100 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7101
7102         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7103         parameter type to CORE_ADDR.
7104         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7105         parameter type in declaration to CORE_ADDR.
7106         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7107         target_auxv_search to get AT_HWCAP and use the result to get the
7108         target description.
7109         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7110         to CORE_ADDR. Remove the cast of the return value to unsigned
7111         long. Fix error predicate of target_auxv_search.
7112         (ppc_linux_nat_target::read_description): Change the type of the
7113         hwcap variable to CORE_ADDR.
7114
7115 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7116
7117         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7118         if the size of fpscr is larger than 32 bits.
7119
7120 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7121
7122         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7123         (ppc32_linux_vsxregmap): New global.
7124         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7125         regcache_supply_regset, and regcache_collect_regset.
7126         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7127         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7128         (fetch_vsx_register, store_vsx_register): Remove.
7129         (fetch_vsx_registers): Add regno parameter. Get regset using
7130         ppc_linux_vsxregset. Use regset to supply registers.
7131         (store_vsx_registers): Add regno parameter. Get regset using
7132         ppc_linux_vsxregset. Use regset to collect registers.
7133         (fetch_register): Call fetch_vsx_registers instead of
7134         fetch_vsx_register.
7135         (store_register): Call store_vsx_registers instead of
7136         store_vsx_register.
7137         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7138         new regno parameter.
7139         (store_ppc_registers): Call store_vsx_registers with -1 for the
7140         new regno parameter.
7141         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7142         (ppc_collect_vsxregset): Remove.
7143
7144 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7145
7146         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7147         offset fields.
7148         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7149         for vector register offset fields.
7150         (ppc64_fbsd_reg_offsets): Likewise.
7151         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7152         to vector register offset fields.
7153         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7154         to vector register offset fields.
7155         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7156         vector register offset fields.
7157         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7158         initializers for vector register offset fields.
7159         (rs6000_aix64_reg_offsets): Likewise.
7160         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7161         (ppc_supply_vrregset): Remove.
7162         (ppc_collect_vrregset): Remove.
7163         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7164         (ppc_linux_vrregset) : New function.
7165         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7166         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7167         (ppc32_linux_vrregset): Remove.
7168         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7169         and use result instead of ppc32_linux_vrregset.
7170         (ppc32_linux_reg_offsets): Remove initializers for vector register
7171         offset fields.
7172         (ppc64_linux_reg_offsets): Likewise.
7173         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7174         * ppc-linux-nat.c: Include regset.h.
7175         (gdb_vrregset_t): Adjust comment to account for little-endian
7176         mode.
7177         (supply_vrregset, fill_vrregset): Remove.
7178         (fetch_altivec_register, store_altivec_register): Remove.
7179         (fetch_altivec_registers): Add regno parameter. Get regset using
7180         ppc_linux_vrregset. Use regset to supply registers.
7181         (store_altivec_registers): Add regno parameter. Get regset using
7182         ppc_linux_vrregset. Use regset to collect registers.
7183         (fetch_register): Call fetch_altivec_registers instead of
7184         fetch_altivec_register.
7185         (store_register): Call store_altivec_registers instead of
7186         store_altivec_register.
7187         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7188         the new regno parameter.
7189         (store_ppc_registers): Call store_altivec_registers with -1 for
7190         the new regno parameter.
7191
7192 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7193
7194         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7195         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7196         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7197         (gdb_vrregset_t): Change array type size to
7198         PPC_LINUX_SIZEOF_VRREGSET.
7199         (gdb_vsxregset_t): Change array type size to
7200         PPC_LINUX_SIZEOF_VSXREGSET.
7201         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7202         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7203         PPC_LINUX_SIZEOF_VSXREGSET.
7204
7205 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7206
7207         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7208         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7209         nat/ppc-linux.c.
7210         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7211         ppc_linux_target_wordsize with tid.
7212         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7213         wordsize with tid.
7214         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7215         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7216         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7217         tid parameter. Remove static specifier.
7218         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7219         (ppc_linux_target_wordsize): New declaration.
7220
7221 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7222
7223         * arch/ppc-linux-common.c: New file.
7224         * arch/ppc-linux-common.h: New file.
7225         * arch/ppc-linux-tdesc.h: New file.
7226         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7227         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7228         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7229         arch/ppc-linux-tdesc.h.
7230         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7231         arch/ppc-linux-tdesc.h.
7232         (ppc_linux_nat_target::read_description): Remove target
7233         description matching code. Fill a ppc_linux_features struct and
7234         call ppc_linux_match_description with it. Move comment about ISA
7235         2.05 to ppc-linux-common.c.
7236         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7237         arch/ppc-linux-tdesc.h.
7238         (ppc_linux_core_read_description): Remove target description
7239         matching code. Fill a ppc_linux_features struct and call
7240         ppc_linux_match_description with it.
7241         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7242         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7243         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7244         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7245         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7246         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7247         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7248         (tdesc_powerpc_e500l): Remove.
7249
7250 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7251
7252         * ada-lang.c (catch_assert_command): Pass empty string instead
7253         of NULL for excep_string argument.
7254
7255 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7256
7257         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7258         the width of the requested register exceeds the width of the
7259         `ptrace' data type.
7260
7261 2018-05-21  Tom Tromey  <tom@tromey.com>
7262
7263         * printcmd.c (output_command): Remove.
7264         (output_command_const): Rename to output_command.
7265         * valprint.h (output_command): Rename from output_command_const.
7266         * tracepoint.c (trace_dump_actions): Call output_command.
7267
7268 2018-05-21  Tom Tromey  <tom@tromey.com>
7269
7270         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7271         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7272         * ada-lang.h (create_ada_exception_catchpoint): Update.
7273         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7274         std::string.
7275         (create_excep_cond_exprs, ~ada_catchpoint)
7276         (should_stop_exception, print_one_exception)
7277         (print_mention_exception, print_recreate_exception): Update.
7278         (ada_get_next_arg): Remove.
7279         (catch_ada_exception_command_split): Use std::string.  Change type
7280         of "excep_string", "cond_string".
7281         (catch_ada_exception_command): Update.
7282         (create_ada_exception_catchpoint): Change type of excep_string.
7283         (ada_exception_sal): Remove excep_string parameter.
7284         (~ada_catchpoint): Remove.
7285
7286 2018-05-21  Tom Tromey  <tom@tromey.com>
7287
7288         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7289         cleanup.
7290
7291 2018-05-21  Tom Tromey  <tom@tromey.com>
7292
7293         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7294         Return unique_xmalloc_ptr.
7295         (print_it_exception): Update.
7296
7297 2018-05-21  Tom Tromey  <tom@tromey.com>
7298
7299         * tracepoint.c (trace_dump_actions): Use std::string.
7300
7301 2018-05-21  Tom Tromey  <tom@tromey.com>
7302
7303         * symfile.c (reread_symbols): Use std::string for original_name.
7304
7305 2018-05-21  Tom Tromey  <tom@tromey.com>
7306
7307         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7308         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7309         constructor.
7310
7311 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7312
7313         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7314         instance to...
7315         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7316         * objfiles.c (get_objfile_bfd_data): Allocate
7317         objfile_per_bfd_storage with obstack_new when allocating on
7318         obstack.
7319
7320 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7321
7322         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7323         OBSTACK_ZALLOC.
7324         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7325         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7326         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7327         (add_pending): Likewise.
7328         (parse_symbol): Likewise.
7329         (parse_partial_symbols): Likewise.
7330         (psymtab_to_symtab_1): Likewise.
7331         (new_psymtab): Likewise.
7332         (elfmdebug_build_psymtabs): Likewise.
7333         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7334         * objfiles.c (get_objfile_bfd_data): Likewise.
7335         (objfile_register_static_link): Likewise.
7336         * psymtab.c (allocate_psymtab): Likewise.
7337         * stabsread.c (read_member_functions): Likewise.
7338         * xcoffread.c (xcoff_end_psymtab): Likewise.
7339
7340 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7341
7342         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7343         compiler supports std::is_trivially_constructible.
7344         * common/poison.h: Include obstack.h.
7345         (IsMallocable): Define to is_trivially_constructible if the
7346         compiler supports it, define to true_type otherwise.
7347         (xobnew): New.
7348         (XOBNEW): Redefine.
7349         (xobnewvec): New.
7350         (XOBNEWVEC): Redefine.
7351         * gdb_obstack.h (obstack_zalloc): New.
7352         (OBSTACK_ZALLOC): Redefine.
7353         (obstack_calloc): New.
7354         (OBSTACK_CALLOC): Redefine.
7355         (obstack_new): New.
7356         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7357         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7358         gdbarch.c.
7359         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7360         obstack_calloc/obstack_zalloc.
7361         (gdbarch_obstack_zalloc): Remove.
7362         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7363
7364 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7365
7366         * stack.c (backtrace_command_1): Remove useless variable int i.
7367
7368 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7369
7370         * stack.c (print_frame_info): Fix comment.
7371
7372 2018-05-18  Tom Tromey  <tom@tromey.com>
7373
7374         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7375         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7376         (~dwarf2_per_objfile): Update
7377         (dwarf2_get_dwz_file): Use new.
7378         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7379         unique_ptr.
7380
7381 2018-05-18  Tom Tromey  <tom@tromey.com>
7382
7383         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7384         unique_ptr.
7385         * dwarf2read.c (struct dwp_file): Add constructor and
7386         initializers.
7387         (open_and_init_dwp_file): Return a unique_ptr.
7388         (dwarf2_per_objfile, create_dwp_hash_table)
7389         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7390         (lookup_dwo_unit_in_dwp): Update.
7391         (open_and_init_dwp_file, get_dwp_file): Update.
7392
7393 2018-05-18  Tom Tromey  <tom@tromey.com>
7394
7395         * dwarf2read.c (dwarf2_per_objfile): Update.
7396         (struct mapped_index): Add initializers.
7397         (dwarf2_read_index): Use new.
7398         (dw2_symtab_iter_init): Update.
7399         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7400         unique_ptr.
7401
7402 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7403
7404         * dwarf2read.c (mapped_index) <total_size>: Remove.
7405
7406 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7407
7408         * unittests/format_pieces-selftests.c (test_format_specifier):
7409         Add ARI comments.
7410
7411 2018-05-18  Tom Tromey  <tom@tromey.com>
7412
7413         * c-typeprint.c (maybe_print_hole): New function.
7414         (c_print_type_struct_field_offset): Update.
7415         (c_type_print_base_struct_union): Call maybe_print_hole.
7416
7417 2018-05-17  Keith Seitz  <keiths@redhat.com>
7418
7419         * breakpoint.c (build_bpstat_chain): New function, moved from
7420         bpstat_stop_status.
7421         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7422         If no stop chain is passed, call build_bpstat_chain to build it.
7423         * breakpoint.h (build_bpstat_chain): Declare.
7424         (bpstat_stop_status): Move documentation here from breakpoint.c.
7425         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7426         build the stop chain and pass it to skip_inline_frames.
7427         Pass this stop chain to bpstat_stop_status.
7428         * inline-frame.c: Include breakpoint.h.
7429         (stopped_by_user_bp_inline_frame): New function.
7430         (skip_inline_frames): Add parameter `stop_chain'.
7431         Move documention to inline-frame.h.
7432         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7433         whether the frame should be elided.
7434         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7435         Add moved documentation and update for new parameter.
7436
7437 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7438
7439         PR cli/14975
7440         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7441         unittests/format_pieces-selftests.c.
7442         * common/format.h (format_piece) <operator==>: New.
7443         (format_pieces) <operator[]>: Remove.
7444         * common/format.c (format_pieces::format_pieces): Handle \e.
7445         * unittests/format_pieces-selftests.c: New.
7446
7447 2018-05-17  Tom Tromey  <tom@tromey.com>
7448
7449         PR symtab/23010:
7450         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7451         (dw2_instantiate_symtab): Add skip_partial parameter.
7452         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7453         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7454         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7455         (dw2_expand_symtabs_matching_one)
7456         (dw2_find_pc_sect_compunit_symtab)
7457         (dw2_debug_names_lookup_symbol)
7458         (dw2_debug_names_expand_symtabs_for_function): Update.
7459         (init_cutu_and_read_dies): Add skip_partial parameter.
7460         (process_psymtab_comp_unit, build_type_psymtabs_1)
7461         (process_skeletonless_type_unit, load_partial_comp_unit)
7462         (psymtab_to_symtab_1): Update.
7463         (load_full_comp_unit): Add skip_partial parameter.
7464         (process_imported_unit_die, dwarf2_read_addr_index)
7465         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7466         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7467         (read_signatured_type): Update.
7468
7469 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7470
7471         * value.c (release_value): Remove unused variable.
7472         (record_latest_value): Likewise.
7473         (access_value_history): Likewise.
7474         (preserve_values): Likewise.
7475
7476 2018-05-17  Tom Tromey  <tom@tromey.com>
7477
7478         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7479         Initialize.
7480
7481 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7482
7483         PR gdb/22286
7484         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7485         Also handle registers whose width is not a multiple of
7486         PTRACE_TYPE_RET.
7487         (linux_nat_trad_target::store_register): Likewise.
7488
7489 2018-05-16  Tom Tromey  <tom@tromey.com>
7490
7491         * gdbcore.h (core_bfd): Redefine.
7492         * corelow.c (core_target::close): Update.
7493         (core_target_open): Update.
7494         * progspace.h (struct program_space) <cbfd>: Now a
7495         gdb_bfd_ref_ptr.
7496
7497 2018-05-16  Tom Tromey  <tom@tromey.com>
7498
7499         PR cli/19551:
7500         * symfile-add-flags.h (enum symfile_add_flags)
7501         <SYMFILE_NOT_FILENAME>: New constant.
7502         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7503         objfile name from BFD.
7504         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7505         * minidebug.c (find_separate_debug_file_in_section): Put
7506         ".gnu_debugdata" into BFD's file name.
7507
7508 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7509
7510         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7511         Remove.
7512
7513 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7514
7515         PR binutils/21446
7516         * aarch64-tdep.c (aarch64_analyze_prologue,
7517         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7518         Indicate not interested in errors.
7519
7520 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7521
7522         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7523         Supply the MIPS_ZERO_REGNUM register.
7524
7525 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7526
7527         * mips-tdep.c (mask_address_var): Make variable static.
7528
7529 2018-05-14  Tom Tromey  <tom@tromey.com>
7530
7531         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7532
7533 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7534
7535         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7536         FXSAVE_ADDR for the mxcsr register.
7537
7538 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7539
7540         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7541
7542 2018-05-11  Pedro Alves  <palves@redhat.com>
7543
7544         * corelow.c (core_target) <core_target>: No longer inline.
7545         Initialize m_core_gdbarch, m_core_vec and build the section table
7546         here.
7547         <~core_target>: New.
7548         <core_gdbarch, get_core_register_section>: New methods.
7549         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7550         factored out from ...
7551         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7552         (core_ops): Delete.
7553         (sniff_core_bfd): Add gdbarch parameter.
7554         (core_close): Delete, merged into ...
7555         (core_target::close): ... here.  Delete self.
7556         (core_close_cleanup): Delete.
7557         (core_target_open): Allocate a core_target on the heap.  Use a
7558         unique_ptr instead of a cleanup.  Bits moved into the core_target
7559         ctor.  Adjust to use core_target methods instead of globals.
7560         (get_core_register_section): Rename to ...
7561         (core_target::get_core_register_section): ... this and adjust.
7562         (struct get_core_registers_cb_data): New.
7563         (get_core_registers_cb): Use it.  Use bool.
7564         (core_target::fetch_registers, core_target::files_info)
7565         (core_target::xfer_partial, core_target::read_description)
7566         (core_target::pid_to, core_target::thread_name): Adjust to
7567         reference class fields instead of globals.
7568         * target.h (struct target_ops_deleter, target_ops_up): New.
7569
7570 2018-05-11  Pedro Alves  <palves@redhat.com>
7571
7572         * corefile.c (core_file_command): Move to corelow.c.
7573         * corelow.c (the_core_target): Delete.
7574         (core_file_command): Moved from corefile.c.  Check exec_bfd
7575         instead of the_core_target.  Use target_detach instead of calling
7576         into the_core_target directly.
7577         (maybe_say_no_core_file_now): New.
7578         (core_target::detach): Use it.
7579         (_initialize_corelow): Remove references to the_core_target.
7580         * gdbcore.h (the_core_target): Delete.
7581
7582 2018-05-11  Tom Tromey  <tromey@redhat.com>
7583             Pedro Alves  <palves@redhat.com>
7584
7585         * corefile.c (core_bfd): Remove.
7586         * gdbcore.h (core_bfd): Now a macro.
7587         * progspace.h (struct program_space) <cbfd>: New field.
7588
7589 2018-05-11  Tom Tromey  <tom@tromey.com>
7590
7591         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7592         gdb::def_vector.
7593
7594 2018-05-10  Tom Tromey  <tom@tromey.com>
7595
7596         * configure: Rebuild.
7597         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7598
7599 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7600
7601         PR server/23158:
7602         * regformats/regdat.sh: Adjust script, following the addition
7603         of the new expedite_regs parameter to init_target_desc.
7604
7605 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7606     
7607         PR gdb/23127
7608         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7609         set_gdbarch_significant_addr_bit.
7610         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7611         set_gdbarch_significant_addr_bit.
7612         * utils.c (address_significant): Update to sign extend addr.
7613
7614 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7615
7616         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7617         (xtensa_linux_init_abi): Limit tdep->num_regs by
7618         tdep->num_nopriv_regs.
7619         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7620         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7621         not initialized.
7622
7623 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7624
7625         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7626
7627 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7628
7629         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7630         (I387_MXCSR_INIT_VAL): New constant.
7631         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7632         buffer if it was supplied by the inferior.
7633         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7634         (i387_xsave_get_clear_bv): New function.
7635         (i387_supply_xsave): Only read x87 control registers from the
7636         xsave buffer if the feature is enabled, and the state will have
7637         been written, otherwise, provide a suitable default.
7638         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7639         including x87 control registers.  Update control registers if they
7640         have changed from the default value, and mark features as enabled
7641         as required.
7642         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7643
7644 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7645
7646         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7647
7648 2018-05-07  Tom Tromey  <tom@tromey.com>
7649
7650         * configure: Rebuild.
7651         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7652
7653 2018-05-07  Tom Tromey  <tom@tromey.com>
7654
7655         PR tdep/20362:
7656         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7657         bit.  Use correct value for VDIV.
7658
7659 2018-05-04  Tom Tromey  <tom@tromey.com>
7660
7661         * configure: Rebuild.
7662         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7663
7664 2018-05-04  Tom Tromey  <tom@tromey.com>
7665
7666         * linux-record.c (record_linux_system_call) <case
7667         RECORD_SYS_RECVFROM>: Add "break".
7668
7669 2018-05-04  Tom Tromey  <tom@tromey.com>
7670
7671         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7672         Add missing "break".
7673         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7674         Add missing "break".
7675
7676 2018-05-04  Tom Tromey  <tom@tromey.com>
7677
7678         * rs6000-tdep.c (ppc_process_record_op4)
7679         (ppc_process_record_op63): Add fall-through comment.
7680
7681 2018-05-04  Tom Tromey  <tom@tromey.com>
7682
7683         * i386-tdep.c (i386_process_record): Add fall-through comment.
7684
7685 2018-05-04  Tom Tromey  <tom@tromey.com>
7686
7687         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7688         comment.
7689
7690 2018-05-04  Tom Tromey  <tom@tromey.com>
7691
7692         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7693         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7694         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7695         comment.
7696         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7697         comment.
7698         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7699         comment.
7700
7701 2018-05-04  Tom Tromey  <tom@tromey.com>
7702
7703         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7704
7705 2018-05-04  Tom Tromey  <tom@tromey.com>
7706
7707         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7708         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7709         * symfile.c (section_is_mapped): Fix fall-through comment.
7710         * stabsread.c (define_symbol, read_member_functions): Fix
7711         fall-through comment.
7712         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7713         comment.
7714         * remote.c (remote_wait_as): Fix fall-through comment.
7715         * p-exp.y (yylex): Fix fall-through comment.
7716         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7717         comment.
7718         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7719         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7720         * jv-exp.y (yylex): Fix fall-through comment.
7721         * go-exp.y (lex_one_token): Fix fall-through comment.
7722         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7723         fall-through comment.
7724         * f-exp.y (yylex): Fix fall-through comment.
7725         * dwarf2read.c (process_die): Fix fall-through comments.
7726         * dbxread.c (process_one_symbol): Fix fall-through comment.
7727         * d-exp.y (lex_one_token): Fix fall-through comment.
7728         * cp-name-parser.y (yylex): Fix fall-through comment.
7729         * coffread.c (coff_symtab_read): Fix fall-through comment.
7730         * c-exp.y (lex_one_token): Fix fall-through comment.
7731         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7732         comment.
7733         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7734         comment.
7735
7736 2018-05-04  Tom Tromey  <tom@tromey.com>
7737
7738         PR python/22730:
7739         * NEWS: Mention gdb.execute change.
7740         * gdbcmd.h (execute_control_command): Don't declare.
7741         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7742         execute_control_commands, execute_control_commands_to_string.
7743         * cli/cli-script.h (execute_control_commands)
7744         (execute_control_commands_to_string): Declare.
7745         (execute_control_command): Add from_tty parameter.
7746         * cli/cli-script.c (execute_control_commands)
7747         (execute_control_commands_to_string): New functions.
7748         (execute_user_command): Use execute_control_commands.
7749         (execute_control_command_1): Add "from_tty" parameter.  Update.
7750         (execute_control_command): Likewise.
7751
7752 2018-05-04  Tom Tromey  <tom@tromey.com>
7753
7754         PR python/22731:
7755         * NEWS: Mention that breakpoint commands are writable.
7756         * python/py-breakpoint.c (bppy_set_commands): New function.
7757         (breakpoint_object_getset) <"commands">: Use it.
7758
7759 2018-05-04  Tom Tromey  <tom@tromey.com>
7760
7761         * tracepoint.c (actions_command): Update.
7762         * mi/mi-cmd-break.c (mi_command_line_array)
7763         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7764         (mi_read_next_line): Remove.
7765         (mi_cmd_break_commands): Update.
7766         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7767         function_view.
7768         * cli/cli-script.c (get_command_line): Update.
7769         (process_next_line): Use function_view.  Constify.
7770         (recurse_read_control_structure, read_command_lines)
7771         (read_command_lines_1): Change argument types to function_view.
7772         (do_define_command, document_command): Update.
7773         * breakpoint.h (check_tracepoint_command): Don't declare.
7774         * breakpoint.c (check_tracepoint_command): Remove.
7775         (commands_command_1, create_tracepoint_from_upload): Update.
7776
7777 2018-05-04  Tom Tromey  <tom@tromey.com>
7778
7779         PR gdb/11750:
7780         * cli/cli-script.h (enum command_control_type) <define_control>:
7781         New constant.
7782         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7783         (build_command_line, execute_control_command_1)
7784         (process_next_line): Likewise.
7785         (do_define_command): New function, extracted from define_command.
7786         (define_command): Use it.
7787
7788 2018-05-04  Tom Tromey  <tom@tromey.com>
7789
7790         * tracepoint.c (actions_command): Update.
7791         * cli/cli-script.h (read_command_lines): Update.
7792         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7793         (MAX_TMPBUF): Remove define.
7794         (define_command): Use string_printf.
7795         (document_command): Likewise.
7796         * breakpoint.c (commands_command_1): Update.
7797
7798 2018-05-04  Tom Tromey  <tom@tromey.com>
7799
7800         * top.c (execute_command): Update.
7801         * cli/cli-script.h (print_command_lines): Now varargs.
7802         * cli/cli-script.c (print_command_lines): Now varargs.
7803         (execute_control_command_1) <case while_control, case if_control>:
7804         Update.
7805
7806 2018-05-04  Tom Tromey  <tom@tromey.com>
7807
7808         * tracepoint.c (all_tracepoint_actions): Rename from
7809         all_tracepoint_actions_and_cleanup.  Change return type.
7810         (actions_command, encode_actions_1, encode_actions)
7811         (trace_dump_actions, tdump_command): Update.
7812         * remote.c (remote_download_command_source): Update.
7813         * python/python.c (gdbpy_eval_from_control_command)
7814         (python_command, python_interactive_command): Update.
7815         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7816         * guile/guile.c (guile_command)
7817         (gdbscm_eval_from_control_command, guile_command): Update.
7818         * compile/compile.c (compile_code_command)
7819         (compile_print_command, compile_to_object): Update.
7820         * cli/cli-script.h (struct command_lines_deleter): New.
7821         (counted_command_line): New typedef.
7822         (struct command_line): Add constructor, destructor.
7823         <body_list>: Remove.
7824         <body_list_0, body_list_1>: New members.
7825         (command_line_up): Remove typedef.
7826         (read_command_lines, read_command_lines_1, get_command_line):
7827         Update.
7828         (copy_command_lines): Don't declare.
7829         * cli/cli-script.c (build_command_line): Use "new".
7830         (get_command_line): Return counted_command_line.
7831         (print_command_lines, execute_user_command)
7832         (execute_control_command_1, while_command, if_command): Update.
7833         (realloc_body_list): Remove.
7834         (process_next_line, recurse_read_control_structure): Update.
7835         (read_command_lines, read_command_lines_1): Return counted_command_line.
7836         (free_command_lines): Use "delete".
7837         (copy_command_lines): Remove.
7838         (define_command, document_command, show_user_1): Update.
7839         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7840         a counted_command_line.
7841         * breakpoint.h (counted_command_line): Remove typedef.
7842         (breakpoint_set_commands): Update.
7843         * breakpoint.c (check_no_tracepoint_commands)
7844         (validate_commands_for_breakpoint): Update.
7845         (breakpoint_set_commands): Change commands to be a
7846         counted_command_line.
7847         (commands_command_1, update_dprintf_command_list)
7848         (create_tracepoint_from_upload): Update.
7849
7850 2018-05-04  Tom Tromey  <tom@tromey.com>
7851
7852         * cli/cli-decode.h (cmd_list_element): New constructor.
7853         (~cmd_list_element): New destructor.
7854         (struct cmd_list_element): Add initializers.
7855         * cli/cli-decode.c (do_add_cmd): Use "new".
7856         (delete_cmd): Use "delete".
7857
7858 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7859             Pedro Alves <palves@redhat.com>
7860
7861         PR breakpoints/19806 and support for PR external/20207.
7862         * NEWS: Mention Aarch64 watchpoint improvements.
7863         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7864         watchpoints and PR external/20207 watchpoints.
7865         * nat/aarch64-linux-hw-point.c
7866         (kernel_supports_any_contiguous_range): New.
7867         (aarch64_watchpoint_offset): New.
7868         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7869         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7870         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7871         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7872         next_addr_orig_p.  Support PR external/20207 watchpoints.
7873         (aarch64_downgrade_regs): New.
7874         (aarch64_dr_state_insert_one_point): New parameters offset and
7875         addr_orig.
7876         (aarch64_dr_state_remove_one_point): Likewise.
7877         (aarch64_handle_breakpoint): Update caller.
7878         (aarch64_handle_aligned_watchpoint): Likewise.
7879         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7880         aligned_offset.
7881         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7882         aarch64_downgrade_regs.
7883         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7884         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7885         (DR_CONTROL_MASK): ... this.
7886         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7887         (unsigned int aarch64_watchpoint_offset): New prototype.
7888         (aarch64_linux_set_debug_regs): Remove const from state.
7889         * utils.c (align_up, align_down): Move to ...
7890         * common/common-utils.c (align_up, align_down): ... here.
7891         * utils.h (align_up, align_down): Move to ...
7892         * common/common-utils.h (align_up, align_down): ... here.
7893
7894 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7895
7896         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7897         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7898         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7899         Re-implement to match the ABI as summarized in GCC's
7900         gcc/config/sparc/sparc.c.  All callers updated.
7901         (sparc32_store_arguments): Remove assertion.
7902
7903 2018-05-04  Tom Tromey  <tom@tromey.com>
7904
7905         * printcmd.c: Don't include tui.h.
7906         (decode_format): Use skip_spaces.
7907
7908 2018-05-04  Tom Tromey  <tom@tromey.com>
7909
7910         PR gdb/22619:
7911         * printcmd.c (last_count): New global.
7912         (x_command): Use saved count when repeating.
7913
7914 2018-05-04  Tom Tromey  <tom@tromey.com>
7915
7916         * nto-procfs.c (do_closedir_cleanup): Remove.
7917         (procfs_pidlist): Use gdb_dir_up.
7918         * procfs.c (do_closedir_cleanup): Remove.
7919         (proc_update_threads): Use gdb_dir_up.
7920         * common/filestuff.h (struct gdb_dir_deleter): New.
7921         (gdb_dir_up): New typedef.
7922
7923 2018-05-04  Tom Tromey  <tom@tromey.com>
7924
7925         * ada-lang.c (print_mention_exception): Use std::string.
7926
7927 2018-05-04  Tom Tromey  <tom@tromey.com>
7928
7929         * ada-lang.c (create_excep_cond_exprs): Update.
7930         (ada_exception_catchpoint_cond_string): Use std::string.
7931
7932 2018-05-04  Tom Tromey  <tom@tromey.com>
7933
7934         * ada-lang.c (xget_renaming_scope): Return std::string.
7935         (old_renaming_is_invisible): Update.
7936
7937 2018-05-04  Tom Tromey  <tom@tromey.com>
7938
7939         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7940         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7941
7942 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7943
7944         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7945
7946 2018-05-04  Tom Tromey  <tom@tromey.com>
7947
7948         * remote.c (remote_query_supported_append): Change type.
7949         (remote_check_symbols): Update.
7950
7951 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7952
7953         PR gdb/11420
7954         * configure.ac: Prepend libpython.
7955         * python/python-config.py: Likewise.
7956         * configure: Regenerate.
7957
7958 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7959
7960         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7961
7962 2018-05-03  Pedro Alves  <palves@redhat.com>
7963
7964         * s390-linux-nat.c
7965         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7966         override.  Write 'true' instead of '1'.
7967         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7968         declaration.
7969
7970 2018-05-02  Pedro Alves  <palves@redhat.com>
7971
7972         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7973         add_inf_child_target.
7974         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7975         add_inf_child_target.
7976         * aix-thread.c (aix_thread_target_info): New.
7977         (aix_thread_target) <shortname, longname, doc>: Delete.
7978         <info>: New.
7979         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7980         add_inf_child_target.
7981         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7982         add_inf_child_target.
7983         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7984         add_inf_child_target.
7985         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7986         add_inf_child_target.
7987         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7988         add_inf_child_target.
7989         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7990         add_inf_child_target.
7991         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7992         add_inf_child_target.
7993         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7994         add_inf_child_target.
7995         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7996         add_inf_child_target.
7997         * bfd-target.c (target_bfd_target_info): New.
7998         (target_bfd) <shortname, longname, doc>: Delete.
7999         <info>: New.
8000         * bsd-kvm.c (bsd_kvm_target_info): New.
8001         (bsd_kvm_target) <shortname, longname, doc>: Delete.
8002         <info>: New.
8003         (bsd_kvm_target::open): Rename to ...
8004         (bsd_kvm_target_open): ... this.  Adjust.
8005         * bsd-uthread.c (bsd_uthread_target_info): New.
8006         (bsd_uthread_target) <shortname, longname, doc>: Delete.
8007         <info>: New.
8008         * corefile.c (core_file_command): Adjust.
8009         * corelow.c (core_target_info): New.
8010         (core_target) <shortname, longname, doc>: Delete.
8011         <info>: New.
8012         (core_target::open): Rename to ...
8013         (core_target_open): ... this.  Adjust.
8014         * ctf.c (ctf_target_info): New.
8015         (ctf_target) <shortname, longname, doc>: Delete.
8016         <info>: New.
8017         (ctf_target::open): Rename to ...
8018         (ctf_target_open): ... this.
8019         (_initialize_ctf): Adjust.
8020         * exec.c (exec_target_info): New.
8021         (exec_target) <shortname, longname, doc>: Delete.
8022         <info>: New.
8023         (exec_target::open): Rename to ...
8024         (exec_target_open): ... this.
8025         * gdbcore.h (core_target_open): Declare.
8026         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
8027         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
8028         add_inf_child_target.
8029         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
8030         add_inf_child_target.
8031         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
8032         add_inf_child_target.
8033         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
8034         add_inf_child_target.
8035         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
8036         add_inf_child_target.
8037         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
8038         add_inf_child_target.
8039         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
8040         add_inf_child_target.
8041         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8042         add_inf_child_target.
8043         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8044         add_inf_child_target.
8045         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8046         add_inf_child_target.
8047         * inf-child.c (inf_child_target_info): New.
8048         (inf_child_target::info): New.
8049         (inf_child_open_target): Remove 'target' parameter.  Use
8050         get_native_target instead.
8051         (inf_child_target::open): Delete.
8052         (add_inf_child_target): New.
8053         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8054         Delete.
8055         <info>: New.
8056         (add_inf_child_target): Declare.
8057         (inf_child_open_target): Declare.
8058         * linux-thread-db.c (thread_db_target_info): New.
8059         (thread_db_target) <shortname, longname, doc>: Delete.
8060         <info>: New.
8061         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8062         add_inf_child_target.
8063         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8064         add_inf_child_target.
8065         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8066         add_inf_child_target.
8067         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8068         add_inf_child_target.
8069         * make-target-delegates (print_class): Adjust.
8070         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8071         add_inf_child_target.
8072         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8073         add_inf_child_target.
8074         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8075         add_inf_child_target.
8076         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8077         add_inf_child_target.
8078         * nto-procfs.c (nto_native_target_info): New.
8079         (nto_procfs_target_native) <shortname, longname, doc>:
8080         Delete.
8081         <info>: New.
8082         (nto_procfs_target_info): New.
8083         (nto_procfs_target_procfs) <shortname, longname, doc>:
8084         Delete.
8085         <info>: New.
8086         (init_procfs_targets): Adjust.
8087         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8088         add_inf_child_target.
8089         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8090         add_inf_child_target.
8091         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8092         add_inf_child_target.
8093         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8094         add_inf_child_target.
8095         * ravenscar-thread.c (ravenscar_target_info): New.
8096         (ravenscar_thread_target) <shortname, longname, doc>:
8097         Delete.
8098         <info>: New.
8099         * record-btrace.c (record_btrace_target_info):
8100         (record_btrace_target) <shortname, longname, doc>: Delete.
8101         <info>: New.
8102         (record_btrace_target::open): Rename to ...
8103         (record_btrace_target_open): ... this.  Adjust.
8104         * record-full.c (record_longname, record_doc): New.
8105         (record_full_base_target) <shortname, longname, doc>: Delete.
8106         <info>: New.
8107         (record_full_target_info): New.
8108         (record_full_target): <shortname>: Delete.
8109         <info>: New.
8110         (record_full_core_open_1, record_full_open_1): Update comments.
8111         (record_full_base_target::open): Rename to ...
8112         (record_full_open): ... this.
8113         (cmd_record_full_restore): Update.
8114         (_initialize_record_full): Update.
8115         * remote-sim.c (remote_sim_target_info): New.
8116         (gdbsim_target) <shortname, longname, doc>: Delete.
8117         <info>: New.
8118         (gdbsim_target::open): Rename to ...
8119         (gdbsim_target_open): ... this.
8120         (_initialize_remote_sim): Adjust.
8121         * remote.c (remote_doc): New.
8122         (remote_target_info): New.
8123         (remote_target) <shortname, longname, doc>: Delete.
8124         <info>: New.
8125         (extended_remote_target_info): New.
8126         (extended_remote_target) <shortname, longname, doc>: Delete.
8127         <info>: New.
8128         (remote_target::open_1): Make static.  Adjust.
8129         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8130         * s390-linux-nat.c (_initialize_s390_nat): Use
8131         add_inf_child_target.
8132         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8133         add_inf_child_target.
8134         * sol-thread.c (thread_db_target_info): New.
8135         (sol_thread_target) <shortname, longname, doc>: Delete.
8136         <info>: New.
8137         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8138         add_inf_child_target.
8139         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8140         add_inf_child_target.
8141         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8142         add_inf_child_target.
8143         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8144         add_inf_child_target.
8145         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8146         add_inf_child_target.
8147         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8148         add_inf_child_target.
8149         * spu-linux-nat.c (_initialize_spu_nat): Use
8150         add_inf_child_target.
8151         * spu-multiarch.c (spu_multiarch_target_info): New.
8152         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8153         <info>: New.
8154         * target-delegates.c: Regenerate.
8155         * target.c: Include <unordered_map>.
8156         (target_ops_p): Delete.
8157         (DEF_VEC_P(target_ops_p)): Delete.
8158         (target_factories): New.
8159         (test_target_info): New.
8160         (test_target_ops::info): New.
8161         (open_target): Adjust to use target_factories.
8162         (add_target_with_completer): Rename to ...
8163         (add_target): ... this.  Change prototype.  Register target_info
8164         and open callback in target_factories.  Register target_info in
8165         command context instead of target_ops.
8166         (add_target): Delete old implementation.
8167         (add_deprecated_target_alias): Change prototype.  Adjust.
8168         (the_native_target): New.
8169         (set_native_target, get_native_target): New.
8170         (find_default_run_target): Use the_native_target.
8171         (find_attach_target, find_run_target): Simplify.
8172         (target_ops::open): Delete.
8173         (dummy_target_info): New.
8174         (dummy_target::shortname, dummy_target::longname)
8175         (dummy_target::doc): Delete.
8176         (dummy_target::info): New.
8177         (debug_target::shortname, debug_target::longname)
8178         (debug_target::doc): Delete.
8179         (debug_target::info): New.
8180         * target.h (struct target_info): New.
8181         (target_ops::~target_ops): Add comment.
8182         (target_ops::info): New.
8183         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8184         longer virtual.  Implement in terms of target_info.
8185         (set_native_target, get_native_target): Declare.
8186         (target_open_ftype): New.
8187         (add_target, add_target_with_completer)
8188         (add_deprecated_target_alias): Change prototype.
8189         (test_target) <shortname, longname, doc>: Delete.
8190         <info>: New.
8191         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8192         add_inf_child_target.
8193         * tracefile-tfile.c (tfile_target_info): New.
8194         (tfile_target) <shortname, longname, doc>: Delete.
8195         <info>: New.
8196         (tfile_target::open): Rename to ...
8197         (tfile_target_open): ... this.
8198         (_initialize_tracefile_tfile): Adjust.
8199         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8200         add_inf_child_target.
8201         * windows-nat.c (_initialize_windows_nat): Use
8202         add_inf_child_target.
8203         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8204         add_inf_child_target.
8205
8206 2018-05-02  Pedro Alves  <palves@redhat.com>
8207
8208         * linux-nat.h (linux_nat_target) <low_new_thread,
8209         low_delete_thread, low_new_fork, low_forget_process,
8210         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8211         New virtual methods.
8212         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8213         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8214         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8215         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8216         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8217         Delete.
8218         * linux-fork.c (delete_fork): Adjust to call low method.
8219         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8220         (linux_nat_new_fork, linux_nat_forget_process_hook)
8221         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8222         (linux_nat_status_is_event):
8223         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8224         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8225         to call low method.
8226         (sigtrap_is_event): Rename to ...
8227         (linux_nat_target::low_status_is_event): ... this.
8228         (linux_nat_set_status_is_event): Delete.
8229         (save_stop_reason, linux_nat_wait_1)
8230         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8231         low methods.
8232         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8233         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8234         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8235         (linux_nat_set_prepare_to_resume): Delete.
8236         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8237         low virtual methods.
8238         * amd64-linux-nat.c: Likewise.
8239         * arm-linux-nat.c: Likewise.
8240         * i386-linux-nat.c: Likewise.
8241         * ia64-linux-nat.c: Likewise.
8242         * mips-linux-nat.c: Likewise.
8243         * ppc-linux-nat.c: Likewise.
8244         * s390-linux-nat.c: Likewise.
8245         * sparc64-linux-nat.c: Likewise.
8246         * x86-linux-nat.c: Likewise.
8247         * x86-linux-nat.h: Include "nat/x86-linux.h".
8248         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8249         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8250         Override methods.
8251
8252 2018-05-02  Pedro Alves  <palves@redhat.com>
8253
8254         * target.h (target_ops)
8255         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8256         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8257         stopped_by_watchpoint, have_continuable_watchpoint,
8258         stopped_data_address, watchpoint_addr_within_range,
8259         can_accel_watchpoint_condition, can_run, thread_alive,
8260         has_all_memory, has_memory, has_stack, has_registers,
8261         has_execution, can_async_p, is_async_p, supports_non_stop,
8262         always_non_stop_p, can_execute_reverse, supports_multi_process,
8263         supports_enable_disable_tracepoint,
8264         supports_disable_randomization, supports_string_tracing,
8265         supports_evaluation_of_breakpoint_conditions,
8266         can_run_breakpoint_commands, filesystem_is_local,
8267         can_download_tracepoint, get_trace_state_variable_value,
8268         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8269         record_is_replaying, record_will_replay,
8270         augmented_libraries_svr4_read>: Adjust to return bool.
8271         * aarch64-linux-nat.c: All implementations adjusted.
8272         * aix-thread.c: All implementations adjusted.
8273         * arm-linux-nat.c: All implementations adjusted.
8274         * breakpoint.c: All implementations adjusted.
8275         * bsd-kvm.c: All implementations adjusted.
8276         * bsd-uthread.c: All implementations adjusted.
8277         * corelow.c: All implementations adjusted.
8278         * ctf.c: All implementations adjusted.
8279         * darwin-nat.c: All implementations adjusted.
8280         * darwin-nat.h: All implementations adjusted.
8281         * exec.c: All implementations adjusted.
8282         * fbsd-nat.c: All implementations adjusted.
8283         * fbsd-nat.h: All implementations adjusted.
8284         * gnu-nat.c: All implementations adjusted.
8285         * gnu-nat.h: All implementations adjusted.
8286         * go32-nat.c: All implementations adjusted.
8287         * ia64-linux-nat.c: All implementations adjusted.
8288         * inf-child.c: All implementations adjusted.
8289         * inf-child.h: All implementations adjusted.
8290         * inf-ptrace.c: All implementations adjusted.
8291         * inf-ptrace.h: All implementations adjusted.
8292         * linux-nat.c: All implementations adjusted.
8293         * linux-nat.h: All implementations adjusted.
8294         * mips-linux-nat.c: All implementations adjusted.
8295         * nto-procfs.c: All implementations adjusted.
8296         * ppc-linux-nat.c: All implementations adjusted.
8297         * procfs.c: All implementations adjusted.
8298         * ravenscar-thread.c: All implementations adjusted.
8299         * record-btrace.c: All implementations adjusted.
8300         * record-full.c: All implementations adjusted.
8301         * remote-sim.c: All implementations adjusted.
8302         * remote.c: All implementations adjusted.
8303         * s390-linux-nat.c: All implementations adjusted.
8304         * sol-thread.c: All implementations adjusted.
8305         * spu-multiarch.c: All implementations adjusted.
8306         * target-delegates.c: All implementations adjusted.
8307         * target.c: All implementations adjusted.
8308         * target.h: All implementations adjusted.
8309         * tracefile-tfile.c: All implementations adjusted.
8310         * tracefile.c: All implementations adjusted.
8311         * tracefile.h: All implementations adjusted.
8312         * windows-nat.c: All implementations adjusted.
8313         * x86-linux-nat.h: All implementations adjusted.
8314         * x86-nat.h: All implementations adjusted.
8315
8316 2018-05-02  Pedro Alves  <palves@redhat.com>
8317
8318         * make-target-delegates (scan_target_h): Don't trim lines here.
8319         Replace sequences of tabs and/or whitespace with a single
8320         whitespace.
8321         (top level, parsing methods): Trim each line before processing it
8322         here.
8323
8324 2018-05-02  Pedro Alves  <palves@redhat.com>
8325             John Baldwin  <jhb@freebsd.org>
8326
8327         * target.h (enum strata) <debug_stratum>: New.
8328         (struct target_ops) <all delegation methods>: Replace by C++
8329         virtual methods, and drop "to_" prefix.  All references updated
8330         throughout.
8331         <to_shortname, to_longname, to_doc, to_data,
8332         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8333         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8334         virtual methods.  All references updated throughout.
8335         <can_attach, supports_terminal_ours, can_create_inferior,
8336         get_thread_control_capabilities, attach_no_wait>: New
8337         virtual methods.
8338         <insert_breakpoint, remove_breakpoint>: Now
8339         TARGET_DEFAULT_NORETURN methods.
8340         <info_proc>: Now returns bool.
8341         <to_magic>: Delete.
8342         (OPS_MAGIC): Delete.
8343         (current_target): Delete.  All references replaced by references
8344         to ...
8345         (target_stack): ... this.  New.
8346         (target_shortname, target_longname): Adjust.
8347         (target_can_run): Now a function declaration.
8348         (default_child_has_all_memory, default_child_has_memory)
8349         (default_child_has_stack, default_child_has_registers)
8350         (default_child_has_execution): Remove target_ops parameter.
8351         (complete_target_initialization): Delete.
8352         (memory_breakpoint_target): New template class.
8353         (test_target_ops): Refactor as a C++ class with virtual methods.
8354         * make-target-delegates (NAME_PART): Tighten.
8355         (POINTER_PART, CP_SYMBOL): New.
8356         (SIMPLE_RETURN_PART): Reimplement.
8357         (VEC_RETURN_PART): Expect less.
8358         (RETURN_PART, VIRTUAL_PART): New.
8359         (METHOD): Adjust to C++ virtual methods.
8360         (scan_target_h): Remove reference to C99.
8361         (dname): Output "target_ops::" prefix.
8362         (write_function_header): Adjust to output a C++ class method.
8363         (write_declaration): New.
8364         (write_delegator): Adjust to output a C++ class method.
8365         (tdname): Output "dummy_target::" prefix.
8366         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8367         method.
8368         (tdefault_names, debug_names): Delete.
8369         (return_types, tdefaults, styles, argtypes_array): New.
8370         (top level): All methods are delegators.
8371         (print_class): New.
8372         (top level): Print dummy_target and debug_target classes.
8373         * target-delegates.c: Regenerate.
8374         * target-debug.h (target_debug_print_enum_info_proc_what)
8375         (target_debug_print_thread_control_capabilities)
8376         (target_debug_print_thread_info_p): New.
8377         * target.c (dummy_target): Delete.
8378         (the_dummy_target, the_debug_target): New.
8379         (target_stack): Now extern.
8380         (set_targetdebug): Push/unpush debug target.
8381         (default_child_has_all_memory, default_child_has_memory)
8382         (default_child_has_stack, default_child_has_registers)
8383         (default_child_has_execution): Remove target_ops parameter.
8384         (complete_target_initialization): Delete.
8385         (add_target_with_completer): No longer call
8386         complete_target_initialization.
8387         (target_supports_terminal_ours): Use regular delegation.
8388         (update_current_target): Delete.
8389         (push_target): No longer check magic number.  Don't call
8390         update_current_target.
8391         (unpush_target): Don't call update_current_target.
8392         (target_is_pushed): No longer check magic number.
8393         (target_require_runnable): Skip for all stratums over
8394         process_stratum.
8395         (target_ops::info_proc): New.
8396         (target_info_proc): Use find_target_at and
8397         find_default_run_target.
8398         (target_supports_disable_randomization): Use regular delegation.
8399         (target_get_osdata): Use find_target_at.
8400         (target_ops::open, target_ops::close, target_ops::can_attach)
8401         (target_ops::attach, target_ops::can_create_inferior)
8402         (target_ops::create_inferior, target_ops::can_run)
8403         (target_can_run): New.
8404         (default_fileio_target): Use regular delegation.
8405         (target_ops::fileio_open, target_ops::fileio_pwrite)
8406         (target_ops::fileio_pread, target_ops::fileio_fstat)
8407         (target_ops::fileio_close, target_ops::fileio_unlink)
8408         (target_ops::fileio_readlink): New.
8409         (target_fileio_open_1, target_fileio_unlink)
8410         (target_fileio_readlink): Always call the target method.  Handle
8411         FILEIO_ENOSYS.
8412         (return_zero, return_zero_has_execution): Delete.
8413         (init_dummy_target): Delete.
8414         (dummy_target::dummy_target, dummy_target::shortname)
8415         (dummy_target::longname, dummy_target::doc)
8416         (debug_target::debug_target, debug_target::shortname)
8417         (debug_target::longname, debug_target::doc): New.
8418         (target_supports_delete_record): Use regular delegation.
8419         (setup_target_debug): Delete.
8420         (maintenance_print_target_stack): Skip debug_stratum.
8421         (initialize_targets): Instantiate the_dummy_target and
8422         the_debug_target.
8423         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8424         use target_stack.
8425         (target_auxv_search, fprint_target_auxv): Adjust.
8426         (info_auxv_command): Adjust to use target_stack.
8427         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8428         * exceptions.c (print_flush): Handle a NULL target_stack.
8429         * regcache.c (target_ops_no_register): Refactor as class with
8430         virtual methods.
8431
8432         * exec.c (exec_target): New class.
8433         (exec_ops): Now an exec_target.
8434         (exec_open, exec_close_1, exec_get_section_table)
8435         (exec_xfer_partial, exec_files_info, exec_has_memory)
8436         (exec_make_note_section): Refactor as exec_target methods.
8437         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8438         Delete.
8439         (exec_target::find_memory_regions): New.
8440         (_initialize_exec): Don't call init_exec_ops.
8441         * gdbcore.h (exec_file_clear): Delete.
8442
8443         * corefile.c (core_target): Delete.
8444         (core_file_command): Adjust.
8445         * corelow.c (core_target): New class.
8446         (the_core_target): New.
8447         (core_close): Remove target_ops parameter.
8448         (core_close_cleanup): Adjust.
8449         (core_target::close): New.
8450         (core_open, core_detach, get_core_registers, core_files_info)
8451         (core_xfer_partial, core_thread_alive, core_read_description)
8452         (core_pid_to_str, core_thread_name, core_has_memory)
8453         (core_has_stack, core_has_registers, core_info_proc): Rework as
8454         core_target methods.
8455         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8456         (_initialize_corelow): Initialize the_core_target.
8457         * gdbcore.h (core_target): Delete.
8458         (the_core_target): New.
8459
8460         * ctf.c: (ctf_target): New class.
8461         (ctf_ops): Now a ctf_target.
8462         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8463         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8464         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8465         methods.
8466         (init_ctf_ops): Delete.
8467         (_initialize_ctf): Don't call it.
8468         * tracefile-tfile.c (tfile_target): New class.
8469         (tfile_ops): Now a tfile_target.
8470         (tfile_open, tfile_close, tfile_files_info)
8471         (tfile_get_tracepoint_status, tfile_trace_find)
8472         (tfile_fetch_registers, tfile_xfer_partial)
8473         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8474         Refactor as tfile_target methods.
8475         (tfile_xfer_partial_features): Remove target_ops parameter.
8476         (init_tfile_ops): Delete.
8477         (_initialize_tracefile_tfile): Don't call it.
8478         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8479         (tracefile_has_stack, tracefile_has_registers)
8480         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8481         tracefile_target methods.
8482         (init_tracefile_ops): Delete.
8483         (tracefile_target::tracefile_target): New.
8484         * tracefile.h: Include "target.h".
8485         (tracefile_target): New class.
8486         (init_tracefile_ops): Delete.
8487
8488         * spu-multiarch.c (spu_multiarch_target): New class.
8489         (spu_ops): Now a spu_multiarch_target.
8490         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8491         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8492         (spu_search_memory, spu_mourn_inferior): Refactor as
8493         spu_multiarch_target methods.
8494         (init_spu_ops): Delete.
8495         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8496         complete_target_initialization.
8497
8498         * ravenscar-thread.c (ravenscar_thread_target): New class.
8499         (ravenscar_ops): Now a ravenscar_thread_target.
8500         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8501         (ravenscar_thread_alive, ravenscar_pid_to_str)
8502         (ravenscar_fetch_registers, ravenscar_store_registers)
8503         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8504         (ravenscar_stopped_by_hw_breakpoint)
8505         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8506         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8507         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8508         methods.
8509         (init_ravenscar_thread_ops): Delete.
8510         (_initialize_ravenscar): Remove references to
8511         init_ravenscar_thread_ops and complete_target_initialization.
8512
8513         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8514         (bsd_uthread_target): New class.
8515         (bsd_uthread_ops): Now a bsd_uthread_target.
8516         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8517         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8518         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8519         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8520         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8521         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8522         (bsd_uthread_target): Delete function.
8523         (_initialize_bsd_uthread): Remove reference to
8524         complete_target_initialization.
8525
8526         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8527         (target_bfd): ... this new class.
8528         (target_bfd_xfer_partial, target_bfd_get_section_table)
8529         (target_bfd_close): Refactor as target_bfd methods.
8530         (target_bfd::~target_bfd): New.
8531         (target_bfd_reopen): Adjust.
8532         (target_bfd::close): New.
8533
8534         * record-btrace.c (record_btrace_target): New class.
8535         (record_btrace_ops): Now a record_btrace_target.
8536         (record_btrace_open, record_btrace_stop_recording)
8537         (record_btrace_disconnect, record_btrace_close)
8538         (record_btrace_async, record_btrace_info)
8539         (record_btrace_insn_history, record_btrace_insn_history_range)
8540         (record_btrace_insn_history_from, record_btrace_call_history)
8541         (record_btrace_call_history_range)
8542         (record_btrace_call_history_from, record_btrace_record_method)
8543         (record_btrace_is_replaying, record_btrace_will_replay)
8544         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8545         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8546         (record_btrace_store_registers, record_btrace_prepare_to_store)
8547         (record_btrace_to_get_unwinder)
8548         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8549         (record_btrace_commit_resume, record_btrace_wait)
8550         (record_btrace_stop, record_btrace_can_execute_reverse)
8551         (record_btrace_stopped_by_sw_breakpoint)
8552         (record_btrace_supports_stopped_by_sw_breakpoint)
8553         (record_btrace_stopped_by_hw_breakpoint)
8554         (record_btrace_supports_stopped_by_hw_breakpoint)
8555         (record_btrace_update_thread_list, record_btrace_thread_alive)
8556         (record_btrace_goto_begin, record_btrace_goto_end)
8557         (record_btrace_goto, record_btrace_stop_replaying_all)
8558         (record_btrace_execution_direction)
8559         (record_btrace_prepare_to_generate_core)
8560         (record_btrace_done_generating_core): Refactor as
8561         record_btrace_target methods.
8562         (init_record_btrace_ops): Delete.
8563         (_initialize_record_btrace): Remove reference to
8564         init_record_btrace_ops.
8565         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8566         the execution_direction global.
8567         (record_full_base_target, record_full_target)
8568         (record_full_core_target): New classes.
8569         (record_full_ops): Now a record_full_target.
8570         (record_full_core_ops): Now a record_full_core_target.
8571         (record_full_target::detach, record_full_target::disconnect)
8572         (record_full_core_target::disconnect)
8573         (record_full_target::mourn_inferior, record_full_target::kill):
8574         New.
8575         (record_full_open, record_full_close, record_full_async): Refactor
8576         as methods of the record_full_base_target class.
8577         (record_full_resume, record_full_commit_resume): Refactor
8578         as methods of the record_full_target class.
8579         (record_full_wait, record_full_stopped_by_watchpoint)
8580         (record_full_stopped_data_address)
8581         (record_full_stopped_by_sw_breakpoint)
8582         (record_full_supports_stopped_by_sw_breakpoint)
8583         (record_full_stopped_by_hw_breakpoint)
8584         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8585         methods of the record_full_base_target class.
8586         (record_full_store_registers, record_full_xfer_partial)
8587         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8588         Refactor as methods of the record_full_target class.
8589         (record_full_can_execute_reverse, record_full_get_bookmark)
8590         (record_full_goto_bookmark, record_full_execution_direction)
8591         (record_full_record_method, record_full_info, record_full_delete)
8592         (record_full_is_replaying, record_full_will_replay)
8593         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8594         (record_full_stop_replaying): Refactor as methods of the
8595         record_full_base_target class.
8596         (record_full_core_resume, record_full_core_kill)
8597         (record_full_core_fetch_registers)
8598         (record_full_core_prepare_to_store)
8599         (record_full_core_store_registers, record_full_core_xfer_partial)
8600         (record_full_core_insert_breakpoint)
8601         (record_full_core_remove_breakpoint)
8602         (record_full_core_has_execution): Refactor
8603         as methods of the record_full_core_target class.
8604         (record_full_base_target::supports_delete_record): New.
8605         (init_record_full_ops): Delete.
8606         (init_record_full_core_ops): Delete.
8607         (record_full_save): Refactor as method of the
8608         record_full_base_target class.
8609         (_initialize_record_full): Remove references to
8610         init_record_full_ops and init_record_full_core_ops.
8611
8612         * remote.c (remote_target, extended_remote_target): New classes.
8613         (remote_ops): Now a remote_target.
8614         (extended_remote_ops): Now an extended_remote_target.
8615         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8616         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8617         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8618         (remote_pass_signals, remote_set_syscall_catchpoint)
8619         (remote_program_signals, )
8620         (remote_thread_always_alive): Remove target_ops parameter.
8621         (remote_thread_alive, remote_thread_name)
8622         (remote_update_thread_list, remote_threads_extra_info)
8623         (remote_static_tracepoint_marker_at)
8624         (remote_static_tracepoint_markers_by_strid)
8625         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8626         (remote_open): Refactor as methods of remote_target.
8627         (extended_remote_open, extended_remote_detach)
8628         (extended_remote_attach, extended_remote_post_attach):
8629         (extended_remote_supports_disable_randomization)
8630         (extended_remote_create_inferior): : Refactor as method of
8631         extended_remote_target.
8632         (remote_set_permissions, remote_open_1, remote_detach)
8633         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8634         (remote_resume, remote_commit_resume, remote_stop)
8635         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8636         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8637         (remote_prepare_to_store, remote_store_registers)
8638         (remote_flash_erase, remote_flash_done, remote_files_info)
8639         (remote_kill, remote_mourn, remote_insert_breakpoint)
8640         (remote_remove_breakpoint, remote_insert_watchpoint)
8641         (remote_watchpoint_addr_within_range)
8642         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8643         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8644         (remote_supports_stopped_by_sw_breakpoint)
8645         (remote_stopped_by_hw_breakpoint)
8646         (remote_supports_stopped_by_hw_breakpoint)
8647         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8648         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8649         (remote_verify_memory): Refactor as methods of remote_target.
8650         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8651         parameter.
8652         (remote_xfer_partial, remote_get_memory_xfer_limit)
8653         (remote_search_memory, remote_rcmd, remote_memory_map)
8654         (remote_pid_to_str, remote_get_thread_local_address)
8655         (remote_get_tib_address, remote_read_description): Refactor as
8656         methods of remote_target.
8657         (remote_target::fileio_open, remote_target::fileio_pwrite)
8658         (remote_target::fileio_pread, remote_target::fileio_close): New.
8659         (remote_hostio_readlink, remote_hostio_fstat)
8660         (remote_filesystem_is_local, remote_can_execute_reverse)
8661         (remote_supports_non_stop, remote_supports_disable_randomization)
8662         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8663         (remote_supports_enable_disable_tracepoint)
8664         (remote_supports_string_tracing)
8665         (remote_can_run_breakpoint_commands, remote_trace_init)
8666         (remote_download_tracepoint, remote_can_download_tracepoint)
8667         (remote_download_trace_state_variable, remote_enable_tracepoint)
8668         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8669         (remote_trace_start, remote_get_trace_status)
8670         (remote_get_tracepoint_status, remote_trace_stop)
8671         (remote_trace_find, remote_get_trace_state_variable_value)
8672         (remote_save_trace_data, remote_get_raw_trace_data)
8673         (remote_set_disconnected_tracing, remote_core_of_thread)
8674         (remote_set_circular_trace_buffer, remote_traceframe_info)
8675         (remote_get_min_fast_tracepoint_insn_len)
8676         (remote_set_trace_buffer_size, remote_set_trace_notes)
8677         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8678         (remote_disable_btrace, remote_teardown_btrace)
8679         (remote_read_btrace, remote_btrace_conf)
8680         (remote_augmented_libraries_svr4_read, remote_load)
8681         (remote_pid_to_exec_file, remote_can_do_single_step)
8682         (remote_execution_direction, remote_thread_handle_to_thread_info):
8683         Refactor as methods of remote_target.
8684         (init_remote_ops, init_extended_remote_ops): Delete.
8685         (remote_can_async_p, remote_is_async_p, remote_async)
8686         (remote_thread_events, remote_upload_tracepoints)
8687         (remote_upload_trace_state_variables): Refactor as methods of
8688         remote_target.
8689         (_initialize_remote): Remove references to init_remote_ops and
8690         init_extended_remote_ops.
8691
8692         * remote-sim.c (gdbsim_target): New class.
8693         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8694         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8695         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8696         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8697         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8698         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8699         Refactor as methods of gdbsim_target.
8700         (gdbsim_ops): Now a gdbsim_target.
8701         (init_gdbsim_ops): Delete.
8702         (gdbsim_cntrl_c): Adjust.
8703         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8704
8705         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8706         (the_amd64_linux_nat_target): New.
8707         (amd64_linux_fetch_inferior_registers)
8708         (amd64_linux_store_inferior_registers): Refactor as methods of
8709         amd64_linux_nat_target.
8710         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8711         * i386-linux-nat.c: Don't include "linux-nat.h".
8712         (i386_linux_nat_target): New class.
8713         (the_i386_linux_nat_target): New.
8714         (i386_linux_fetch_inferior_registers)
8715         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8716         as methods of i386_linux_nat_target.
8717         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8718         * inf-child.c (inf_child_ops): Delete.
8719         (inf_child_fetch_inferior_registers)
8720         (inf_child_store_inferior_registers): Delete.
8721         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8722         methods of inf_child_target.
8723         (inf_child_target::supports_terminal_ours)
8724         (inf_child_target::terminal_init)
8725         (inf_child_target::terminal_inferior)
8726         (inf_child_target::terminal_ours_for_output)
8727         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8728         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8729         New.
8730         (inf_child_open, inf_child_disconnect, inf_child_close)
8731         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8732         (inf_child_post_startup_inferior, inf_child_can_run)
8733         (inf_child_pid_to_exec_file): Refactor as methods of
8734         inf_child_target.
8735         (inf_child_follow_fork): Delete.
8736         (inf_child_target::can_create_inferior)
8737         (inf_child_target::can_attach): New.
8738         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8739         (inf_child_target::has_stack, inf_child_target::has_registers)
8740         (inf_child_target::has_execution): New.
8741         (inf_child_fileio_open, inf_child_fileio_pwrite)
8742         (inf_child_fileio_pread, inf_child_fileio_fstat)
8743         (inf_child_fileio_close, inf_child_fileio_unlink)
8744         (inf_child_fileio_readlink, inf_child_use_agent)
8745         (inf_child_can_use_agent): Refactor as methods of
8746         inf_child_target.
8747         (return_zero, inf_child_target): Delete.
8748         (inf_child_target::inf_child_target): New.
8749         * inf-child.h: Include "target.h".
8750         (inf_child_target): Delete function prototype.
8751         (inf_child_target): New class.
8752         (inf_child_open_target, inf_child_mourn_inferior)
8753         (inf_child_maybe_unpush_target): Delete.
8754         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8755         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8756         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8757         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8758         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8759         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8760         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8761         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8762         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8763         methods of inf_ptrace_target.
8764         (inf_ptrace_target): Delete function.
8765         * inf-ptrace.h: Include "inf-child.h".
8766         (inf_ptrace_target): Delete function declaration.
8767         (inf_ptrace_target): New class.
8768         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8769         * linux-nat.c (linux_target): New.
8770         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8771         (linux_nat_target::~linux_nat_target): New.
8772         (linux_child_post_attach, linux_child_post_startup_inferior)
8773         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8774         (linux_child_remove_fork_catchpoint)
8775         (linux_child_insert_vfork_catchpoint)
8776         (linux_child_remove_vfork_catchpoint)
8777         (linux_child_insert_exec_catchpoint)
8778         (linux_child_remove_exec_catchpoint)
8779         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8780         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8781         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8782         (linux_nat_stopped_data_address)
8783         (linux_nat_stopped_by_sw_breakpoint)
8784         (linux_nat_supports_stopped_by_sw_breakpoint)
8785         (linux_nat_stopped_by_hw_breakpoint)
8786         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8787         (linux_nat_kill, linux_nat_mourn_inferior)
8788         (linux_nat_xfer_partial, linux_nat_thread_alive)
8789         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8790         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8791         (linux_child_static_tracepoint_markers_by_strid)
8792         (linux_nat_is_async_p, linux_nat_can_async_p)
8793         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8794         (linux_nat_supports_multi_process)
8795         (linux_nat_supports_disable_randomization, linux_nat_async)
8796         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8797         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8798         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8799         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8800         methods of linux_nat_target.
8801         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8802         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8803         parameter.
8804         (check_stopped_by_watchpoint): Adjust.
8805         (linux_xfer_partial): Delete.
8806         (linux_target_install_ops, linux_target, linux_nat_add_target):
8807         Delete.
8808         (linux_nat_target::linux_nat_target): New.
8809         * linux-nat.h: Include "inf-ptrace.h".
8810         (linux_nat_target): New.
8811         (linux_target, linux_target_install_ops, linux_nat_add_target):
8812         Delete function declarations.
8813         (linux_target): Declare global.
8814         * linux-thread-db.c (thread_db_target): New.
8815         (thread_db_target::thread_db_target): New.
8816         (thread_db_ops): Delete.
8817         (the_thread_db_target): New.
8818         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8819         (thread_db_update_thread_list, thread_db_pid_to_str)
8820         (thread_db_extra_thread_info)
8821         (thread_db_thread_handle_to_thread_info)
8822         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8823         (thread_db_resume): Refactor as methods of thread_db_target.
8824         (init_thread_db_ops): Delete.
8825         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8826         * x86-linux-nat.c: Don't include "linux-nat.h".
8827         (super_post_startup_inferior): Delete.
8828         (x86_linux_nat_target::~x86_linux_nat_target): New.
8829         (x86_linux_child_post_startup_inferior)
8830         (x86_linux_read_description, x86_linux_enable_btrace)
8831         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8832         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8833         methods of x86_linux_nat_target.
8834         (x86_linux_create_target): Delete.  Bits folded ...
8835         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8836         pointer.
8837         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8838         (x86_linux_nat_target): New class.
8839         (x86_linux_create_target): Delete.
8840         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8841         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8842         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8843         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8844         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8845         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8846         make extern.
8847         (x86_use_watchpoints): Delete.
8848         * x86-nat.h: Include "breakpoint.h" and "target.h".
8849         (x86_use_watchpoints): Delete.
8850         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8851         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8852         (x86_insert_watchpoint, x86_remove_watchpoint)
8853         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8854         (x86_stopped_by_hw_breakpoint): New declarations.
8855         (x86_nat_target): New template class.
8856
8857         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8858         (the_ppc_linux_nat_target): New.
8859         (ppc_linux_fetch_inferior_registers)
8860         (ppc_linux_can_use_hw_breakpoint)
8861         (ppc_linux_region_ok_for_hw_watchpoint)
8862         (ppc_linux_ranged_break_num_registers)
8863         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8864         (ppc_linux_insert_mask_watchpoint)
8865         (ppc_linux_remove_mask_watchpoint)
8866         (ppc_linux_can_accel_watchpoint_condition)
8867         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8868         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8869         (ppc_linux_watchpoint_addr_within_range)
8870         (ppc_linux_masked_watch_num_registers)
8871         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8872         (ppc_linux_read_description): Refactor as methods of
8873         ppc_linux_nat_target.
8874         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8875
8876         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8877         (procfs_target): New class.
8878         (the_procfs_target): New.
8879         (procfs_target): Delete function.
8880         (procfs_auxv_parse, procfs_attach, procfs_detach)
8881         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8882         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8883         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8884         (procfs_create_inferior, procfs_update_thread_list)
8885         (procfs_thread_alive, procfs_pid_to_str)
8886         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8887         (procfs_stopped_data_address, procfs_insert_watchpoint)
8888         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8889         (proc_find_memory_regions, procfs_info_proc)
8890         (procfs_make_note_section): Refactor as methods of procfs_target.
8891         (_initialize_procfs): Adjust.
8892         * sol-thread.c (sol_thread_target): New class.
8893         (sol_thread_ops): Now a sol_thread_target.
8894         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8895         (sol_thread_fetch_registers, sol_thread_store_registers)
8896         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8897         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8898         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8899         (init_sol_thread_ops): Delete.
8900         (_initialize_sol_thread): Adjust.  Remove references to
8901         init_sol_thread_ops and complete_target_initialization.
8902
8903         * windows-nat.c (windows_nat_target): New class.
8904         (windows_fetch_inferior_registers)
8905         (windows_store_inferior_registers, windows_resume, windows_wait)
8906         (windows_attach, windows_detach, windows_pid_to_exec_file)
8907         (windows_files_info, windows_create_inferior)
8908         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8909         (windows_close, windows_pid_to_str, windows_xfer_partial)
8910         (windows_get_tib_address, windows_get_ada_task_ptid)
8911         (windows_thread_name, windows_thread_alive): Refactor as
8912         windows_nat_target methods.
8913         (do_initial_windows_stuff): Adjust.
8914         (windows_target): Delete function.
8915         (_initialize_windows_nat): Adjust.
8916
8917         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8918         (darwin_mourn_inferior, darwin_kill_inferior)
8919         (darwin_create_inferior, darwin_attach, darwin_detach)
8920         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8921         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8922         (darwin_supports_multi_process): Refactor as darwin_nat_target
8923         methods.
8924         (darwin_resume_to, darwin_files_info): Delete.
8925         (_initialize_darwin_inferior): Rename to ...
8926         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8927         * darwin-nat.h: Include "inf-child.h".
8928         (darwin_nat_target): New class.
8929         (darwin_complete_target): Delete.
8930         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8931         (darwin_target): New.
8932         (i386_darwin_fetch_inferior_registers)
8933         (i386_darwin_store_inferior_registers): Refactor as methods of
8934         darwin_nat_target.
8935         (darwin_complete_target): Delete, with ...
8936         (_initialize_i386_darwin_nat): ... bits factored out here.
8937
8938         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8939         (the_alpha_linux_nat_target): New.
8940         (alpha_linux_register_u_offset): Refactor as
8941         alpha_linux_nat_target method.
8942         (_initialize_alpha_linux_nat): Adjust.
8943         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8944         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8945         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8946         methods of linux_nat_trad_target.
8947         (linux_trad_target): Delete.
8948         * linux-nat-trad.h (linux_trad_target): Delete function.
8949         (linux_nat_trad_target): New class.
8950         * mips-linux-nat.c (mips_linux_nat_target): New class.
8951         (super_fetch_registers, super_store_registers, super_close):
8952         Delete.
8953         (the_mips_linux_nat_target): New.
8954         (mips64_linux_regsets_fetch_registers)
8955         (mips64_linux_regsets_store_registers)
8956         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8957         (mips_linux_register_u_offset, mips_linux_read_description)
8958         (mips_linux_can_use_hw_breakpoint)
8959         (mips_linux_stopped_by_watchpoint)
8960         (mips_linux_stopped_data_address)
8961         (mips_linux_region_ok_for_hw_watchpoint)
8962         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8963         (mips_linux_close): Refactor as methods of mips_linux_nat.
8964         (_initialize_mips_linux_nat): Adjust to C++ification.
8965
8966         * aix-thread.c (aix_thread_target): New class.
8967         (aix_thread_ops): Now an aix_thread_target.
8968         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8969         (aix_thread_fetch_registers, aix_thread_store_registers)
8970         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8971         (aix_thread_thread_alive, aix_thread_pid_to_str)
8972         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8973         Refactor as methods of aix_thread_target.
8974         (init_aix_thread_ops): Delete.
8975         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8976         and complete_target_initialization.
8977         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8978         (rs6000_nat_target): New class.
8979         (the_rs6000_nat_target): New.
8980         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8981         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8982         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8983         (super_create_inferior): Delete.
8984         (_initialize_rs6000_nat): Adjust to C++ification.
8985
8986         * arm-linux-nat.c (arm_linux_nat_target): New class.
8987         (the_arm_linux_nat_target): New.
8988         (arm_linux_fetch_inferior_registers)
8989         (arm_linux_store_inferior_registers, arm_linux_read_description)
8990         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8991         (arm_linux_remove_hw_breakpoint)
8992         (arm_linux_region_ok_for_hw_watchpoint)
8993         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8994         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8995         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8996         arm_linux_nat_target.
8997         (_initialize_arm_linux_nat): Adjust to C++ification.
8998
8999         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
9000         (the_aarch64_linux_nat_target): New.
9001         (aarch64_linux_fetch_inferior_registers)
9002         (aarch64_linux_store_inferior_registers)
9003         (aarch64_linux_child_post_startup_inferior)
9004         (aarch64_linux_read_description)
9005         (aarch64_linux_can_use_hw_breakpoint)
9006         (aarch64_linux_insert_hw_breakpoint)
9007         (aarch64_linux_remove_hw_breakpoint)
9008         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
9009         (aarch64_linux_region_ok_for_hw_watchpoint)
9010         (aarch64_linux_stopped_data_address)
9011         (aarch64_linux_stopped_by_watchpoint)
9012         (aarch64_linux_watchpoint_addr_within_range)
9013         (aarch64_linux_can_do_single_step): Refactor as methods of
9014         aarch64_linux_nat_target.
9015         (super_post_startup_inferior): Delete.
9016         (_initialize_aarch64_linux_nat): Adjust to C++ification.
9017
9018         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
9019         (the_hppa_linux_nat_target): New.
9020         (hppa_linux_fetch_inferior_registers)
9021         (hppa_linux_store_inferior_registers): Refactor as methods of
9022         hppa_linux_nat_target.
9023         (_initialize_hppa_linux_nat): Adjust to C++ification.
9024
9025         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
9026         (the_ia64_linux_nat_target): New.
9027         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
9028         (ia64_linux_stopped_data_address)
9029         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
9030         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
9031         ia64_linux_nat_target methods.
9032         (super_xfer_partial): Delete.
9033         (_initialize_ia64_linux_nat): Adjust to C++ification.
9034
9035         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
9036         (the_m32r_linux_nat_target): New.
9037         (m32r_linux_fetch_inferior_registers)
9038         (m32r_linux_store_inferior_registers): Refactor as
9039         m32r_linux_nat_target methods.
9040         (_initialize_m32r_linux_nat): Adjust to C++ification.
9041
9042         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9043         (the_m68k_linux_nat_target): New.
9044         (m68k_linux_fetch_inferior_registers)
9045         (m68k_linux_store_inferior_registers): Refactor as
9046         m68k_linux_nat_target methods.
9047         (_initialize_m68k_linux_nat): Adjust to C++ification.
9048
9049         * s390-linux-nat.c (s390_linux_nat_target): New class.
9050         (the_s390_linux_nat_target): New.
9051         (s390_linux_fetch_inferior_registers)
9052         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9053         (s390_insert_watchpoint, s390_remove_watchpoint)
9054         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9055         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9056         (s390_auxv_parse, s390_read_description): Refactor as methods of
9057         s390_linux_nat_target.
9058         (_initialize_s390_nat): Adjust to C++ification.
9059
9060         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9061         (the_sparc_linux_nat_target): New.
9062         (_initialize_sparc_linux_nat): Adjust to C++ification.
9063         * sparc-nat.c (sparc_fetch_inferior_registers)
9064         (sparc_store_inferior_registers): Remove target_ops parameter.
9065         * sparc-nat.h (sparc_fetch_inferior_registers)
9066         (sparc_store_inferior_registers): Remove target_ops parameter.
9067         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9068         (the_sparc64_linux_nat_target): New.
9069         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9070
9071         * spu-linux-nat.c (spu_linux_nat_target): New class.
9072         (the_spu_linux_nat_target): New.
9073         (spu_child_post_startup_inferior, spu_child_post_attach)
9074         (spu_child_wait, spu_fetch_inferior_registers)
9075         (spu_store_inferior_registers, spu_xfer_partial)
9076         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9077         methods.
9078         (_initialize_spu_nat): Adjust to C++ification.
9079
9080         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9081         (the_tilegx_linux_nat_target): New.
9082         (fetch_inferior_registers, store_inferior_registers):
9083         Refactor as methods.
9084         (_initialize_tile_linux_nat): Adjust to C++ification.
9085
9086         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9087         (the_xtensa_linux_nat_target): New.
9088         (xtensa_linux_fetch_inferior_registers)
9089         (xtensa_linux_store_inferior_registers): Refactor as
9090         xtensa_linux_nat_target methods.
9091         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9092
9093         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9094         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9095         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9096         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9097         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9098         (fbsd_stopped_by_sw_breakpoint)
9099         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9100         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9101         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9102         (fbsd_post_startup_inferior, fbsd_post_attach)
9103         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9104         (fbsd_set_syscall_catchpoint)
9105         (super_xfer_partial, super_resume, super_wait)
9106         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9107         (fbsd_handle_debug_trap): Remove target_ops parameter.
9108         (fbsd_nat_add_target): Delete.
9109         * fbsd-nat.h: Include "inf-ptrace.h".
9110         (fbsd_nat_add_target): Delete.
9111         (USE_SIGTRAP_SIGINFO): Define.
9112         (fbsd_nat_target): New class.
9113
9114         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9115         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9116         (amd64bsd_target): Delete.
9117         * amd64-bsd-nat.h: New file.
9118         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9119         "x86-bsd-nat.h".
9120         (amd64_fbsd_nat_target): New class.
9121         (the_amd64_fbsd_nat_target): New.
9122         (amd64fbsd_read_description): Refactor as method of
9123         amd64_fbsd_nat_target.
9124         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9125         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9126         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9127         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9128         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9129         (i386bsd_target): Delete.
9130         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9131         (i386bsd_fetch_inferior_registers)
9132         (i386bsd_store_inferior_registers): Declare.
9133         (i386_bsd_nat_target): New class.
9134         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9135         (the_i386_fbsd_nat_target): New.
9136         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9137         i386_fbsd_nat_target methods.
9138         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9139         (_initialize_i386fbsd_nat): Adjust to C++ification.
9140         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9141         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9142         (_initialize_x86_bsd_nat): Adjust to C++ification.
9143         * x86-bsd-nat.h: Include "x86-nat.h".
9144         (x86bsd_target): Delete declaration.
9145         (x86bsd_nat_target): New class.
9146
9147         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9148         (the_aarch64_fbsd_nat_target): New.
9149         (aarch64_fbsd_fetch_inferior_registers)
9150         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9151         aarch64_fbsd_nat_target.
9152         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9153         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9154         (the_alpha_bsd_nat_target): New.
9155         (alphabsd_fetch_inferior_registers)
9156         (alphabsd_store_inferior_registers): Refactor as
9157         alpha_bsd_nat_target methods.
9158         (_initialize_alphabsd_nat): Refactor as methods of
9159         alpha_bsd_nat_target.
9160         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9161         (the_amd64_nbsd_nat_target): New.
9162         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9163         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9164         (the_amd64_obsd_nat_target): New.
9165         (_initialize_amd64obsd_nat): Adjust to C++ification.
9166         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9167         (the_arm_fbsd_nat_target): New.
9168         (arm_fbsd_fetch_inferior_registers)
9169         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9170         (_initialize_arm_fbsd_nat): Refactor as methods of
9171         arm_fbsd_nat_target.
9172         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9173         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9174         (the_arm_netbsd_nat_target): New.
9175         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9176         arm_netbsd_nat_target.
9177         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9178         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9179         (the_hppa_nbsd_nat_target): New.
9180         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9181         hppa_nbsd_nat_target methods.
9182         (_initialize_hppanbsd_nat): Adjust to C++ification.
9183         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9184         (the_hppa_obsd_nat_target): New.
9185         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9186         methods of hppa_obsd_nat_target.
9187         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9188         add_target.
9189         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9190         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9191         add_target.
9192         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9193         (_initialize_i386obsd_nat): Use add_target.
9194         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9195         (the_m68k_bsd_nat_target): New.
9196         (m68kbsd_fetch_inferior_registers)
9197         (m68kbsd_store_inferior_registers): Refactor as methods of
9198         m68k_bsd_nat_target.
9199         (_initialize_m68kbsd_nat): Adjust to C++ification.
9200         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9201         (the_mips_fbsd_nat_target): New.
9202         (mips_fbsd_fetch_inferior_registers)
9203         (mips_fbsd_store_inferior_registers): Refactor as methods of
9204         mips_fbsd_nat_target.
9205         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9206         add_target.
9207         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9208         (the_mips_nbsd_nat_target): New.
9209         (mipsnbsd_fetch_inferior_registers)
9210         (mipsnbsd_store_inferior_registers): Refactor as methods of
9211         mips_nbsd_nat_target.
9212         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9213         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9214         (the_mips64_obsd_nat_target): New.
9215         (mips64obsd_fetch_inferior_registers)
9216         (mips64obsd_store_inferior_registers): Refactor as methods of
9217         mips64_obsd_nat_target.
9218         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9219         add_target.
9220         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9221         nbsd_nat_target.
9222         * nbsd-nat.h: Include "inf-ptrace.h".
9223         (nbsd_nat_target): New class.
9224         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9225         (obsd_wait): Refactor as methods of obsd_nat_target.
9226         (obsd_add_target): Delete.
9227         * obsd-nat.h: Include "inf-ptrace.h".
9228         (obsd_nat_target): New class.
9229         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9230         (the_ppc_fbsd_nat_target): New.
9231         (ppcfbsd_fetch_inferior_registers)
9232         (ppcfbsd_store_inferior_registers): Refactor as methods of
9233         ppc_fbsd_nat_target.
9234         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9235         add_target.
9236         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9237         (the_ppc_nbsd_nat_target): New.
9238         (ppcnbsd_fetch_inferior_registers)
9239         (ppcnbsd_store_inferior_registers): Refactor as methods of
9240         ppc_nbsd_nat_target.
9241         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9242         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9243         (the_ppc_obsd_nat_target): New.
9244         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9245         methods of ppc_obsd_nat_target.
9246         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9247         add_target.
9248         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9249         (the_sh_nbsd_nat_target): New.
9250         (shnbsd_fetch_inferior_registers)
9251         (shnbsd_store_inferior_registers): Refactor as methods of
9252         sh_nbsd_nat_target.
9253         (_initialize_shnbsd_nat): Adjust to C++ification.
9254         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9255         (inf_ptrace_xfer_partial): Delete.
9256         (sparc_xfer_partial, sparc_target): Delete.
9257         * sparc-nat.h (sparc_fetch_inferior_registers)
9258         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9259         (sparc_target): Delete function declaration.
9260         (sparc_target): New template class.
9261         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9262         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9263         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9264         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9265         add_target.
9266         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9267         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9268         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9269         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9270         add_target.
9271         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9272         (the_vax_bsd_nat_target): New.
9273         (vaxbsd_fetch_inferior_registers)
9274         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9275         methods.
9276         (_initialize_vaxbsd_nat): Adjust to C++ification.
9277
9278         * bsd-kvm.c (bsd_kvm_target): New class.
9279         (bsd_kvm_ops): Now a bsd_kvm_target.
9280         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9281         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9282         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9283         bsd_kvm_target.
9284         (bsd_kvm_return_one): Delete.
9285         (bsd_kvm_add_target): Adjust to C++ification.
9286
9287         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9288         (nto_procfs_target_procfs): New classes.
9289         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9290         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9291         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9292         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9293         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9294         (procfs_remove_hw_breakpoint, procfs_resume)
9295         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9296         (procfs_kill_inferior, procfs_store_registers)
9297         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9298         as methods of nto_procfs_target.
9299         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9300         (nto_native_ops): Delete.
9301         (procfs_open, procfs_native_open): Delete.
9302         (nto_native_ops): Now an nto_procfs_target_native.
9303         (init_procfs_targets): Adjust to C++ification.
9304         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9305         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9306         Refactor as methods of nto_procfs_target.
9307
9308         * go32-nat.c (go32_nat_target): New class.
9309         (the_go32_nat_target): New.
9310         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9311         (go32_store_registers, go32_xfer_partial, go32_files_info)
9312         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9313         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9314         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9315         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9316         (go32_target): Delete.
9317         (_initialize_go32_nat): Adjust to C++ification.
9318
9319         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9320         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9321         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9322         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9323         gnu_nat_target.
9324         (gnu_target): Delete.
9325         * gnu-nat.h (gnu_target): Delete.
9326         (gnu_nat_target): New class.
9327         * i386-gnu-nat.c (gnu_base_target): New.
9328         (i386_gnu_nat_target): New class.
9329         (the_i386_gnu_nat_target): New.
9330         (_initialize_i386gnu_nat): Adjust to C++ification.
9331
9332 2018-05-02  Pedro Alves  <palves@redhat.com>
9333
9334         * bfd-target.c (target_bfd_xclose): Rename to ...
9335         (target_bfd_close): ... this.
9336         (target_bfd_reopen): Adjust.
9337         * target.c (target_close): Remove references to to_xclose.
9338         * target.h (target_ops::to_xclose): Delete.
9339         (target_ops::to_close): Update comments.
9340
9341 2018-05-02  Pedro Alves  <palves@redhat.com>
9342
9343         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9344         "linux-nat.h".
9345         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9346         * inf-ptrace.c (inf_ptrace_register_u_offset)
9347         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9348         (inf_ptrace_store_register, inf_ptrace_store_registers)
9349         (inf_ptrace_trad_target): Move to ...
9350         * linux-nat-trad.c: ... this new file.
9351         * linux-nat-trad.h: New file.
9352         * linux-nat.c (linux_target_install_ops): Make extern.
9353         (linux_trad_target): Delete.
9354         * linux-nat.h (linux_trad_target): Delete declaration.
9355         (linux_target_install_ops): Declare.
9356         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9357         "linux-nat.h".
9358
9359 2018-05-02  Pedro Alves  <palves@redhat.com>
9360
9361         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9362         procfs_target/add_target here.
9363         * procfs.c (procfs_target): Make static.
9364         (_initialize_procfs): Call add_target here.
9365         * procfs.h (struct target_ops): Remove forward declaration.
9366         (procfs_target): Remove declaration.
9367         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9368
9369 2018-05-02  Pedro Alves  <palves@redhat.com>
9370
9371         * procfs.c (procfs_stopped_by_watchpoint)
9372         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9373         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9374         Forward declare.
9375         (procfs_use_watchpoints): Delete, move contents...
9376         (procfs_target): ... here.
9377         * procfs.h (procfs_use_watchpoints): Delete declaration.
9378         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9379         procfs_use_watchpoints.
9380         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9381         procfs_use_watchpoints.
9382
9383 2018-05-02  Tom Tromey  <tom@tromey.com>
9384
9385         PR python/20084:
9386         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9387         and var_zuinteger_unlimited.
9388         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9389         and PARAM_ZUINTEGER_UNLIMITED.
9390         (set_parameter_value): Handle var_zuinteger and
9391         var_zuinteger_unlimited.
9392         (add_setshow_generic): Likewise.
9393         (parmpy_init): Likewise.
9394
9395 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9396
9397         PR rust/23124
9398         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9399         pointer is not null before dereferencing it.
9400
9401 2018-04-30  Tom Tromey  <tom@tromey.com>
9402
9403         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9404         is_mi_like_p.
9405
9406 2018-04-30  Tom Tromey  <tom@tromey.com>
9407
9408         * breakpoint.c (mention): Remove use of is_mi_like_p.
9409         (print_mention_ranged_breakpoint): Likewise.
9410         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9411         of is_mi_like_p.
9412
9413 2018-04-30  Tom Tromey  <tom@tromey.com>
9414
9415         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9416
9417 2018-04-30  Tom Tromey  <tom@tromey.com>
9418
9419         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9420         (info_spu_event_command): Remove some uses of is_mi_like_p.
9421
9422 2018-04-30  Tom Tromey  <tom@tromey.com>
9423
9424         * python/py-framefilter.c (py_print_single_arg)
9425         (enumerate_locals, py_print_args, py_print_frame): Remove some
9426         uses of is_mi_like_p.
9427
9428 2018-04-30  Tom Tromey  <tom@tromey.com>
9429
9430         * ui-out.c: Update.
9431         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9432         * ui-out.h (ui_out::is_mi_like_p): Now const.
9433         (ui_out::do_is_mi_like_p): Now const.
9434         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9435
9436 2018-04-30  Tom Tromey  <tom@tromey.com>
9437
9438         * varobj.c (varobj_set_visualizer): Use new_reference.
9439         * python/python.c (gdbpy_decode_line): Use new_reference.
9440         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9441         new_reference.
9442
9443 2018-04-30  Tom Tromey  <tom@tromey.com>
9444
9445         * varobj.c (install_new_value): Use new_reference.
9446         * value.h (value_incref): Return void.  Swap intro comment with
9447         value_decref.
9448         * value.c (set_value_parent): Use new_reference.
9449         (value_incref): Return void.  Update intro comment.
9450         (release_value): Use new_reference.
9451         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9452
9453 2018-04-30  Tom Tromey  <tom@tromey.com>
9454
9455         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9456         * gdb_bfd.h (new_bfd_ref): Remove.
9457         (gdb_bfd_open): Update comment.
9458         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9459         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9460         (gdb_bfd_fdopenr): Use new_reference.
9461         * exec.c (exec_file_attach): Use new_reference.
9462
9463 2018-04-30  Tom Tromey  <tom@tromey.com>
9464
9465         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9466         method.
9467
9468 2018-04-30  Tom Tromey  <tom@tromey.com>
9469
9470         * jit.c (jit_read_code_entry): Use type_align.
9471         * i386-tdep.c (i386_gdbarch_init): Don't call
9472         set_gdbarch_long_long_align_bit.
9473         * gdbarch.sh: Remove long_long_align_bit.
9474         * gdbarch.c, gdbarch.h: Rebuild.
9475         * arc-tdep.c (arc_type_align): New function.
9476         (arc_gdbarch_init): Use arc_type_align.  Don't call
9477         set_gdbarch_long_long_align_bit.
9478
9479 2018-04-30  Tom Tromey  <tom@tromey.com>
9480
9481         * rust-lang.c (rust_type_alignment): Remove.
9482         (rust_composite_type): Use type_align.
9483
9484 2018-04-30  Tom Tromey  <tom@tromey.com>
9485
9486         * NEWS: Mention Type.align.
9487         * python/py-type.c (typy_get_alignof): New function.
9488         (type_object_getset): Add "alignof".
9489
9490 2018-04-30  Tom Tromey  <tom@tromey.com>
9491
9492         PR exp/17095:
9493         * NEWS: Update.
9494         * std-operator.def (UNOP_ALIGNOF): New operator.
9495         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9496         New.
9497         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9498         * c-lang.c (c_op_print_tab): Add alignof.
9499         * c-exp.y (ALIGNOF): New token.
9500         (exp): Add "ALIGNOF" production.
9501         (ident_tokens): Add _Alignof and alignof.
9502
9503 2018-04-30  Tom Tromey  <tom@tromey.com>
9504
9505         * i386-tdep.c (i386_type_align): New function.
9506         (i386_gdbarch_init): Update.
9507         * gdbarch.sh (type_align): New method.
9508         * gdbarch.c, gdbarch.h: Rebuild.
9509         * arch-utils.h (default_type_align): Declare.
9510         * arch-utils.c (default_type_align): New function.
9511         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9512         (struct type) <align_log2>: New field.
9513         <instance_flags>: Now a bitfield.
9514         (TYPE_RAW_ALIGN): New macro.
9515         (type_align, type_raw_align, set_type_align): Declare.
9516         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9517         functions.
9518         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9519         (get_alignment, maybe_set_alignment): New functions.
9520         (read_structure_type, read_enumeration_type, read_array_type)
9521         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9522         (read_subrange_type, read_base_type): Set type alignment.
9523
9524 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9525
9526         * dwarf2read.c (read_index_from_section): Use bool.
9527
9528 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9529
9530         PR gdb/22950
9531         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9532         with #ifdef.
9533
9534 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9535
9536         PR build/22873
9537         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9538         last step, and do it atomically.
9539
9540 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9541
9542         * compile/compile-c-types.c (convert_int, convert_float):
9543         Update for C FE v1.
9544
9545 2018-04-27  Tom Tromey  <tom@tromey.com>
9546
9547         PR rust/22545:
9548         * rust-lang.c (rust_inclusive_range_type_p): New function.
9549         (rust_range): Handle inclusive ranges.
9550         (rust_compute_range): Likewise.
9551         * rust-exp.y (struct rust_op) <inclusive>: New field.
9552         (DOTDOTEQ): New constant.
9553         (range_expr): Add "..=" productions.
9554         (operator_tokens): Add "..=" token.
9555         (ast_range): Add "inclusive" parameter.
9556         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9557         ranges.
9558         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9559         bounds values.
9560         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9561         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9562         Update comments.
9563         * expprint.c (print_subexp_standard): Handle new bounds values.
9564         (dump_subexp_body_standard): Likewise.
9565
9566 2018-04-27  Tom Tromey  <tom@tromey.com>
9567
9568         * configure: Rebuild.
9569         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9570         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9571         "OVERRIDE".
9572         (class symbol_needs_eval_context): Likewise.
9573         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9574         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9575         "virtual".
9576         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9577         "override".
9578         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9579         * aarch64-tdep.c (instruction_reader::read): Use "override".
9580         (instruction_reader_test::read): Likewise.
9581         * arm-tdep.c (instruction_reader::read): Use "override".
9582         (instruction_reader_thumb::read): Likewise.
9583
9584 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9585
9586         PR remote/9665
9587         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9588         instead of remote_send.
9589         (remote_send): Remove.
9590
9591 2018-04-26  Pedro Alves  <palves@redhat.com>
9592
9593         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9594         find_function_start_sal instead of find_pc_line.
9595
9596 2018-04-26  Pedro Alves  <palves@redhat.com>
9597
9598         * breakpoint.c (set_breakpoint_location_function): Handle
9599         mst_data_gnu_ifunc.
9600         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9601         * elfread.c (elf_symtab_read): Give data symbols with
9602         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9603         (elf_rel_plt_read): Update comment.
9604         * linespec.c (convert_linespec_to_sals): Handle
9605         mst_data_gnu_ifunc.
9606         (minsym_found): Handle mst_data_gnu_ifunc.
9607         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9608         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9609         * parse.c (find_minsym_type_and_address): Handle
9610         mst_data_gnu_ifunc.
9611         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9612         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9613         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9614         comment.
9615         <mst_data_gnu_ifunc>: New enumerator.
9616
9617 2018-04-26  Pedro Alves  <palves@redhat.com>
9618
9619         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9620         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9621         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9622         Handle it.
9623         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9624         (lookup_minimal_symbol_by_pc): Adjust.
9625         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9626         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9627         * minsyms.h (lookup_msym_prefer): New enum.
9628         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9629         parameter by a lookup_msym_prefer parameter.
9630
9631 2018-04-26  Pedro Alves  <palves@redhat.com>
9632
9633         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9634         ends in "@plt" instead of looking at the symbol's section.
9635
9636 2018-04-26  Pedro Alves  <palves@redhat.com>
9637
9638         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9639         all references.
9640         (find_pc_partial_function_gnu_ifunc): Rename to ...
9641         (find_pc_partial_function): ... this, and remove references to
9642         'is_gnu_ifunc_p'.
9643         (find_pc_partial_function): Delete old implementation.
9644         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9645
9646 2018-04-26  Pedro Alves  <palves@redhat.com>
9647
9648         * linespec.c (struct bound_minimal_symbol_search_key): New.
9649         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9650         skip first line if we found a GNU ifunc minimal symbol by name.
9651         (compare_msymbols): Change parameters to work with a destructured
9652         lhs minsym.
9653         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9654         functions.
9655
9656 2018-04-26  Pedro Alves  <palves@redhat.com>
9657
9658         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9659         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9660         address/name.
9661         (add_location_to_breakpoint): Store the minsym and the objfile in
9662         the breakpoint location.
9663         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9664         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9665         Record the minsym in the sal.
9666         * symtab.h (symtab_and_line) <msymbol>: New field.
9667
9668 2018-04-26  Pedro Alves  <palves@redhat.com>
9669
9670         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9671         unless we actually resolved the ifunc.
9672
9673 2018-04-26  Pedro Alves  <palves@redhat.com>
9674
9675         * c-exp.y (variable production): Prefer ifunc minsyms over
9676         regular function symbols.
9677         * symtab.c (find_gnu_ifunc): New function.
9678         * minsyms.h (lookup_msym_prefer): New enum.
9679         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9680         parameter by a lookup_msym_prefer parameter.
9681         * symtab.h (find_gnu_ifunc): New declaration.
9682
9683 2018-04-26  Pedro Alves  <palves@redhat.com>
9684
9685         * blockframe.c (find_gnu_ifunc_target_type): New function.
9686         (find_function_type): New.
9687         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9688         return a value with a memory address.
9689         (eval_call): For calls to GNU ifunc functions, try to find the
9690         type of the target function from the type that the resolver
9691         returns.
9692         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9693         symbols.
9694         * infcall.c (find_function_return_type): Delete.
9695         (find_function_addr): Add 'function_type' parameter.  For calls to
9696         GNU ifunc functions, try to find the type of the target function
9697         from the type that the resolver returns, and return it via
9698         FUNCTION_TYPE.
9699         (call_function_by_hand_dummy): Adjust to use the function type
9700         returned by find_function_addr.
9701         (find_function_addr): Add 'function_type' parameter and move
9702         description here.
9703         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9704         declarations.
9705
9706 2018-04-26  Pedro Alves  <palves@redhat.com>
9707
9708         * c-exp.y (variable production): Skip finding an alias for ifunc
9709         symbols.
9710
9711 2018-04-26  Pedro Alves  <palves@redhat.com>
9712
9713         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9714
9715 2018-04-25  Pedro Alves  <palves@redhat.com>
9716
9717         * infcmd.c (kill_command): Print the pid as string, not the whole
9718         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9719         message.
9720         * remote.c (remote_detach_1): Print the pid as string, not the
9721         whole thread's ptid.
9722
9723 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9724             Sergio Durigan Junior  <sergiodj@redhat.com>
9725             Pedro Alves  <palves@redhat.com>
9726
9727         * infcmd.c (kill_command): Print message when inferior has
9728         been killed.
9729         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9730         '1'.
9731         (add_inferior): Improve message printed when
9732         'print_inferior_events' is on.
9733         (exit_inferior): Remove message printed when
9734         'print_inferior_events' is on.
9735         (detach_inferior): Improve message printed when
9736         'print_inferior_events' is on.
9737         (initialize_inferiors): Use 'add_inferior_silent' to set
9738         'current_inferior_'.
9739         * inferior.h (print_inferior_events): Declare here as
9740         'extern'.
9741         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9742         '[Detaching...]' messages when 'print_inferior_events' is on.
9743         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9744         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9745         'Detaching after fork from child...', replace it by '... from
9746         parent...'.
9747         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9748         prefix/suffix when printing 'Detaching...' messages.  Print
9749         them when 'print_inferior_events' is on.
9750         * remote.c (remote_detach_1): Print message when detaching
9751         from inferior and '!is_fork_parent'.
9752
9753 2018-04-24  Tom Tromey  <tom@tromey.com>
9754
9755         * cli-out.h: Reindent.
9756
9757 2018-04-24  Tom Tromey  <tom@tromey.com>
9758
9759         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9760         (cli_ui_out::do_field_string): Use fputs_filtered.
9761         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9762
9763 2018-04-23  Tom Tromey  <tom@tromey.com>
9764
9765         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9766         gdb::unique_xmalloc_ptr.
9767
9768 2018-04-23  Tom Tromey  <tom@tromey.com>
9769
9770         * configure: Rebuild.
9771
9772 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9773
9774         PR gdb/23095
9775         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9776         prepare_for_testing.  Set normal_bp to r_debug_state if target
9777         is bsd.
9778
9779 2018-04-21  Pedro Alves  <palves@redhat.com>
9780             Rajendra SY  <rajendra.sy@gmail.com>
9781
9782         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9783         * remote.c (extended_remote_attach): In all-stop mode, mark the
9784         thread as executing.
9785
9786 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9787
9788         * thread.c (thread_apply_all_command): Fix comment.
9789         (thread_command): Fix comment.
9790
9791 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9792
9793         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9794         parameter.
9795         * features/aarch64-core.c (create_feature_aarch64_core):
9796         Regenerate.
9797         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9798         Likewise.
9799         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9800         Likewise.
9801         * features/i386/32bit-avx512.c
9802         (create_feature_i386_32bit_avx512): Likewise.
9803         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9804         Likewise.
9805         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9806         Likewise.
9807         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9808         Likewise.
9809         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9810         Likewise.
9811         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9812         Likewise.
9813         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9814         Likewise.
9815         * features/i386/64bit-avx512.c
9816         (create_feature_i386_64bit_avx512): Likewise.
9817         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9818         Likewise.
9819         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9820         Likewise.
9821         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9822         Likewise.
9823         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9824         Likewise.
9825         * features/i386/64bit-segments.c
9826         (create_feature_i386_64bit_segments): Likewise.
9827         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9828         Likewise.
9829         * features/i386/x32-core.c
9830         (create_feature_i386_x32_core): Likewise.
9831         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9832         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9833         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9834         * target-descriptions.c: In generated code, don't pass xml
9835         filename.
9836
9837 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9838
9839         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9840         (print_xml_feature::visit_post): Likewise.
9841         (print_xml_feature::visit): Likewise.
9842         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9843         (print_xml_feature): Add new class.
9844         * regformats/regdat.sh: Null xmltarget on feature targets.
9845         * target-descriptions.c (struct target_desc): Add xmltarget.
9846         (maintenance_check_tdesc_xml_convert): Add unittest function.
9847         (tdesc_get_features_xml): Add function to get xml.
9848         (maintenance_check_xml_descriptions): Test xml generation.
9849         * xml-tdesc.c (string_read_description_xml): Add function.
9850         * xml-tdesc.h (string_read_description_xml): Add declaration.
9851
9852 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9853
9854         * features/Makefile: Add feature marker to targets with new style
9855         target descriptions.
9856         * regformats/aarch64.dat: Regenerate.
9857         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9858         * regformats/i386/amd64-avx-linux.dat: Likewise.
9859         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9860         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9861         * regformats/i386/amd64-linux.dat: Likewise.
9862         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9863         * regformats/i386/amd64.dat: Likewise.
9864         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9865         * regformats/i386/i386-avx-linux.dat: Likewise.
9866         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9867         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9868         * regformats/i386/i386-linux.dat: Likewise.
9869         * regformats/i386/i386-mmx-linux.dat: Likewise.
9870         * regformats/i386/i386-mpx-linux.dat: Likewise.
9871         * regformats/i386/i386.dat: Likewise.
9872         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9873         * regformats/i386/x32-avx-linux.dat: Likewise.
9874         * regformats/i386/x32-linux.dat: Likewise.
9875         * regformats/tic6x-c62x-linux.dat: Likewise.
9876         * regformats/tic6x-c64x-linux.dat: Likewise.
9877         * regformats/tic6x-c64xp-linux.dat: Likewise.
9878         * regformats/regdat.sh: Parse feature marker.
9879
9880 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9881
9882         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9883         (tdesc_osabi_name): Likewise.
9884         * target-descriptions.c (tdesc_architecture_name): Add new
9885         function.
9886         (tdesc_osabi_name): Likewise.
9887
9888 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9889
9890         * common/tdesc.c (tdesc_predefined_type): Move to here.
9891         (tdesc_named_type): Likewise.
9892         (tdesc_create_vector): Likewise.
9893         (tdesc_create_struct): Likewise.
9894         (tdesc_set_struct_size): Likewise.
9895         (tdesc_create_union): Likewise.
9896         (tdesc_create_flags): Likewise.
9897         (tdesc_create_enum): Likewise.
9898         (tdesc_add_field): Likewise.
9899         (tdesc_add_typed_bitfield): Likewise.
9900         (tdesc_add_bitfield): Likewise.
9901         (tdesc_add_flag): Likewise.
9902         (tdesc_add_enum_value): Likewise.
9903         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9904         (struct tdesc_type_vector): Likewise.
9905         (struct tdesc_type_field): Likewise.
9906         (struct tdesc_type_with_fields): Likewise.
9907         (tdesc_create_enum): Add declaration.
9908         (tdesc_add_typed_bitfield): Likewise.
9909         (tdesc_add_enum_value): Likewise.
9910         * target-descriptions.c (tdesc_type_field): Move from here.
9911         (tdesc_type_builtin): Likewise.
9912         (tdesc_type_vector): Likewise.
9913         (tdesc_type_with_fields): Likewise.
9914         (tdesc_predefined_types): Likewise.
9915         (tdesc_named_type): Likewise.
9916         (tdesc_create_vector): Likewise.
9917         (tdesc_create_struct): Likewise.
9918         (tdesc_set_struct_size): Likewise.
9919         (tdesc_create_union): Likewise.
9920         (tdesc_create_flags): Likewise.
9921         (tdesc_create_enum): Likewise.
9922         (tdesc_add_field): Likewise.
9923         (tdesc_add_typed_bitfield): Likewise.
9924         (tdesc_add_bitfield): Likewise.
9925         (tdesc_add_flag): Likewise.
9926         (tdesc_add_enum_value): Likewise.
9927         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9928         (tdesc_add_typed_bitfield): Likewise.
9929         (tdesc_add_enum_value): Likewise.
9930
9931 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9932
9933         * common/tdesc.c (tdesc_feature::accept): Move to here.
9934         (tdesc_feature::operator==): Likewise.
9935         (tdesc_create_reg): Likewise.
9936         * common/tdesc.h (tdesc_type_kind): Likewise.
9937         (struct tdesc_type): Likewise.
9938         (struct tdesc_feature): Likewise.
9939         * regformats/regdat.sh: Create a feature.
9940         * target-descriptions.c (tdesc_type_kind): Move from here.
9941         (tdesc_type): Likewise.
9942         (tdesc_type_up): Likewise.
9943         (tdesc_feature): Likewise.
9944         (tdesc_create_reg): Likewise.
9945
9946 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9947
9948         * Makefile.in: Add arch/tdesc.c
9949         * common/tdesc.c: New file.
9950         * common/tdesc.h (tdesc_element_visitor): Move to here.
9951         (tdesc_element): Likewise.
9952         (tdesc_reg): Likewise.
9953         (tdesc_reg_up): Likewise.
9954         * regformats/regdef.h (reg): Add offset to constructors.
9955         * target-descriptions.c (tdesc_element_visitor): Move from here.
9956         (tdesc_element): Likewise.
9957         (tdesc_reg): Likewise.
9958         (tdesc_reg_up): Likewise.
9959
9960 2018-04-17  Tom Tromey  <tom@tromey.com>
9961
9962         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9963         discriminant field.
9964
9965 2018-04-17  Tom Tromey  <tom@tromey.com>
9966
9967         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9968
9969 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9970
9971         * symtab.c (print_symbol_info): Skip printing filename and line
9972         number when `last' is NULL.
9973         (symtab_symbol_info): Use empty string instead of NULL for first
9974         invocation of print_symbol_info.
9975         (rbreak_command): Pass NULL to `last' parameter of
9976         print_symbol_info.
9977
9978 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9979
9980         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9981         instead of nullptr.
9982
9983 2018-04-16  Pedro Alves  <palves@redhat.com>
9984
9985         * MAINTAINERS (sh): Remove.
9986         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9987         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9988         (ALLDEPFILES): Remove sh64-tdep.c.
9989         * NEWS: Mentions that support for SH-5/SH64 is removed.
9990         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9991         (sh*-*-openbsd*): Ditto.
9992         (sh64-*-elf*): Remove.
9993         (sh*): Remove.
9994         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9995         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9996         * sh-tdep.c: No longer include "sh64-tdep.h".
9997         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9998         * sh64-tdep.c, sh64-tdep.h: Remove files.
9999
10000 2018-04-16  Pedro Alves  <palves@redhat.com>
10001
10002         * MAINTAINERS: Remove m88k.
10003         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
10004         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
10005         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
10006         * NEWS: Mention that support for m88k was removed.
10007         * configure.host (m88*-*-*): Remove support.
10008         * configure.nat (m88k-*-*): Remove support.
10009         * configure.tgt (m88*-*-openbsd*): Remove.
10010         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
10011
10012 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
10013
10014         * configure.tgt (x86_tobjs): New variable.
10015         (amd64_tobjs, i386_tobjs): Use it.
10016
10017 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10018
10019         * symtab.c (print_symbol_info): Precede the symbol definition by
10020         the line number when available.
10021         * NEWS: Advertise this enhancement.
10022
10023 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10024
10025         * NEWS (New options): announce set/show record btrace cpu.
10026         * btrace.c: Include record-btrace.h.
10027         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
10028         the vendor is unknown.
10029         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
10030         Maybe overwrite the btrace configuration's cpu.
10031         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
10032         (btrace_fetch): Add cpu parameter.  Update callers.
10033         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
10034         Maybe overwrite the btrace configuration's cpu.  Skip enabling
10035         errata workarounds if the vendor is unknown.
10036         * python/py-record-btrace.c: Include record-btrace.h.
10037         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
10038         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
10039         * record-btrace.c (record_btrace_cpu_state_kind): New.
10040         (record_btrace_cpu): New.
10041         (set_record_btrace_cpu_cmdlist): New.
10042         (record_btrace_get_cpu): New.
10043         (require_btrace_thread, record_btrace_info)
10044         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10045         (cmd_set_record_btrace_cpu_none): New.
10046         (cmd_set_record_btrace_cpu_auto): New.
10047         (cmd_set_record_btrace_cpu): New.
10048         (cmd_show_record_btrace_cpu): New.
10049         (_initialize_record_btrace): Initialize set/show record btrace cpu
10050         commands.
10051         * record-btrace.h (record_btrace_get_cpu): New.
10052
10053 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10054
10055         * record.c (set_record_command): Fix typo in message.
10056
10057 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10058
10059         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10060
10061 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10062
10063         * infrun.c (process_event_stop_test): Call
10064         gdbarch_in_indirect_branch_thunk.
10065         * gdbarch.sh (in_indirect_branch_thunk): New.
10066         * gdbarch.c: Regenerated.
10067         * gdbarch.h: Regenerated.
10068         * x86-tdep.h: New.
10069         * x86-tdep.c: New.
10070         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10071         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10072         (ALLDEPFILES): Add x86-tdep.c.
10073         * arch-utils.h (default_in_indirect_branch_thunk): New.
10074         * arch-utils.c (default_in_indirect_branch_thunk): New.
10075         * i386-tdep: Include x86-tdep.h.
10076         (i386_in_indirect_branch_thunk): New.
10077         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10078         function.
10079         * amd64-tdep: Include x86-tdep.h.
10080         (amd64_in_indirect_branch_thunk): New.
10081         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10082
10083 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10084
10085         PR gdb/23053
10086         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10087         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10088         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10089         regression.
10090
10091 2018-04-12  Tom Tromey  <tom@tromey.com>
10092
10093         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10094         (rust_evaluate_subexp): Likewise.
10095
10096 2018-04-12  Pedro Alves  <palves@redhat.com>
10097
10098         * procfs.c (procfs_detach): Make forward declaration's prototype
10099         match definition's protototype.
10100         (proc_get_LDT_entry): Remove stale do_cleanups call.
10101
10102 2018-04-12  Pedro Alves  <palves@redhat.com>
10103
10104         * target.h (target_ops::to_has_exited): Delete.
10105         (target_has_exited): Delete.
10106         * target-delegates.c: Regenerate.
10107
10108 2018-04-11  Pedro Alves  <palves@redhat.com>
10109
10110         * target.c (fileio_fh_t::t): Add comment.
10111         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10112         (target_fileio_close): Handle a NULL target.
10113         (invalidate_fileio_fh): New.
10114         (target_close): Call it.
10115         * remote.c (remote_hostio_send_command): No longer check whether
10116         remote_desc is open.
10117
10118 2018-04-11  Pedro Alves  <palves@redhat.com>
10119
10120         * target.c (fileio_fh_t): Make it a named struct instead of a
10121         typedef.
10122         (fileio_fh_t::is_closed): New method.
10123         (DEF_VEC_O (fileio_fh_t)): Remove.
10124         (fileio_fhandles): Now a std::vector.
10125         (is_closed_fileio_fh): Delete.
10126         (acquire_fileio_fd): Adjust.  Rename parameters.
10127         (release_fileio_fd): Adjust.
10128         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10129         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10130         (target_fileio_close): Adjust.
10131
10132 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10133
10134         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10135         index.
10136
10137 2018-04-10  Pedro Alves  <palves@redhat.com>
10138
10139         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10140         (scoped_finish_thread_state): New class.
10141         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10142         cleanup.
10143         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10144         (fetch_inferior_event, normal_stop): Likewise.
10145         * thread.c (finish_thread_state_cleanup): Delete.
10146
10147 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10148             Pedro Alves  <palves@redhat.com>
10149
10150         * value.c: Include "selftest.h" and "common/array-view.h".
10151         (struct range) <operator ==>: New.
10152         (test_ranges_contain): New.
10153         (check_ranges_vector): New.
10154         (test_insert_into_bit_range_vector): New.
10155         (_initialize_values): Register selftests.
10156         * common/array-view.h (operator==, operator!=): New.
10157
10158 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10159
10160         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10161         an iterator.
10162         * inline-frame.c: Include <algorithm>.
10163         (struct inline_state): Add constructor.
10164         (inline_state_s): Remove.
10165         (DEF_VEC_O(inline_state_s)): Remove.
10166         (inline_states): Change type to std::vector.
10167         (find_inline_frame_state): Adjust to std::vector.
10168         (allocate_inline_frame_state): Remove.
10169         (clear_inline_frame_state): Adjust to std::vector.
10170         (skip_inline_frames): Adjust to std::vector.
10171
10172 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10173
10174         * tracepoint.h (struct trace_state_variable): Add constructor.
10175         <name>: Change type to std::string.
10176         * tracepoint.c (tsv_s): Remove.
10177         (DEF_VEC_O(tsv_s)): Remove.
10178         (tvariables): Change to std::vector.
10179         (create_trace_state_variable): Adjust to std::vector.
10180         (find_trace_state_variable): Likewise.
10181         (find_trace_state_variable_by_number): Likewise.
10182         (delete_trace_state_variable): Likewise.
10183         (trace_variable_command): Adjust to std::string.
10184         (delete_trace_variable_command): Likewise.
10185         (tvariables_info_1): Adjust to std::vector.
10186         (save_trace_state_variables): Likewise.
10187         (start_tracing): Likewise.
10188         (merge_uploaded_trace_state_variables): Adjust to std::vector
10189         and std::string.
10190         * target.h (struct target_ops)
10191         <to_download_trace_state_variable>: Pass reference to
10192         trace_state_variable.
10193         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10194         * target-delegates.c: Re-generate.
10195         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10196         (mi_tsv_deleted): Likewise.
10197         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10198         * remote.c (remote_download_trace_state_variable): Change
10199         pointer to reference and adjust.
10200         * make-target-delegates (parse_argtypes): Handle references.
10201         (write_function_header): Likewise.
10202         (munge_type): Likewise.
10203
10204 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10205
10206         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10207         string_view-selftests.c.
10208         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10209         testsuite.
10210         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10211         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10212         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10213         * unittests/basic_string_view/element_access/char/1.cc:
10214         Likewise.
10215         * unittests/basic_string_view/element_access/char/empty.cc:
10216         Likewise.
10217         * unittests/basic_string_view/element_access/char/front_back.cc:
10218         Likewise.
10219         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10220         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10221         Likewise.
10222         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10223         Likewise.
10224         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10225         Likewise.
10226         * unittests/basic_string_view/operations/compare/char/1.cc:
10227         Likewise.
10228         * unittests/basic_string_view/operations/compare/char/13650.cc:
10229         Likewise.
10230         * unittests/basic_string_view/operations/copy/char/1.cc:
10231         Likewise.
10232         * unittests/basic_string_view/operations/data/char/1.cc:
10233         Likewise.
10234         * unittests/basic_string_view/operations/find/char/1.cc:
10235         Likewise.
10236         * unittests/basic_string_view/operations/find/char/2.cc:
10237         Likewise.
10238         * unittests/basic_string_view/operations/find/char/3.cc:
10239         Likewise.
10240         * unittests/basic_string_view/operations/find/char/4.cc:
10241         Likewise.
10242         * unittests/basic_string_view/operations/rfind/char/1.cc:
10243         Likewise.
10244         * unittests/basic_string_view/operations/rfind/char/2.cc:
10245         Likewise.
10246         * unittests/basic_string_view/operations/rfind/char/3.cc:
10247         Likewise.
10248         * unittests/basic_string_view/operations/substr/char/1.cc:
10249         Likewise.
10250         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10251         * unittests/string_view-selftests.c: New file.
10252
10253 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10254
10255         * unittests/basic_string_view/capacity/1.cc: New file.
10256         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10257         * unittests/basic_string_view/cons/char/1.cc: New file.
10258         * unittests/basic_string_view/cons/char/2.cc: New file.
10259         * unittests/basic_string_view/cons/char/3.cc: New file.
10260         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10261         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10262         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10263         * unittests/basic_string_view/element_access/char/1.cc: New file.
10264         * unittests/basic_string_view/element_access/char/2.cc: New file.
10265         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10266         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10267         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10268         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10269         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10270         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10271         * unittests/basic_string_view/include.cc: New file.
10272         * unittests/basic_string_view/inserters/char/1.cc: New file.
10273         * unittests/basic_string_view/inserters/char/2.cc: New file.
10274         * unittests/basic_string_view/inserters/char/3.cc: New file.
10275         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10276         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10277         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10278         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10279         * unittests/basic_string_view/literals/types.cc: New file.
10280         * unittests/basic_string_view/literals/values.cc: New file.
10281         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10282         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10283         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10284         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10285         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10286         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10287         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10288         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10289         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10290         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10291         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10292         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10293         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10294         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10295         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10296         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10297         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10298         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10299         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10300         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10301         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10302         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10303         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10304         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10305         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10306         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10307         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10308         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10309         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10310         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10311         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10312         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10313         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10314         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10315         * unittests/basic_string_view/operators/char/2.cc: New file.
10316         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10317         * unittests/basic_string_view/range_access/char/1.cc: New file.
10318         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10319         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10320         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10321         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10322         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10323         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10324         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10325         * unittests/basic_string_view/typedefs.cc: New file.
10326         * unittests/basic_string_view/types/1.cc: New file.
10327
10328 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10329
10330         * common/gdb_string_view.h: Remove libstdc++ implementation
10331         details, adjust to gdb reality.
10332         * common/gdb_string_view.tcc: Likewise.
10333         * cli/cli-script.c (struct string_view): Remove.
10334         (user_args) <m_args>: Change element type to gdb::string_view.
10335         (user_args::insert_args): Adjust.
10336
10337 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10338
10339         * common/gdb_string_view.h: New file.
10340         * common/gdb_string_view.tcc: New file.
10341
10342 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10343
10344         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10345         * configure: Re-generate.
10346
10347 2018-04-09  Pedro Alves  <palves@redhat.com>
10348
10349         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10350         (set_target_gdbarch): Call
10351         gdb::observers::architecture_changed.notify instead of
10352         observer_notify_architecture_changed.
10353
10354 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10355
10356         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10357         (do_restore_current_traceframe_cleanup): Remove.
10358         (restore_current_traceframe_cleanup_dtor): Remove.
10359         (make_cleanup_restore_current_traceframe): Remove.
10360         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10361         New.
10362         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10363         * infrun.c (fetch_inferior_event): Use
10364         scoped_restore_current_traceframe.
10365
10366 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10367
10368         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10369         Remove.
10370         <n_allocated_type_units>: Remove.
10371         <all_type_units>: Change to std::vector.
10372         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10373         to std::vector change.
10374         (dwarf2_per_objfile::get_cutu): Likewise.
10375         (dwarf2_per_objfile::get_tu): Likewise.
10376         (create_signatured_type_table_from_index): Likewise.
10377         (create_signatured_type_table_from_debug_names): Likewise.
10378         (dw2_symtab_iter_next): Likewise.
10379         (dw2_print_stats): Likewise.
10380         (dw2_expand_all_symtabs): Likewise.
10381         (dw2_expand_marked_cus): Likewise.
10382         (dw2_debug_names_iterator::next): Likewise.
10383         (dwarf2_initialize_objfile): Likewise.
10384         (add_signatured_type_cu_to_table): Likewise.
10385         (create_all_type_units): Likewise.
10386         (add_type_unit): Likewise.
10387         (struct tu_abbrev_offset): Add constructor.
10388         (build_type_psymtabs_1): Adjust to std::vector change.
10389         (print_tu_stats): Likewise.
10390         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10391         (write_debug_names): Likewise.
10392
10393 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10394
10395         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10396         Make an std::vector.
10397         <n_comp_units>: Remove.
10398         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10399         to std::vector change.
10400         (dwarf2_per_objfile::get_cutu): Likewise.
10401         (dwarf2_per_objfile::get_cu): Likewise.
10402         (create_cus_from_index): Likewise.
10403         (create_addrmap_from_index): Likewise.
10404         (create_addrmap_from_aranges): Likewise.
10405         (dwarf2_read_index): Likewise.
10406         (dw2_find_last_source_symtab): Likewise.
10407         (dw2_map_symtabs_matching_filename): Likewise.
10408         (dw2_symtab_iter_next): Likewise.
10409         (dw2_print_stats): Likewise.
10410         (dw2_expand_all_symtabs): Likewise.
10411         (dw2_expand_symtabs_with_fullname): Likewise.
10412         (dw2_expand_marked_cus): Likewise.
10413         (dw2_map_symbol_filenames): Likewise.
10414         (create_cus_from_debug_names): Likewise.
10415         (dwarf2_read_debug_names): Likewise.
10416         (dw2_debug_names_iterator::next): Likewise.
10417         (dwarf2_initialize_objfile): Likewise.
10418         (set_partial_user): Likewise.
10419         (dwarf2_build_psymtabs_hard): Likewise.
10420         (read_comp_units_from_section): Remove arguments, adjust to
10421         std::vector change.
10422         (create_all_comp_units): Adjust to std::vector and
10423         read_comp_units_from_section changes.
10424         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10425         change.
10426         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10427         (psyms_seen_size): Likewise.
10428         (write_gdbindex): Likewise.
10429         (write_debug_names): Likewise.
10430
10431 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10432
10433         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10434         with dwarf2_per_objfile.
10435         (create_cus_from_index): Likewise.
10436         (create_signatured_type_table_from_index): Likewise.
10437         (dwarf2_read_index): Likewise.
10438         (dwarf2_initialize_objfile): Likewise.
10439         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10440         per_cu rather than get_dwarf2_per_objfile.
10441
10442 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10443
10444         * dwarf2read.h (struct signatured_type): Forward declare.
10445         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10446         New methods.
10447         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10448         (dw2_get_cutu): ...this.
10449         (dwarf2_per_objfile::get_cu): Rename from...
10450         (dw2_get_cu): ...this.
10451         (dwarf2_per_objfile::get_tu): New.
10452         (create_addrmap_from_index): Adjust.
10453         (create_addrmap_from_aranges): Adjust.
10454         (dw2_find_last_source_symtab): Adjust.
10455         (dw2_map_symtabs_matching_filename): Adjust.
10456         (dw2_symtab_iter_next): Adjust.
10457         (dw2_print_stats): Adjust.
10458         (dw2_expand_all_symtabs): Adjust.
10459         (dw2_expand_symtabs_with_fullname): Adjust.
10460         (dw2_expand_marked_cus): Adjust.
10461         (dw_expand_symtabs_matching_file_matcher): Adjust.
10462         (dw2_map_symbol_filenames): Adjust.
10463         (dw2_debug_names_iterator::next): Adjust.
10464         (dwarf2_initialize_objfile): Adjust.
10465         (set_partial_user): Adjust.
10466         (dwarf2_build_psymtabs_hard): Adjust.
10467
10468 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10469
10470         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10471         Remove unused variables.
10472         (dw2_map_symtabs_matching_filename): Likewise.
10473         (dwarf2_record_block_ranges): Likewise.
10474         (dwarf2_read_addr_index): Likewise.
10475         (follow_die_offset): Likewise.
10476
10477 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10478
10479         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10480         to symbol_file_add_main.
10481
10482 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10483
10484         PR mi/22299
10485         * mi/mi-console.c (do_fputc_async_safe): New.
10486         (mi_console_file::write_async_safe): New.
10487         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10488         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10489         New.
10490         * ui-file.c (ui_file::putstrn): Adjust call to
10491         fputstrn_unfiltered.
10492         * utils.c (printchar): Replace do_fputs and do_fprintf
10493         parameters by do_fputc.
10494         (fputstr_filtered): Adjust call to printchar.
10495         (fputstr_unfiltered): Likewise.
10496         (fputstrn_filtered): Likewise.
10497         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10498         printchar.
10499         * utils.h (do_fputc_ftype): New typedef.
10500         (fputstrn_unfiltered): Add do_fputc parameter.
10501
10502 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10503
10504         * regformats/i386/i386-avx.dat: Remove.
10505
10506 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10507
10508         PR gdb/22979
10509         * amd64-tdep.c (amd64_none_init_abi): New function.
10510         (amd64_x32_none_init_abi): New function.
10511         (_initialize_amd64_tdep): Register handlers for x86-64 and
10512         x64_32 with GDB_OSABI_NONE.
10513         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10514         GDB_OSABI_NONE osabi.
10515
10516 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10517
10518         PR gdb/22980
10519         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10520         GDB_OSABI_NONE.
10521         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10522         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10523
10524 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10525
10526         * common/byte-vector.h (char_vector): New type.
10527         * target.h (target_read_alloc): Return
10528         gdb::optional<byte_vector>.
10529         (target_read_stralloc): Return gdb::optional<char_vector>.
10530         (target_get_osdata): Return gdb::optional<char_vector>.
10531         * target.c (target_read_alloc_1): Templatize.  Replacement
10532         manual memory management with vector.
10533         (target_read_alloc): Change return type, adjust.
10534         (target_read_stralloc): Change return type, adjust.
10535         (target_get_osdata): Change return type, adjust.
10536         * auxv.c (struct auxv_info) <length>: Remove.
10537         <data>: Change type to gdb::optional<byte_vector>.
10538         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10539         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10540         (target_auxv_search): Adjust.
10541         (fprint_target_auxv): Adjust.
10542         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10543         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10544         (linux_make_corefile_notes): Adjust.
10545         * osdata.c (get_osdata): Adjust.
10546         * remote.c (remote_get_threads_with_qxfer): Adjust.
10547         (remote_memory_map): Adjust.
10548         (remote_traceframe_info): Adjust.
10549         (btrace_read_config): Adjust.
10550         (remote_read_btrace): Adjust.
10551         (remote_pid_to_exec_file): Adjust.
10552         * solib-aix.c (solib_aix_get_library_list): Adjust.
10553         * solib-dsbt.c (decode_loadmap): Don't free buf.
10554         (dsbt_get_initial_loadmaps): Adjust.
10555         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10556         * solib-target.c (solib_target_current_sos): Adjust.
10557         * tracepoint.c (sdata_make_value): Adjust.
10558         * xml-support.c (xinclude_start_include): Adjust.
10559         (xml_fetch_content_from_file): Adjust.
10560         * xml-support.h (xml_fetch_another): Change return type.
10561         (xml_fetch_content_from_file): Change return type.
10562         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10563         * xml-tdesc.c (file_read_description_xml): Adjust.
10564         (fetch_available_features_from_target): Change return type.
10565         (target_fetch_description_xml): Adjust.
10566         (target_read_description_xml): Adjust.
10567
10568 2018-04-06  Tom Tromey  <tom@tromey.com>
10569
10570         * value.c (~value): Update.
10571         (struct value) <contents>: Now unique_xmalloc_ptr.
10572         (value_contents_bits_eq, allocate_value_contents)
10573         (value_contents_raw, value_contents_all_raw)
10574         (value_contents_for_printing, value_contents_for_printing_const)
10575         (set_value_enclosing_type): Update.
10576
10577 2018-04-06  Tom Tromey  <tom@tromey.com>
10578
10579         * value.c (range_s): Remove typedef, VEC.
10580         (struct range): Add operator<.
10581         (range_lessthan): Remove.
10582         (ranges_contain): Change type.
10583         (~value): Update.
10584         (struct value) <unavailable, optimized_out>: Now std::vector.
10585         (value_entirely_available)
10586         (value_entirely_covered_by_range_vector)
10587         (value_entirely_unavailable, value_entirely_optimized_out):
10588         Update.
10589         (insert_into_bit_range_vector): Change argument type.
10590         (find_first_range_overlap): Likewise.
10591         (struct ranges_and_idx, value_contents_bits_eq)
10592         (require_not_optimized_out, require_available): Update.
10593         (ranges_copy_adjusted): Change argument types.
10594         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10595
10596 2018-04-06  Tom Tromey  <tom@tromey.com>
10597
10598         * value.c (~value): Update.
10599         (struct value) <parent>: Now a value_ref_ptr.
10600         (value_parent, set_value_parent, value_address, value_copy):
10601         Update.
10602
10603 2018-04-06  Tom Tromey  <tom@tromey.com>
10604
10605         * value.c (struct value): Add constructor, destructor, and member
10606         initializers.
10607         (allocate_value_lazy, value_decref): Update.
10608
10609 2018-04-06  Tom Tromey  <tom@tromey.com>
10610
10611         * value.c (struct value) <released, next>: Remove.
10612         (all_values): Now a std::vector.
10613         (allocate_value_lazy): Update.
10614         (value_next): Remove.
10615         (value_mark, value_free_to_mark, release_value)
10616         (value_release_to_mark): Update.
10617
10618 2018-04-06  Tom Tromey  <tom@tromey.com>
10619
10620         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10621         (free_value_chain): Remove.
10622         * value.c (free_value_chain): Remove.
10623         (value_release_to_mark): Return a std::vector.
10624         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10625         std::vector.
10626         (check_condition): Update.
10627         * eval.c (fetch_subexp_value): Change "val_chain" to a
10628         std::vector.
10629         * breakpoint.c (update_watchpoint): Update.
10630         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10631
10632 2018-04-06  Tom Tromey  <tom@tromey.com>
10633
10634         * value.h (free_all_values): Remove.
10635         * value.c (free_all_values): Remove.
10636
10637 2018-04-06  Tom Tromey  <tom@tromey.com>
10638
10639         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10640         (value_history_chain, value_history_count): Remove.
10641         (value_history): New global.
10642         (record_latest_value, access_value_history, show_values)
10643         (preserve_values): Update.
10644
10645 2018-04-06  Tom Tromey  <tom@tromey.com>
10646
10647         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10648         * varobj.c (varobj_set_display_format, varobj_set_value)
10649         (install_default_visualizer, construct_visualizer)
10650         (install_new_value, ~varobj, varobj_get_value_type)
10651         (my_value_of_variable, varobj_editable_p): Update.
10652         * c-varobj.c (c_describe_child, c_value_of_variable)
10653         (cplus_number_of_children, cplus_describe_child): Update.
10654         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10655         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10656         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10657
10658 2018-04-06  Tom Tromey  <tom@tromey.com>
10659
10660         * printcmd.c (last_examine_address): Change type to
10661         value_ref_ptr.
10662         (do_examine, x_command): Update.
10663
10664 2018-04-06  Tom Tromey  <tom@tromey.com>
10665
10666         * value.c (release_value): Update.
10667         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10668         (struct bpstats) <val>: Now a value_ref_ptr.
10669         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10670         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10671         (~watchpoint, print_it_watchpoint, watch_command_1)
10672         (invalidate_bp_value_on_memory_change): Update.
10673
10674 2018-04-06  Tom Tromey  <tom@tromey.com>
10675
10676         * varobj.c (varobj_clear_saved_item)
10677         (update_dynamic_varobj_children, install_new_value, ~varobj):
10678         Update.
10679         * value.h (value_incref): Move declaration earlier.
10680         (value_decref): Rename from value_free.
10681         (struct value_ref_policy): New.
10682         (value_ref_ptr): New typedef.
10683         (struct value_deleter): Remove.
10684         (gdb_value_up): Remove typedef.
10685         (release_value): Change return type.
10686         (release_value_or_incref): Remove.
10687         * value.c (set_value_parent): Update.
10688         (value_incref): Change return type.
10689         (value_decref): Rename from value_free.
10690         (value_free_to_mark, free_all_values, free_value_chain): Update.
10691         (release_value): Return value_ref_ptr.
10692         (release_value_or_incref): Remove.
10693         (record_latest_value, set_internalvar, clear_internalvar):
10694         Update.
10695         * stack.c (info_frame_command): Don't call value_free.
10696         * python/py-value.c (valpy_dealloc, valpy_new)
10697         (value_to_value_object): Update.
10698         * printcmd.c (do_examine): Update.
10699         * opencl-lang.c (lval_func_free_closure): Update.
10700         * mi/mi-main.c (register_changed_p): Don't call value_free.
10701         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10702         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10703         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10704         value_free.
10705         * guile/scm-value.c (vlscm_free_value_smob)
10706         (vlscm_scm_from_value): Update.
10707         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10708         (frame_unwind_register_unsigned, get_frame_register_bytes)
10709         (put_frame_register_bytes): Don't call value_free.
10710         * findvar.c (address_from_register): Don't call value_free.
10711         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10712         * dwarf2loc.c (entry_data_value_free_closure)
10713         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10714         (dwarf2_evaluate_loc_desc_full): Update.
10715         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10716         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10717         (~watchpoint, watch_command_1)
10718         (invalidate_bp_value_on_memory_change): Update.
10719         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10720
10721 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10722
10723         PR gdb/23022
10724         * warning.m4: Add -Wno-error=deprecated-register.
10725         * configure: Re-generate.
10726
10727 2018-04-05  Tom Tromey  <tom@tromey.com>
10728
10729         * linespec.h: Remove include of "vec.h".
10730
10731 2018-04-05  Tom Tromey  <tom@tromey.com>
10732
10733         * linespec.c (typep): Remove typedef.
10734         (find_methods, find_superclass_methods): Take a std::vector.
10735         (find_method): Use std::vector.
10736
10737 2018-04-05  Tom Tromey  <tom@tromey.com>
10738
10739         * utils.c (compare_strings): Remove.
10740         * utils.h (compare_strings): Remove.
10741         * objc-lang.h (find_imps): Update.
10742         * objc-lang.c (find_methods): Take a std::vector.
10743         (uniquify_strings, find_imps): Likewise.
10744         * linespec.c (find_methods): Take a std::vector.
10745         (decode_objc): Use std::vector.
10746         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10747         a std::vector.
10748         (find_method, find_function_symbols): Use std::vector.
10749
10750 2018-04-05  Tom Tromey  <tom@tromey.com>
10751
10752         * completer.c (completion_tracker::completion_tracker): Remove
10753         cast.
10754         (completion_tracker::discard_completions): Likewise.
10755         * breakpoint.c (ambiguous_names_p): Remove cast.
10756         * ada-lang.c (_initialize_ada_language): Remove cast.
10757         * utils.h (streq): Update.
10758         (streq_hash): Add new declaration.
10759         * utils.c (streq): Return bool.
10760         (streq_hash): New function.
10761
10762 2018-04-05  Tom Tromey  <tom@tromey.com>
10763
10764         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10765         Remove a string copy.
10766
10767 2018-04-05  Tom Tromey  <tom@tromey.com>
10768
10769         * linespec.c (filter_results): Use std::vector.
10770         (decode_line_2, decode_line_full): Update.
10771
10772 2018-04-05  Tom Tromey  <tom@tromey.com>
10773
10774         * linespec.c (canonical_to_fullform): Return std::string.
10775         (filter_results): Update.
10776         (struct decode_line_2_item): Add constructor.
10777         <fullform, displayform>: Now std::string.
10778         (decode_line_2_compare_items): Now a std::sort comparator.
10779         (decode_line_2): Update.
10780
10781 2018-04-05  Tom Tromey  <tom@tromey.com>
10782
10783         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10784         (unexpected_linespec_error): Update.
10785         (linespec_parse_basic, parse_linespec): Update.
10786
10787 2018-04-05  Tom Tromey  <tom@tromey.com>
10788
10789         * linespec.c (linespec_parse_basic): Reindent.
10790
10791 2018-04-05  Tom Tromey  <tom@tromey.com>
10792
10793         * minsyms.h (iterate_over_minimal_symbols): Update.
10794         * minsyms.c (iterate_over_minimal_symbols): Take a
10795         gdb::function_view.
10796         * linespec.c (struct collect_minsyms): Remove.
10797         (compare_msyms): Now a std::sort comparator.
10798         (add_minsym): Add parameters.
10799         (search_minsyms_for_name): Update.  Use std::vector.
10800
10801 2018-04-03  Tom Tromey  <tom@tromey.com>
10802
10803         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10804         gdb::byte_vector.
10805
10806 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10807
10808         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10809
10810 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10811
10812         PR gdb/16959
10813         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10814         printing static type.
10815
10816 2018-04-01  Tom Tromey  <tom@tromey.com>
10817
10818         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10819         (rs6000_xfer_shared_libraries): Update.
10820
10821 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10822
10823         * common/gdb_vecs.h (char_ptr): Remove.
10824         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10825
10826 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10827
10828         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10829         with std::vector.
10830         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10831
10832 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10833
10834         * tracepoint.h (struct uploaded_tp): Initialize fields.
10835         <actions, step_actions, cmd_strings>: Change type to
10836         std::vector<char *>.
10837         * tracepoint.c (get_uploaded_tp): Allocate with new.
10838         (free_uploaded_tps): Free with delete.
10839         (parse_tracepoint_definition): Adjust to std::vector change.
10840         * breakpoint.c (read_uploaded_action): Likewise.
10841         (create_tracepoint_from_upload): Likewise.
10842         * ctf.c (ctf_write_uploaded_tp): Likewise.
10843         (SET_ARRAY_FIELD): Likewise.
10844         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10845
10846 2018-03-30  Tom Tromey  <tom@tromey.com>
10847
10848         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10849         std::unique_ptr.
10850         (svr4_keep_data_in_core): Update.
10851         (svr4_read_so_list): Update.
10852
10853 2018-03-30  Tom Tromey  <tom@tromey.com>
10854
10855         * windows-nat.c (handle_output_debug_string, handle_exception):
10856         Update.
10857         * target.h (target_read_string): Update.
10858         * target.c (target_read_string): Change "string" to
10859         unique_xmalloc_ptr.
10860         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10861         Update.
10862         * solib-frv.c (frv_current_sos): Update.
10863         * solib-dsbt.c (dsbt_current_sos): Update.
10864         * solib-darwin.c (darwin_current_sos): Update.
10865         * linux-thread-db.c (inferior_has_bug): Update.
10866         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10867         Update.  Remove alloca.
10868         * ada-lang.c (ada_main_name): Update.
10869
10870 2018-03-30  Tom Tromey  <tom@tromey.com>
10871
10872         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10873         (struct dwo_file_deleter): New.
10874         (dwo_file_up): New typedef.
10875         (open_and_init_dwo_file): Use dwo_file_up.
10876         (free_dwo_file_cleanup): Remove.
10877
10878 2018-03-30  Tom Tromey  <tom@tromey.com>
10879
10880         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10881         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10882
10883 2018-03-30  Tom Tromey  <tom@tromey.com>
10884
10885         * dwarf2read.c (class free_cached_comp_units): New class.
10886         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10887         (free_cached_comp_units): Remove function.
10888
10889 2018-03-30  Tom Tromey  <tom@tromey.com>
10890
10891         * utils.h (make_cleanup_unpush_target): Remove.
10892         * inf-ptrace.c (struct target_unpusher): New.
10893         (target_unpush_up) New typedef.
10894         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10895         target_unpush_up.
10896         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10897
10898 2018-03-27  Tom Tromey  <tom@tromey.com>
10899
10900         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10901
10902 2018-03-27  Pedro Alves  <palves@redhat.com>
10903             Tom Tromey  <tom@tromey.com>
10904
10905         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10906         destructor.  Now a class.
10907         (gdb_readline_wrapper_cleanup): Remove function.
10908         (gdb_readline_wrapper): Remove cleanups.
10909
10910 2018-03-27  Tom Tromey  <tom@tromey.com>
10911
10912         * typeprint.h (struct type_print_options) <local_typedefs,
10913         global_typedefs>: Remove "struct" keyword.
10914         (class typedef_hash_table): New class.
10915         (recursively_update_typedef_hash, add_template_parameters)
10916         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10917         (find_typedef_in_hash): Don't declare.
10918         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10919         (typedef_hash_table::recursively_update): Rename from
10920         recursively_update_typedef_hash.  Now a member.
10921         (typedef_hash_table::add_template_parameters): Rename from
10922         add_template_parameters.  Now a member.
10923         (typedef_hash_table::typedef_hash_table): Now a constructor;
10924         rename from create_typedef_hash.
10925         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10926         rename from free_typedef_hash.
10927         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10928         (do_free_global_table): Remove.
10929         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10930         from copy_type_recursive.
10931         (create_global_typedef_table): Remove.
10932         (typedef_hash_table::find_global_typedef): Now a member of
10933         typedef_hash_table.
10934         (typedef_hash_table::find_typedef): Rename from
10935         find_typedef_in_hash; now a member.
10936         (whatis_exp): Update.
10937         * extension.h (struct ext_lang_type_printers): Add constructor and
10938         destructor.
10939         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10940         declare.
10941         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10942         Now a constructor; rename from start_ext_lang_type_printers.
10943         (ext_lang_type_printers): Now a destructor; rename from
10944         free_ext_lang_type_printers.
10945         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10946         Update.
10947         (c_type_print_base_struct_union): Update.  Remove cleanups.
10948
10949 2018-03-27  Tom Tromey  <tom@tromey.com>
10950
10951         * dwarf-index-write.c: Include <cmath>.
10952
10953 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10954
10955         * NEWS: Add entry describing new "set|show varsize-limit" command.
10956         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10957         command.
10958         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10959         "set variable".
10960
10961 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10962
10963         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10964         dwarf-index-write.c
10965         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10966         * dwarf-index-common.c: New file.
10967         * dwarf-index-common.h: New file.
10968         * dwarf-index-write.c: New file.
10969         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10970         (struct dwarf2_section_info): Move from here.
10971         (dwarf2_section_info_def): Likewise.
10972         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10973         (offset_type): Likewise.
10974         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10975         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10976         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10977         (byte_swap): Likewise.
10978         (MAYBE_SWAP): Likewise.
10979         (dwarf2_per_cu_ptr): Likewise.
10980         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10981         (struct tu_stats): Likewise.
10982         (struct dwarf2_per_objfile): Likewise.
10983         (struct dwarf2_per_cu_data): Likewise.
10984         (struct signatured_type): Likewise.
10985         (sig_type_ptr): Likewise.
10986         (DEF_VEC_P (sig_type_ptr)): Likewise.
10987         (INDEX4_SUFFIX): Likewise.
10988         (INDEX5_SUFFIX): Likewise.
10989         (DEBUG_STR_SUFFIX): Likewise.
10990         (dwarf2_read_section): Make non-static.
10991         (mapped_index_string_hash): Move from here.
10992         (dwarf5_djb_hash): Likewise.
10993         (file_write): Likewise.
10994         (class data_buf): Likewise.
10995         (struct symtab_index_entry): Likewise.
10996         (struct mapped_symtab): Likewise.
10997         (find_slot): Likewise.
10998         (hash_expand): Likewise.
10999         (add_index_entry): Likewise.
11000         (uniquify_cu_indices): Likewise.
11001         (class c_str_view): Likewise.
11002         (class c_str_view_hasher): Likewise.
11003         (class vector_hasher): Likewise.
11004         (write_hash_table): Likewise.
11005         (psym_index_map): Likewise.
11006         (struct addrmap_index_data): Likewise.
11007         (add_address_entry): Likewise.
11008         (add_address_entry_worker): Likewise.
11009         (write_address_map): Likewise.
11010         (symbol_kind): Likewise.
11011         (write_psymbols): Likewise.
11012         (struct signatured_type_index_data): Likewise.
11013         (write_one_signatured_type): Likewise.
11014         (recursively_count_psymbols): Likewise.
11015         (recursively_write_psymbols): Likewise.
11016         (class debug_names): Likewise.
11017         (check_dwarf64_offsets): Likewise.
11018         (psyms_seen_size): Likewise.
11019         (write_gdbindex): Likewise.
11020         (write_debug_names): Likewise.
11021         (assert_file_size): Likewise.
11022         (write_psymtabs_to_index): Likewise.
11023         (save_gdb_index_command): Likewise.
11024         (_initialize_dwarf2_read): Don't register the "save gdb-index"
11025         command.
11026         * dwarf2read.h: New file.
11027
11028 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11029
11030         PR gdb/22670
11031         * dwarf2read.c (dwarf2_physname): Do not return the demangled
11032         symbol name if the CU's language stores symbol names in linkage
11033         format.
11034         * language.h (struct language_defn)
11035         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
11036         all instances of this struct.
11037
11038 2018-03-26  Tom Tromey  <tom@tromey.com>
11039
11040         * stack.c (backtrace_command_1): Remove verbose code.
11041
11042 2018-03-26  Tom Tromey  <tom@tromey.com>
11043
11044         * python/py-framefilter.c (py_print_type): Don't catch
11045         exceptions.  Return void.
11046         (py_print_value): Likewise.
11047         (py_print_single_arg): Likewise.
11048         (enumerate_args): Don't catch exceptions.
11049         (py_print_args): Likewise.
11050         (py_print_frame): Likewise.
11051         (gdbpy_apply_frame_filter): Catch exceptions here.
11052
11053 2018-03-26  Tom Tromey  <tom@tromey.com>
11054
11055         * stack.c (_initialize_stack): Remove trailing newlines from help
11056         text.  Add "Usage" line to "backtrace" help.
11057
11058 2018-03-26  Tom Tromey  <tom@tromey.com>
11059
11060         PR python/16486:
11061         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11062
11063 2018-03-26  Tom Tromey  <tom@tromey.com>
11064
11065         * python/py-framefilter.c (py_print_single_arg): Return
11066         EXT_LANG_BT_ERROR from catch.
11067
11068 2018-03-26  Tom Tromey  <tom@tromey.com>
11069
11070         PR backtrace/15584:
11071         * stack.c (backtrace_command_1): Move some code into no-filters
11072         "if".
11073
11074 2018-03-26  Tom Tromey  <tom@tromey.com>
11075
11076         * python/py-framefilter.c (throw_quit_or_print_exception): New
11077         function.
11078         (gdbpy_apply_frame_filter): Use it.
11079
11080 2018-03-26  Tom Tromey  <tom@tromey.com>
11081
11082         PR cli/17716:
11083         * python/py-framefilter.c (py_print_type, py_print_value)
11084         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11085         RETURN_MASK_ERROR.
11086
11087 2018-03-26  Tom Tromey  <tom@tromey.com>
11088
11089         * python/py-framefilter.c (enumerate_args): Use
11090         gdb::unique_xmalloc_ptr.
11091
11092 2018-03-26  Tom Tromey  <tom@tromey.com>
11093
11094         * python/py-framefilter.c (py_print_frame): Return
11095         EXT_LANG_BT_OK.
11096         (gdbpy_apply_frame_filter): Update comment.
11097         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11098         Remove.
11099         <EXT_LANG_BT_NO_FILTERS>: Change value.
11100
11101 2018-03-26  Tom Tromey  <tom@tromey.com>
11102
11103         PR backtrace/15582:
11104         * stack.c (backtrace_command): Parse "hide" argument.
11105         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11106         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11107         constant.
11108
11109 2018-03-26  Tom Tromey  <tom@tromey.com>
11110
11111         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11112         add "flags".
11113         (backtrace_command): Remove "fulltrace", add "flags".
11114
11115 2018-03-26  Tom Tromey  <tom@tromey.com>
11116
11117         * stack.c (backtrace_command): Rewrite command line parsing.
11118
11119 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11120
11121         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11122
11123 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11124
11125         * filename-seen-cache.h: Add include guard.
11126
11127 2018-03-26  Keith Seitz  <keiths@redhat.com>
11128
11129         * symfile.c (place_section): Remove "struct" from section_addr_info
11130         in comment.
11131         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11132         "struct" keyword from section_addr_info.
11133
11134 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11135
11136         * regformats/regdef.h (reg): Add constructors.
11137
11138 2018-03-25  Pedro Alves  <palves@redhat.com>
11139
11140         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11141         if then/else bodies in var_func_name extraction.
11142
11143 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11144
11145         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11146         lookup_minimal_symbol() to find symbol entry.
11147         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11148
11149 2018-03-23  Keith Seitz  <keiths@redhat.com>
11150
11151         PR c++/22968
11152         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11153         nested type definitions for C++, too.
11154
11155 2018-03-23  Tom Tromey  <tom@tromey.com>
11156
11157         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11158         a typedef.
11159         (macho_register_oso): Remove.
11160         (macho_symtab_read): Take a std::vector.
11161         (oso_el_compare_name): Now a std::sort comparator.
11162         (macho_symfile_read_all_oso): Take a std::vector.
11163         (macho_symfile_read): Use std::vector.  Remove cleanups.
11164
11165 2018-03-22  Tom Tromey  <tom@tromey.com>
11166
11167         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11168         (record_full_goto_bookmark): Use std::string.
11169
11170 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11171
11172         PR tdep/18295
11173         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11174         a single mask.
11175
11176 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11177
11178         * rs6000-tdep.c (store_insn_p): New function.
11179         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11180         and cr_reg to their unshifted values. Use store_insn_p to
11181         match LR saves using either R1 or fdata->alloca_reg. Use
11182         store_insn_p to match CR saves. Set alloca_reg_offset
11183         when alloca_reg and framep are set. Remove lr_reg shift
11184         when assigning to fdata->lr_register.
11185
11186 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11187
11188         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11189         command line args instead of emitting a warning.
11190
11191 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11192
11193         * tracepoint.h (struct static_tracepoint_marker): Initialize
11194         fields, define default constructor, move constructor and move
11195         assignment, disable the rest.
11196         <str_id, extra>: Make std::string.
11197         (release_static_tracepoint_marker): Remove.
11198         (free_current_marker): Remove.
11199         * tracepoint.c (free_current_marker): Remove.
11200         (parse_static_tracepoint_marker_definition): Adjust to
11201         std::string, use new hex2str overload.
11202         (release_static_tracepoint_marker): Remove.
11203         (print_one_static_tracepoint_marker): Get marker by reference
11204         and adjust to std::string.
11205         (info_static_tracepoint_markers_command): Adjust to std::vector
11206         changes
11207         * target.h (static_tracepoint_marker_p): Remove typedef.
11208         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11209         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11210         bool.
11211         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11212         * target-debug.h
11213         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11214         (target_debug_print_std_vector_static_tracepoint_marker): New.
11215         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11216         to...
11217         (target_debug_print_static_tracepoint_marker_p): ... this.
11218         * target-delegates.c: Re-generate.
11219         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11220         Make std::string.
11221         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11222         (decode_static_tracepoint_spec): Adjust to std::vector.
11223         (tracepoint_print_one_detail): Adjust to std::string.
11224         (strace_marker_decode_location): Adjust to std::string.
11225         (update_static_tracepoint): Adjust to std::string, remove call
11226         to release_static_tracepoint_marker.
11227         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11228         Adjust to std::vector.
11229         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11230         (remote_static_tracepoint_markers_by_strid): Adjust to
11231         std::vector.
11232         * common/rsp-low.h (hex2str): New overload with explicit count
11233         of bytes.
11234         * common/rsp-low.c (hex2str): New overload with explicit count
11235         of bytes.
11236         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11237         (_initialize_rsp_low_selftests): Add test_hex2str test.
11238         * unittests/tracepoint-selftests.c
11239         (test_parse_static_tracepoint_marker_definition): Adjust to
11240         std::string.
11241
11242 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11243
11244         * tracepoint.c (parse_static_tracepoint_marker_definition):
11245         Consider case where the definition is followed by more
11246         definitions.
11247         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11248         tracepoint-selftests.c.
11249         * unittests/tracepoint-selftests.c: New.
11250
11251 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11252
11253         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11254         Carvalho.
11255
11256 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11257
11258         * symtab.c (find_pc_sect_line): fixed indentation.
11259
11260 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11261
11262         * symtab.c (find_pc_sect_line): now uses binary search.
11263
11264 2018-03-19  Tom Tromey  <tom@tromey.com>
11265
11266         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11267         "IDENT" production.
11268
11269 2018-03-19  Pedro Alves  <palves@redhat.com>
11270             Tom Tromey  <tom@tromey.com>
11271
11272         * unittests/observable-selftests.c: New file.
11273         * common/observable.h: New file.
11274         * observable.h: New file.
11275         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11276         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11277         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11278         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11279         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11280         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11281         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11282         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11283         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11284         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11285         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11286         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11287         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11288         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11289         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11290         tui/tui-interp.c, valops.c: Update all users.
11291         * tui/tui-hooks.c (tui_bp_created_observer)
11292         (tui_bp_deleted_observer, tui_bp_modified_observer)
11293         (tui_inferior_exit_observer, tui_before_prompt_observer)
11294         (tui_normal_stop_observer, tui_register_changed_observer):
11295         Remove.
11296         (tui_observers_token): New global.
11297         (attach_or_detach, tui_attach_detach_observers): New functions.
11298         (tui_install_hooks, tui_remove_hooks): Use
11299         tui_attach_detach_observers.
11300         * record-btrace.c (record_btrace_thread_observer): Remove.
11301         (record_btrace_thread_observer_token): New global.
11302         * observer.sh: Remove.
11303         * observer.c: Rename to observable.c.
11304         * observable.c (namespace gdb_observers): Define new objects.
11305         (observer_debug): Move into gdb_observers namespace.
11306         (struct observer, struct observer_list, xalloc_observer_list_node)
11307         (xfree_observer_list_node, generic_observer_attach)
11308         (generic_observer_detach, generic_observer_notify): Remove.
11309         (_initialize_observer): Update.
11310         Don't include observer.inc.
11311         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11312         (clean mostlyclean): Likewise.
11313         (observer.h, observer.inc): Remove targets.
11314         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11315         (COMMON_SFILES): Use observable.c, not observer.c.
11316         * .gitignore: Remove observer.h.
11317
11318 2018-03-18  Tom Tromey  <tom@tromey.com>
11319
11320         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11321         gdb::def_vector.
11322         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11323
11324 2018-03-17  Tom Tromey  <tom@tromey.com>
11325
11326         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11327
11328 2018-03-17  Tom Tromey  <tom@tromey.com>
11329
11330         * target.c (class scoped_target_fd): New.
11331         (target_fileio_close_cleanup): Remove.
11332         (target_fileio_read_alloc_1): Use scoped_target_fd.
11333
11334 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11335
11336         * silent-rules.mk: New.
11337         * Makefile.in: Include silent-rules.mk
11338         (srcdir, VPATH, top_srcdir): Move up.
11339         (COMPILE): Add ECHO_CXX.
11340         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11341         (init.c): Add ECHO_INIT_C.
11342         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11343         (version.c): Add ECHO_GEN.
11344         (printcmd.o): Add ECHO_CXX.
11345         (target-float.o): Add ECHO_CXX.
11346         (ada-exp.o): Add ECHO_CXX.
11347         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11348         (insight$(EXEEXT)): Add ECHO_CXXLD.
11349         * gnulib/configure.ac: Add AM_SILENT_RULES.
11350         * gnulib/aclocal.m4: Re-generate.
11351         * gnulib/configure: Re-generate.
11352         * gnulib/import/Makefile.in: Re-generate.
11353
11354 2018-03-16  Tom Tromey  <tom@tromey.com>
11355
11356         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11357         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11358         * utils.c (do_free_section_addr_info)
11359         (make_cleanup_free_section_addr_info): Remove.
11360         * symfile.h (struct other_sections): Add constructor.
11361         (struct section_addr_info): Remove.
11362         (section_addr_info): New typedef.
11363         (struct sym_fns) <sym_offsets>: Change type of parameter.
11364         (build_section_addr_info_from_objfile)
11365         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11366         (default_symfile_offsets, symbol_file_add)
11367         (symbol_file_add_from_bfd)
11368         (build_section_addr_info_from_section_table): Update.
11369         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11370         * symfile.c (alloc_section_addr_info): Remove.
11371         (build_section_addr_info_from_section_table): Change return type.
11372         Update.
11373         (build_section_addr_info_from_bfd)
11374         (build_section_addr_info_from_objfile): Likewise.
11375         (free_section_addr_info): Remove.
11376         (relative_addr_info_to_section_offsets): Change type of "addrs".
11377         (addrs_section_compar): Now a std::sort comparator.
11378         (addrs_section_sort): Change return type.
11379         (addr_info_make_relative): Change type of "addrs".  Update.
11380         (default_symfile_offsets, syms_from_objfile_1)
11381         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11382         (symbol_file_add_separate): Update.
11383         (symbol_file_add): Change type of "addrs".  Update.
11384         (add_symbol_file_command): Update.  Remove cleanups.
11385         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11386         cleanups.
11387         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11388         * solib.c (solib_read_symbols): Update.
11389         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11390         * machoread.c (macho_symfile_offsets): Update.
11391         * jit.c (jit_bfd_try_read_symtab): Update.
11392
11393 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11394
11395         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11396         unittests/utils-selftests.c.
11397         * unittests/utils-selftests.c: New file.
11398
11399 2018-03-14  Tom Tromey  <tom@tromey.com>
11400
11401         PR cli/14977:
11402         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11403         for NULL.
11404
11405 2018-03-14  Tom Tromey  <tom@tromey.com>
11406
11407         PR cli/19918:
11408         * printcmd.c (printf_pointer): Allow "-" in format.
11409
11410 2018-03-14  Tom Tromey  <tom@tromey.com>
11411
11412         * printcmd.c (_initialize_printcmd): Add usage to printf.
11413
11414 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11415
11416         * MAINTAINERS: Update my email address.
11417
11418 2018-03-13  Tom Tromey  <tom@tromey.com>
11419
11420         * machoread.c (macho_check_dsym): Change filenamep to a
11421         std::string*.
11422         (macho_symfile_read): Update.
11423         * symfile.c (load_command): Use std::string.
11424
11425 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11426
11427         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11428         to error message string.
11429         (riscv_register_name): Use xsnprintf instead of sprintf.
11430         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11431         internal_error.
11432         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11433         error.
11434         (riscv_push_dummy_call): Likewise.
11435
11436 2018-03-12  Tom Tromey  <tom@tromey.com>
11437
11438         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11439         Use gdb::byte_vector.
11440         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11441
11442 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11443
11444         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11445         parameter type to readable_regcache.
11446         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11447         the declaration.
11448
11449 2018-03-11  Tom Tromey  <tom@tromey.com>
11450
11451         * dwarf2read.c (struct nextfield): Add initializers.
11452         (struct nextfnfield): Remove.
11453         (struct fnfieldlist): Add initializers.  Remove "length" and
11454         "head", use std::vector.
11455         (struct decl_field_list): Remove.
11456         (struct field_info): Add initializers.
11457         <fields, baseclasses>: Now std::vector.
11458         <nbaseclasses, nfnfields, typedef_field_list_count,
11459         nested_types_list_count>: Remove.
11460         (dwarf2_add_field, dwarf2_add_type_defn)
11461         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11462         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11463         (process_structure_scope): Update.
11464
11465 2018-03-11  Tom Tromey  <tom@tromey.com>
11466
11467         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11468         for use by std::sort.
11469         (build_type_psymtabs_1): Use std::vector.
11470
11471 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11472
11473         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11474         and LIBMPFR in the printed configuration.
11475
11476 2018-03-08  Tom Tromey  <tom@tromey.com>
11477
11478         * source.c (get_filename_and_charpos): Use scoped_fd.
11479         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11480         (procfs_pidlist): Likewise.
11481         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11482         (iterate_over_mappings): Likewise.
11483
11484 2018-03-08  Tom Tromey  <tom@tromey.com>
11485
11486         * infcall.c (struct call_return_meta_info)
11487         <stack_temporaries_enabled>: Remove.
11488         (get_call_return_value, call_function_by_hand_dummy): Update.
11489         * thread.c (disable_thread_stack_temporaries): Remove.
11490         (enable_thread_stack_temporaries): Remove.
11491         (thread_stack_temporaries_enabled_p): Return bool.
11492         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11493         (get_last_thread_stack_temporary): Update.
11494         * eval.c (evaluate_subexp): Update.
11495         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11496         class, not a function.
11497         (value_ptr, value_vec): Remove typedefs.
11498         (class thread_info) <stack_temporaries_enabled>: Now bool.
11499         <stack_temporaries>: Now a std::vector.
11500         (thread_stack_temporaries_enabled_p)
11501         (value_in_thread_stack_temporaries): Return bool.
11502
11503 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11504
11505         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11506         (getpkt_or_notif_sane_1): Likewise.
11507
11508 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11509
11510         * build-id.c (build_id_to_debug_bfd): Use std::string.
11511
11512 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11513
11514         * build-id.c (find_separate_debug_file_by_buildid): Return
11515         std::string.
11516         * build-id.h (find_separate_debug_file_by_buildid): Return
11517         std::string.
11518         * coffread.c (coff_symfile_read): Adjust to std::string.
11519         * elfread.c (elf_symfile_read): Adjust to std::string.
11520         * symfile.c (separate_debug_file_exists): Change parameter to
11521         std::string.
11522         (find_separate_debug_file): Return std::string.
11523         (find_separate_debug_file_by_debuglink): Return std::string.
11524         * symfile.h (find_separate_debug_file_by_debuglink): Return
11525         std::string.
11526
11527 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11528
11529         * common/xml-utils.c (xml_escape_text): Move code to...
11530         (xml_escape_text_append): ... this new function.
11531         * common/xml-utils.h (xml_escape_text_append): New declaration.
11532         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11533         New function.
11534         (_initialize_xml_utils): register test_xml_escape_text_append as
11535         a selftest.
11536
11537 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11538
11539         * defs.h: Remove MAX_REGISTER_SIZE.
11540         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11541         asserts.
11542         * python/py-unwind.c (pyuw_sniffer): Likewise.
11543
11544 2018-03-07  Tom Tromey  <tom@tromey.com>
11545
11546         * linux-tdep.c (linux_info_proc): Update.
11547         * target.h (struct target_ops) <to_fileio_readlink>: Return
11548         optional<string>.
11549         (target_fileio_readlink): Return optional<string>.
11550         * remote.c (remote_hostio_readlink): Return optional<string>.
11551         * inf-child.c (inf_child_fileio_readlink): Return
11552         optional<string>.
11553         * target.c (target_fileio_readlink): Return optional<string>.
11554
11555 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11556
11557         * regcache.c (cooked_read_test): Add riscv to the list of
11558         architectures that have a save_reggroup.
11559
11560 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11561
11562         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11563         value is not a dynamic class object.
11564
11565 2018-03-06  Tom Tromey  <tom@tromey.com>
11566
11567         * rust-exp.y: Formatting fixes.
11568
11569 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11570
11571         * riscv-tdep.c (riscv_register_name): Remove target description
11572         support.
11573         (riscv_gdbarch_init): Remove target description check.
11574
11575 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11576
11577         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11578         comment.
11579         * riscv-tdep.h: Likewise.
11580
11581 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11582
11583         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11584         (riscv_pseudo_register_write): Delete.
11585         (riscv_gdbarch_init): Remove all use of pseudo registers.
11586
11587 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11588
11589         * record-btrace.c (btrace_print_lines): Replace cleanup
11590         parameter with RAII equivalents.
11591         (btrace_insn_history): Replace cleanup with RAII equivalents.
11592         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11593         make_cleanup_ui_out_tuple_begin_end): Remove.
11594         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11595         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11596         make_cleanup_ui_out_list_begin_end): Remove.
11597
11598 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11599
11600         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11601         parameter types to std::vector.  Use bool.
11602         (record_btrace_wait): Replace VEC(tp_t) with
11603         std::vector<thread_info *>.
11604         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11605
11606 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11607
11608         * record-btrace.c (record_btrace_disable_callback): Remove.
11609         (struct scoped_btrace_disable): New.
11610         (record_btrace_open): Use scoped_btrace_disable.
11611
11612 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11613
11614         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11615         reading values from registers.
11616
11617 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11618
11619         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11620         where appropriate.
11621
11622 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11623
11624         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11625         change parameter type.  Use GDB's print functions, and use
11626         core_addr_to_string where appropriate.
11627         (riscv_push_dummy_call): Use core_addr_to_string where
11628         appropriate, update call to riscv_print_arg_location, and reindent
11629         a few lines.
11630         (riscv_return_value): Update call to riscv_print_arg_location.
11631
11632 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11633             Tim Newsome <tim@sifive.com>
11634             Albert Ou <a0u@eecs.berkeley.edu>
11635             Darius Rad <darius@bluespec.com>
11636
11637         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11638         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11639         (ALLDEPFILES): Add riscv-tdep.c
11640         * configure.tgt: Add riscv support.
11641         * riscv-tdep.c: New file.
11642         * riscv-tdep.h: New file.
11643         * NEWS: Mention new target.
11644         * MAINTAINERS: Add entry for riscv.
11645
11646 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11647
11648         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11649         fields within aggregates.
11650
11651 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11652
11653         * record-btrace.c (btrace_print_lines): Change type of flags to
11654         gdb_disassembly_flags.
11655
11656 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11657
11658         * fbsd-nat.c: Include "inf-ptrace.h".
11659         (USE_SIGTRAP_SIGINFO): Conditionally define.
11660         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11661         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11662         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11663         function.
11664         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11665         Likewise.
11666         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11667         Likewise.
11668         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11669         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11670         "supports_stopped_by_hw_breakpoint" target methods.
11671
11672 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11673
11674         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11675         * fbsd-nat.c (debug_fbsd_nat): New variable.
11676         (show_fbsd_nat_debug): New function.
11677         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11678         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11679
11680 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11681
11682         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11683         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11684         prototype.
11685         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11686         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11687         method.
11688
11689 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11690
11691         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11692         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11693
11694 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11695
11696         * charset.c (struct charset_vector): New.
11697         (charsets): Change type to charset_vector.
11698         (find_charset_names): Adjust.
11699         (add_one): Adjust.
11700         (_initialize_charset): Adjust.
11701
11702 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11703
11704         * progspace.h (struct program_space) <deleted_solibs>: Change
11705         type to std::vector<std::string>.
11706         * progspace.c (clear_program_space_solib_cache): Adjust.
11707         * breakpoint.c (print_solib_event): Adjust.
11708         (check_status_catch_solib): Adjust.
11709         * solib.c (update_solib_list): Adjust.
11710         * ui-out.h (class ui_out) <field_string>: New overload.
11711         * ui-out.c (ui_out::field_string): New overload.
11712
11713 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11714
11715         * progspace.h (struct program_space): Add constructor and
11716         destructor, initialize fields.
11717         (add_program_space): Remove.
11718         * progspace.c (add_program_space): Rename to...
11719         (program_space::program_space): ... this.
11720         (release_program_space): Rename to...
11721         (program_space::~program_space): ... this.
11722         (delete_program_space): Use delete to delete program_space.
11723         (initialize_progspace): Use new to allocate program_space.
11724         * inferior.c (add_inferior_with_spaces): Likewise.
11725         (clone_inferior_command): Likewise.
11726         * infrun.c (follow_fork_inferior): Likewise.
11727         (handle_vfork_child_exec_or_exit): Likewise.
11728
11729 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11730
11731         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11732         (delim_string_to_char_ptr_vec): Return std::vector of
11733         gdb::unique_xmalloc_ptr.
11734         (dirnames_to_char_ptr_vec_append): Take std::vector of
11735         gdb::unique_xmalloc_ptr.
11736         (dirnames_to_char_ptr_vec): Return std::vector of
11737         gdb::unique_xmalloc_ptr.
11738         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11739         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11740         (delim_string_to_char_ptr_vec): Return an std::vector of
11741         gdb::unique_xmalloc_ptr, adjust the code.
11742         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11743         gdb::unique_xmalloc_ptr, adjust the code.
11744         (dirnames_to_char_ptr_vec): Return an std::vector of
11745         gdb::unique_xmalloc_ptr, adjust the code.
11746         * auto-load.c (auto_load_safe_path_vec): Change type to
11747         std::vector of gdb::unique_xmalloc_ptr.
11748         (auto_load_expand_dir_vars): Return an std::vector of
11749         gdb::unique_xmalloc_ptr, adjust the code.
11750         (auto_load_safe_path_vec_update): Adjust.
11751         (filename_is_in_auto_load_safe_path_vec): Adjust.
11752         (auto_load_objfile_script_1): Adjust.
11753         * build-id.c (build_id_to_debug_bfd): Adjust.
11754         * linux-thread-db.c (thread_db_load_search): Adjust.
11755         * source.c (add_path): Adjust.
11756         (openp): Adjust.
11757         * symfile.c (find_separate_debug_file): Adjust.
11758         * utils.c (do_free_char_ptr_vec): Remove.
11759         (make_cleanup_free_char_ptr_vec): Remove.
11760
11761 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11762
11763         PR gdb/22907
11764         * common/pathstuff.c: Conditionally include "<windows.h>".
11765
11766 2018-03-01  Georg Sauthoff  <mail@georg.so>
11767
11768         PR gdb/22888
11769         * gcore.in: Quote variables and switch interpreter to bash.
11770
11771 2018-03-01  Tom Tromey  <tom@tromey.com>
11772
11773         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11774         assertion.  Add assertion for discriminant_index.
11775         (quirk_rust_enum): Use correct base type name in univariant case.
11776
11777 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11778
11779         * record.c (get_call_history_modifiers): Return a
11780         record_print_flags.
11781         (cmd_record_call_history): Adjust.
11782         * record-btrace.c (record_btrace_call_history): Adjust.
11783         (record_btrace_call_history_range): Adjust.
11784         (record_btrace_call_history_from): Adjust.
11785         * target-debug.h (target_debug_print_record_print_flags): New.
11786         * target-delegates.c: Re-generate.
11787         * target.c (target_call_history): Change flags type.
11788         (target_call_history_from): Likewise.
11789         (target_call_history_range): Likewise.
11790         * target.h (struct target_ops) <target_call_history>: Likewise.
11791         (target_call_history_from): Likewise.
11792         (target_call_history_range): Likewise.
11793
11794 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11795             Simon Marchi  <simon.marchi@polymtl.ca>
11796
11797         * common/common-utils.c: Include "sys/stat.h".
11798         (is_regular_file): Move here from "source.c"; change return
11799         type to "bool".
11800         * common/common-utils.h (is_regular_file): New prototype.
11801         * common/pathstuff.c (contains_dir_separator): New function.
11802         * common/pathstuff.h (contains_dir_separator): New prototype.
11803         * source.c: Don't include "sys/stat.h".
11804         (is_regular_file): Move to "common/common-utils.c".
11805
11806 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11807
11808         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11809         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11810         * auto-load.c: Include "common/pathstuff.h".
11811         * common/common-def.h (current_directory): Move here.
11812         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11813         function.
11814         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11815         prototype.
11816         * common/pathstuff.c: New file.
11817         * common/pathstuff.h: New file.
11818         * compile/compile.c: Include "common/pathstuff.h".
11819         * defs.h (current_directory): Move to "common/common-defs.h".
11820         * dwarf2read.c: Include "common/pathstuff.h".
11821         * exec.c: Likewise.
11822         * guile/scm-safe-call.c: Likewise.
11823         * linux-thread-db.c: Likewise.
11824         * main.c: Likewise.
11825         * nto-tdep.c: Likewise.
11826         * objfiles.c: Likewise.
11827         * source.c: Likewise.
11828         * symtab.c: Likewise.
11829         * utils.c: Include "common/pathstuff.h".
11830         (gdb_realpath): Move to "common/pathstuff.c".
11831         (gdb_realpath_keepfile): Likewise.
11832         (gdb_abspath): Likewise.
11833         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11834         (gdb_realpath_keepfile): Likewise.
11835         (gdb_abspath): Likewise.
11836
11837 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11838
11839         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11840         wildcard process pid for super_resume for kernels with a
11841         specific bug.
11842
11843 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11844
11845         * compile/compile.c (get_args): Add additional comments
11846         explaining function.
11847
11848 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11849             Tom Tromey  <tom@tromey.com>
11850
11851         * target.h (memory_write_request_s): Remove typedef.  Don't define
11852         VEC.
11853         (target_write_memory_blocks): Change argument to std::vector.
11854         (struct memory_write_request): Add constructor.
11855         * target-memory.c (compare_block_starting_address): Return bool.
11856         Change argument types.
11857         (claim_memory): Change arguments to use std::vector.
11858         (split_regular_and_flash_blocks, blocks_to_erase)
11859         (compute_garbled_blocks): Likewise.
11860         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11861         (target_write_memory_blocks): Change argument to std::vector.
11862         * symfile.c (struct load_section_data): Add constructor and
11863         destructor.  Use std::vector for "requests".
11864         (struct load_progress_data): Add initializers.
11865         (load_section_callback): Update.  Use "new".
11866         (clear_memory_write_data): Remove.
11867         (generic_load): Update.
11868
11869 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11870
11871         * arch/aarch64.h: Use common/tdesc.h.
11872
11873 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11874
11875         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11876         architecture with a 64-bit ABI.
11877
11878 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11879
11880         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11881         ahead of target description loading.
11882
11883 2018-02-26  Tom Tromey  <tom@tromey.com>
11884
11885         * stack.c (backtrace_command_1): Update.
11886         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11887         of "flags".
11888         * python/py-framefilter.c (py_print_frame)
11889         (gdbpy_apply_frame_filter): Change type of "flags".
11890         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11891         of "flags".
11892         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11893         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11894         * extension.h (enum frame_filter_flag): Rename from
11895         frame_filter_flags.
11896         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11897         (apply_ext_lang_frame_filter): Change type of "flags".
11898         * extension.c (apply_ext_lang_frame_filter): Change type of
11899         "flags".
11900         * extension-priv.h (struct extension_language_ops)
11901         <apply_frame_filter>: Change type of "flags".
11902
11903 2018-02-26  Tom Tromey  <tom@tromey.com>
11904
11905         PR python/16497:
11906         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11907         off-by-one in py_end computation.
11908         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11909         PRINT_MORE_FRAMES.
11910         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11911         constant.
11912
11913 2018-02-26  Tom Tromey  <tom@tromey.com>
11914
11915         * dwarf2read.c (struct variant_field): New.
11916         (struct nextfield) <variant>: New field.
11917         (dwarf2_add_field): Handle DW_TAG_variant_part.
11918         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11919         discriminated union.
11920         (read_structure_type): Handle DW_TAG_variant_part.
11921         (handle_struct_member_die): New function, extracted from
11922         process_structure_scope.  Handle DW_TAG_variant.
11923         (process_structure_scope): Handle discriminated unions.  Call
11924         handle_struct_member_die.
11925
11926 2018-02-26  Tom Tromey  <tom@tromey.com>
11927
11928         * rust-lang.h (rust_last_path_segment): Declare.
11929         * rust-lang.c (rust_last_path_segment): Now public.  Change
11930         contract.
11931         (struct disr_info): Remove.
11932         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11933         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11934         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11935         (rust_enum_p, rust_enum_variant): New function.
11936         (rust_underscore_fields): Remove "offset" parameter.
11937         (rust_print_enum): New function.
11938         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11939         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11940         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11941         enums.
11942         (rust_internal_print_type): New function, from rust_print_type.
11943         Remove enum code.
11944         (rust_print_type): Call rust_internal_print_type.
11945         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11946         Update enum handling.
11947         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11948         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11949         (rust_union_quirks): New functions.
11950         (process_full_comp_unit, process_full_type_unit): Call
11951         rust_union_quirks.
11952         (process_structure_scope): Update rust_unions if necessary.
11953
11954 2018-02-26  Tom Tromey  <tom@tromey.com>
11955
11956         * value.h (value_union_variant): Declare.
11957         * valops.c (value_union_variant): New function.
11958         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11959         (struct discriminant_info): New.
11960         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11961         enumerator.
11962         (struct main_type) <flag_discriminated_union>: New field.
11963
11964 2018-02-26  Tom Tromey  <tom@tromey.com>
11965
11966         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11967         unittests/unpack-selftests.c.
11968         * unittests/unpack-selftests.c: New file.
11969         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11970
11971 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11972
11973         * dwarf2read.c (struct partial_die_info) <read>: New method.
11974         (read_partial_die): Remove the declaration.
11975         (load_partial_dies): Update.
11976         (partial_die_info::partial_die_info):
11977         (read_partial_die): Change it to partial_die_info::read.
11978
11979 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11980
11981         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11982         (fixup_partial_die): Remove declaration.
11983         (scan_partial_symbols): Update.
11984         (partial_die_parent_scope): Likewise.
11985         (partial_die_full_name): Likewise.
11986         (fixup_partial_die): Change it to partial_die_info::fixup.
11987
11988 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11989
11990         * dwarf2read.c (read_partial_die): Update the declaration.
11991         (load_partial_dies): Caller update.
11992         (read_partial_die): Remove one argument abbrev_len.
11993
11994 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11995
11996         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11997         assignment operator.
11998         (load_partial_dies): Use ctor and copy ctor.
11999         (read_partial_die): Update.
12000         (dwarf2_cu::find_partial_die): Use ctor.
12001
12002 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12003
12004         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
12005         (find_partial_die_in_comp_unit): Change it to
12006         dwarf2_cu::find_partial_die.
12007         (find_partial_die): Update.
12008
12009 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12010
12011         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
12012         is NULL.
12013
12014 2018-02-26  Yao Qi  <yao.qi@linaro.org>
12015
12016         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
12017
12018 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
12019
12020         * arch/amd64.h: Use common/tdesc.h.
12021         * arch/i386.c: Likewise.
12022         * arch/i386.h: Likewise.
12023         * arch/tic6x.c: Likewise.
12024         * arch/tdesc.h: Move file from here...
12025         * common/tdesc.h: ...to here.
12026         * features/aarch64-core.c: Regenerate.
12027         * features/aarch64-fpu.c: Regenerate.
12028         * features/i386/32bit-avx.c: Regenerate.
12029         * features/i386/32bit-avx512.c: Regenerate.
12030         * features/i386/32bit-core.c: Regenerate.
12031         * features/i386/32bit-linux.c: Regenerate.
12032         * features/i386/32bit-mpx.c: Regenerate.
12033         * features/i386/32bit-pkeys.c: Regenerate.
12034         * features/i386/32bit-sse.c: Regenerate.
12035         * features/i386/64bit-avx.c: Regenerate.
12036         * features/i386/64bit-avx512.c: Regenerate.
12037         * features/i386/64bit-core.c: Regenerate.
12038         * features/i386/64bit-linux.c: Regenerate.
12039         * features/i386/64bit-mpx.c: Regenerate.
12040         * features/i386/64bit-pkeys.c: Regenerate.
12041         * features/i386/64bit-segments.c: Regenerate.
12042         * features/i386/64bit-sse.c: Regenerate.
12043         * features/i386/x32-core.c: Regenerate.
12044         * features/tic6x-c6xp.c: Regenerate.
12045         * features/tic6x-core.c: Regenerate.
12046         * features/tic6x-gp.c: Regenerate.
12047         * target-descriptions.c: Use common/tdesc.h.
12048         * target-descriptions.h: Likewise.
12049
12050 2018-02-24  Tom Tromey  <tom@tromey.com>
12051
12052         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12053         (try_thread_db_load_from_dir, thread_db_load_search): Use
12054         std::string.
12055         (info_auto_load_libthread_db_compare): Return bool.  Change
12056         argument types.
12057         (info_auto_load_libthread_db): Use std::vector, std::string.
12058         Remove cleanups.
12059
12060 2018-02-24  Tom Tromey  <tom@tromey.com>
12061
12062         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12063         std::string.
12064         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12065         std::string*.
12066         * gdbarch.c: Rebuild.
12067         * gdbarch.h: Rebuild.
12068         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12069         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12070         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12071         std::string*.
12072
12073 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12074
12075         * gdbtypes.h (sect_offset): Change type to uint64_t.
12076         (sect_offset_str): New function.
12077         * dwarf2read.c (create_addrmap_from_aranges): Use
12078         sect_offset_str.
12079         (error_check_comp_unit_head): Likewise.
12080         (create_debug_type_hash_table): Likewise.
12081         (read_cutu_die_from_dwo): Likewise.
12082         (init_cutu_and_read_dies): Likewise.
12083         (init_cutu_and_read_dies_no_follow): Likewise.
12084         (process_psymtab_comp_unit_reader): Likewise.
12085         (partial_die_parent_scope): Likewise.
12086         (peek_die_abbrev): Likewise.
12087         (process_queue): Likewise.
12088         (dwarf2_physname): Likewise.
12089         (read_namespace_alias): Likewise.
12090         (read_import_statement): Likewise.
12091         (create_dwo_cu_reader): Likewise.
12092         (create_cus_hash_table): Likewise.
12093         (lookup_dwo_cutu): Likewise.
12094         (inherit_abstract_dies): Likewise.
12095         (read_func_scope): Likewise.
12096         (read_call_site_scope): Likewise.
12097         (dwarf2_add_member_fn): Likewise.
12098         (read_common_block): Likewise.
12099         (read_module_type): Likewise.
12100         (read_typedef): Likewise.
12101         (read_subrange_type): Likewise.
12102         (load_partial_dies): Likewise.
12103         (read_partial_die): Likewise.
12104         (find_partial_die): Likewise.
12105         (read_str_index): Likewise.
12106         (dwarf2_string_attr): Likewise.
12107         (build_error_marker_type): Likewise.
12108         (lookup_die_type): Likewise.
12109         (dump_die_shallow): Likewise.
12110         (follow_die_ref): Likewise.
12111         (dwarf2_fetch_die_loc_sect_off): Likewise.
12112         (dwarf2_fetch_constant_bytes): Likewise.
12113         (follow_die_sig): Likewise.
12114         (get_signatured_type): Likewise.
12115         (get_DW_AT_signature_type): Likewise.
12116         (dwarf2_find_containing_comp_unit): Likewise.
12117         (set_die_type): Likewise.
12118
12119 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12120
12121         * arch/aarch64.c: Include "common-defs.h".
12122         * arch/amd64.c: Likewise.
12123         * arch/i386.c: Likewise.
12124
12125 2018-02-21  Tom Tromey  <tom@tromey.com>
12126
12127         * value.h: (extract_field_op): Update.
12128         * eval.c (extract_field_op): Return a const char *.
12129         * expression.h (parse_expression_for_completion): Update.
12130         * completer.c (complete_expression): Update.
12131         (add_struct_fields): Make fieldname const.
12132         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12133         (mark_completion_tag, parse_exp_in_context_1): Update.
12134         (parse_expression_for_completion): Change "name" to
12135         unique_xmalloc_ptr*.
12136
12137 2018-02-21  Tom Tromey  <tom@tromey.com>
12138
12139         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12140
12141 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12142
12143         * avr-tdep.c (avr_read_pc): Change parameter type to
12144         readable_regcache.
12145         * gdbarch.sh (read_pc): Likewise.
12146         * gdbarch.c: Re-generated.
12147         * gdbarch.h: Re-generated.
12148         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12149         readable_regcache.
12150         * ia64-tdep.c (ia64_read_pc): Likewise.
12151         * mips-tdep.c (mips_read_pc): Likewise.
12152         * spu-tdep.c (spu_read_pc): Likewise.
12153
12154 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12155
12156         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12157         * regcache-dump.c: New file.
12158         * regcache.c: Move register_dump to regcache-dump.c.
12159         (maintenance_print_registers): Likewise.
12160         (maintenance_print_raw_registers): Likewise.
12161         (maintenance_print_cooked_registers): Likewise.
12162         (maintenance_print_register_groups): Likewise.
12163         (maintenance_print_remote_registers): Likewise.
12164         (_initialize_regcache): Likewise.
12165         * regcache.h (register_dump): Moved from regcache.c.
12166
12167 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12168
12169         * regcache.c (regcache::regcache): Update.
12170         (regcache::invalidate): Move it to detached_regcache::invalidate.
12171         (get_thread_arch_aspace_regcache): Update.
12172         (regcache::raw_update): Update.
12173         (regcache::cooked_read): Remove some code.
12174         (regcache::cooked_read_value): Likewise.
12175         (regcache::raw_write): Remove assert on m_readonly_p.
12176         (regcache::raw_supply_integer): Move it to
12177         detached_regcache::raw_supply_integer.
12178         (regcache::raw_supply_zeroed): Likewise.
12179         * regcache.h (detached_regcache) <raw_supply_integer>: New
12180         declaration.
12181         <raw_supply_zeroed, invalidate>: Likewise.
12182         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12183         <invalidate>: Likewise.
12184         <m_readonly_p>: Removed.
12185
12186 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12187
12188         * infcmd.c (get_return_value): Let stop_regs point to
12189         get_current_regcache.
12190         * regcache.c (regcache::regcache): Remove.
12191         (register_dump_reg_buffer): New class.
12192         (regcache_print): Adjust.
12193         * regcache.h (regcache): Remove constructors.
12194
12195 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12196
12197         * regcache.c (class register_dump): New class.
12198         (register_dump_regcache, register_dump_none): New class.
12199         (register_dump_remote, register_dump_groups): New class.
12200         (regcache_print): Update.
12201         * regcache.h (regcache_dump_what): Move it to regcache.c.
12202         (regcache) <dump>: Remove.
12203
12204 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12205
12206         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12207          reg_buffer_rw *.
12208         (jit_unwind_reg_set_impl): Call raw_supply.
12209         (jit_frame_sniffer): Use reg_buffer_rw.
12210         * record-full.c (record_full_core_regbuf): Change its type.
12211         (record_full_core_open_1): Use reg_buffer_rw.
12212         (record_full_close): Likewise.
12213         (record_full_core_fetch_registers): Use regcache->raw_supply.
12214         (record_full_core_store_registers): Likewise.
12215         * regcache.c (regcache::get_register_status): Move it to
12216         reg_buffer.
12217         (regcache_raw_set_cached_value): Remove.
12218         (regcache::raw_set_cached_value): Remove.
12219         (regcache::raw_write): Call raw_supply.
12220         (regcache::raw_supply): Move it to reg_buffer_rw.
12221         * regcache.h (regcache_raw_set_cached_value): Remove.
12222         (reg_buffer_rw): New class.
12223
12224 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12225
12226         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12227         readonly_detached_regcache.
12228         (dummy_frame_prev_register): Use regcache->cooked_read.
12229         * frame.c (frame_save_as_regcache): Change return type.
12230         (frame_pop): Update.
12231         * frame.h (frame_save_as_regcache): Update declaration.
12232         * inferior.h (get_infcall_suspend_state_regcache): Update
12233         declaration.
12234         * infrun.c (infcall_suspend_state) <registers>: use
12235         readonly_detached_regcache.
12236         (save_infcall_suspend_state): Don't use regcache_dup.
12237         (get_infcall_suspend_state_regcache): Change return type.
12238         * linux-fork.c (struct fork_info) <savedregs>: Change to
12239         readonly_detached_regcache.
12240         <pc>: New field.
12241         (fork_save_infrun_state): Don't use regcache_dup.
12242         (info_checkpoints_command): Adjust.
12243         * mi/mi-main.c (register_changed_p): Update declaration.
12244         (mi_cmd_data_list_changed_registers): Use
12245         readonly_detached_regcache.
12246         (register_changed_p): Change parameter type to
12247         readonly_detached_regcache.
12248         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12249         readonly_detached_regcache.
12250         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12251         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12252         New.
12253         (regcache::save): Move it to reg_buffer.
12254         (regcache::restore): Change parameter type.
12255         (regcache_dup): Remove.
12256         * regcache.h (reg_buffer) <save>: New method.
12257         (readonly_detached_regcache): New class.
12258         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12259         readonly_detached_regcache.
12260         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12261
12262 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12263
12264         * frame.c (frame_save_as_regcache): Use regcache method save.
12265         (frame_pop): Use regcache method restore.
12266         * infrun.c (restore_infcall_suspend_state): Likewise.
12267         * linux-fork.c (fork_load_infrun_state): Likewise.
12268         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12269         save.
12270         * regcache.c (regcache_save): Remove.
12271         (regcache::restore): More asserts.
12272         (regcache_cpy): Remove.
12273         * regcache.h (regcache_save): Remove the declaration.
12274         (regcache::restore): Move from private to public.
12275         Remove the friend declaration of regcache_cpy.
12276         (regcache_cpy): Remove declaration.
12277
12278 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12279
12280         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12281         parameter type to 'readable_regcache *'.
12282         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12283         * arm-tdep.c (arm_neon_quad_read): Likewise.
12284         (arm_pseudo_read): Likewise.
12285         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12286         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12287         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12288         * gdbarch.c: Re-generated.
12289         * gdbarch.h: Re-generated.
12290         * gdbarch.sh (pseudo_register_read): Change parameter type to
12291         'readable_regcache *'.
12292         (pseudo_register_read_value): Likewise.
12293         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12294         (h8300_pseudo_register_read): Likewise.
12295         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12296         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12297         (i386_pseudo_register_read_into_value): Likewise.
12298         (i386_pseudo_register_read_value): Likewise.
12299         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12300         declaration.
12301         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12302         * m32c-tdep.c (m32c_raw_read): Likewise.
12303         (m32c_read_flg): Likewise.
12304         (m32c_banked_register): Likewise.
12305         (m32c_banked_read): Likewise.
12306         (m32c_sb_read): Likewise.
12307         (m32c_part_read): Likewise.
12308         (m32c_cat_read): Likewise.
12309         (m32c_r3r2r1r0_read): Likewise.
12310         (m32c_pseudo_register_read): Likewise.
12311         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12312         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12313         (mep_pseudo_cr64_read): Likewise.
12314         (mep_pseudo_register_read): Likewise.
12315         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12316         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12317         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12318         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12319         (regcache::cooked_read): Likewise.
12320         (regcache::cooked_read_value): Likewise.
12321         (regcache_cooked_read_signed):
12322         (regcache::cooked_read): Likewise.
12323         * regcache.h (readable_regcache): New class.
12324         (regcache): Inherit readable_regcache.  Move some methods to
12325         readable_regcache.
12326         * rl78-tdep.c (rl78_pseudo_register_read): Change
12327         parameter type to 'readable_regcache *'.
12328         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12329         (e500_pseudo_register_read): Change parameter type to
12330         'readable_regcache *'.
12331         (dfp_pseudo_register_read): Likewise.
12332         (vsx_pseudo_register_read): Likewise.
12333         (efpr_pseudo_register_read): Likewise.
12334         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12335         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12336         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12337         (sh64_pseudo_register_read): Likewise.
12338         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12339         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12340         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12341         (spu_pseudo_register_read): Likewise.
12342         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12343         (xtensa_pseudo_register_read): Likewise.
12344
12345 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12346
12347         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12348         (regcache::arch): Move it to reg_buffer::arch.
12349         (regcache::register_buffer): Likewise.
12350         (regcache::assert_regnum): Likewise.
12351         (regcache::num_raw_registers): Likewise.
12352         * regcache.h (reg_buffer): New class.
12353         (regcache): Inherit reg_buffer.
12354
12355 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12356
12357         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12358         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12359
12360 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12361
12362         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12363
12364 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12365
12366         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12367         (SFILES): Remove common/*.c files.
12368         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12369         * common/common.host: Add common reference.
12370         * configure.ac: Likewise.
12371         * configure: Regenerate.
12372
12373 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12374
12375         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12376         (block_initialize_namespace): Use new.
12377         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12378         (dwarf2_free_objfile): Use delete.
12379         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12380         (copy_type_recursive): Use new.
12381         * gdb_obstack.h (allocate_on_obstack): New.
12382
12383 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12384
12385         PR gdb/22849
12386         * inferior.c (exit_inferior_1): Reset inf->control.
12387
12388 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12389
12390         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12391         declaration.
12392
12393 2018-02-14  Pedro Alves  <palves@redhat.com>
12394
12395         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12396         frame_cleanup_after_sniffer on exception.
12397
12398 2018-02-14  Tom Tromey  <tom@tromey.com>
12399
12400         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12401         const.
12402         (solib_bfd_open): Make pathname const.
12403         * solib.c (solib_bfd_open): Make pathname const.
12404         * solib-spu.c (spu_bfd_fopen): Make name const.
12405         (spu_bfd_open): Make pathname const.
12406         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12407         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12408
12409 2018-02-14  Tom Tromey  <tom@tromey.com>
12410
12411         * symfile.c (symfile_bfd_open): Update.
12412         * source.h (openp, source_full_path_of, find_and_open_source):
12413         Change argument type to unique_xmalloc_ptr.
12414         * source.c (openp): Take a unique_xmalloc_ptr.
12415         (source_full_path_of, find_and_open_source): Likewise.
12416         (open_source_file, symtab_to_fullname): Update.
12417         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12418         unique_xmalloc_ptr.
12419         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12420         (exec_file_find): Update.
12421         * psymtab.c (psymtab_to_fullname): Update.
12422         * nto-tdep.h (nto_find_and_open_solib): Update.
12423         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12424         unique_xmalloc_ptr.
12425         * exec.c (exec_file_attach): Update.
12426         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12427         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12428
12429 2018-02-14  Tom Tromey  <tom@tromey.com>
12430
12431         * solib.c: Include source.h.
12432         * nto-tdep.c: Include source.h.
12433         * mi/mi-cmd-env.c: Include source.h.
12434         * infcmd.c: Include source.h.
12435         * exec.c: Include source.h.
12436         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12437         (add_path, directory_switch, source_path, init_source_path): Move
12438         declarations...
12439         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12440         (add_path, directory_switch, source_path, init_source_path):
12441         ...here.
12442
12443 2018-02-14  Tom Tromey  <tom@tromey.com>
12444
12445         * solist.h (exec_file_find, solib_find): Return
12446         unique_xmalloc_ptr.
12447         (solib_bfd_fopen): Take a const char *.
12448         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12449         (exec_file_find, solib_find): Likewise.
12450         (solib_bfd_fopen): Do not take ownership of "pathname".
12451         (solib_bfd_open): Use unique_xmalloc_ptr.
12452         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12453         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12454         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12455         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12456
12457 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12458
12459         * ada-lang.c (name_match_type_from_name): Remove reference to
12460         ada_name_for_lookup in function's documentation.
12461         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12462
12463 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12464
12465         * defs.h (enum openp_flags): New enum.
12466         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12467         Move to enum openp_flags.
12468         (openp_flags): New enum flags.
12469         (openp): Change parameter type to openp_flags.
12470         * source.c (openp): Change parameter type to openp_flags.
12471         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12472         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12473
12474 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12475
12476         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12477         per-command.
12478
12479 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12480
12481         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12482         into...
12483         (class dwarf2_queue_guard): ...the destructor of this new class.
12484         (dw2_do_instantiate_symtab): Create instance of the new class
12485         dwarf2_queue_guard, remove cleanup.
12486
12487 2018-02-09  Tom Tromey  <tom@tromey.com>
12488
12489         * source.c (find_source_lines): Don't reference past the end of
12490         the vector.
12491
12492 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12493
12494         * remote.c (remote_btrace_maybe_reopen): Change error message.
12495         * btrace.c (btrace_enable): Likewise.
12496         (parse_xml_btrace): Likewise.
12497         (parse_xml_btrace_conf): Likewise.
12498
12499 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12500
12501         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12502         (linux_enable_pt, linux_enable_bts): Call
12503         diagnose_perf_event_open_fail.
12504
12505 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12506
12507         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12508         Remove parameter and change return type.  Update callers.  Move it.
12509         (linux_enable_bts, linux_enable_pt): Improve error message.
12510         (linux_enable_pt): Remove zero buffer size check.
12511         (linux_enable_btrace): Improve error messages.  Remove NULL return
12512         check.
12513
12514 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12515
12516         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12517         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12518         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12519         (linux_supports_pt, linux_supports_btrace): Remove.
12520         (linux_enable_bts): Call cpu_supports_bts.
12521         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12522         * remote.c (remote_supports_btrace): Remove.
12523         (init_remote_ops): Remove remote_supports_btrace.
12524         * target-delegates.c: Regenerated.
12525         * target.c (target_supports_btrace): Remove.
12526         * target.h (target_ops) <to_supports_btrace>: Remove
12527         (target_supports_btrace): Remove.
12528         * x86-linux-nat.c (x86_linux_create_target): Remove
12529         linux_supports_btrace.
12530
12531 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12532
12533         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12534         btrace failed.
12535         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12536         exception and use message in own exception.
12537
12538 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12539
12540         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12541         (perf_event_pt_event_type): Use gdb_file_up.
12542         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12543         scoped_fd, and scoped_mmap.
12544
12545 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12546
12547         * common/scoped_mmap.h: New.
12548         * unittests/scoped_mmap-selftest.c: New.
12549         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12550         unittests/scoped_mmap-selftest.c.
12551
12552 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12553
12554         * common/scoped_fd.h: New.
12555         * unittests/scoped_fd-selftest.c: New.
12556         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12557         unittests/scoped_fd-selftest.c.
12558
12559 2018-02-09  Tom Tromey  <tom@tromey.com>
12560
12561         * auto-load.c (auto_load_section_scripts): Use
12562         gdb::unique_xmalloc_ptr.
12563
12564 2018-02-09  Tom Tromey  <tom@tromey.com>
12565
12566         * auto-load.c (execute_script_contents): Use std::string.
12567
12568 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12569
12570         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12571         Python function, rather than a new command.
12572
12573 2018-02-08  Tom Tromey  <tom@tromey.com>
12574
12575         * solib.c (solib_find_1): Use std::string.
12576         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12577
12578 2018-02-08  Tom Tromey  <tom@tromey.com>
12579
12580         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12581
12582 2018-02-08  Tom Tromey  <tom@tromey.com>
12583
12584         * source.c (find_source_lines): Use gdb::def_vector.
12585
12586 2018-02-08  Tom Tromey  <tom@tromey.com>
12587
12588         * macrocmd.c (struct temporary_macro_definition): New.
12589         (macro_define_command): Use temporary_macro_definition.  Remove
12590         cleanups.
12591         (free_macro_definition_ptr): Remove.
12592
12593 2018-02-08  Tom Tromey  <tom@tromey.com>
12594
12595         * macroexp.c (maybe_expand): Use std::string.
12596
12597 2018-02-08  Tom Tromey  <tom@tromey.com>
12598
12599         * macroexp.c (struct macro_buffer): Add initializers for some
12600         members.
12601         (init_buffer, init_shared_buffer, free_buffer)
12602         (free_buffer_return_text): Remove.
12603         (macro_buffer): New constructors.
12604         (~macro_buffer): New destructor.
12605         (macro_buffer::set_shared): New method.
12606         (macro_buffer::resize_buffer, macro_buffer::appendc)
12607         (macro_buffer::appendmem): Now methods, not free functions.
12608         (set_token, append_tokens_without_splicing, stringify)
12609         (macro_stringify): Update.
12610         (gather_arguments): Change return type.  Remove argc_p argument,
12611         add args_ptr argument.  Use std::vector.
12612         (substitute_args): Remove argc argument.  Accept std::vector.
12613         (expand): Update.  Use std::vector.
12614         (scan, macro_expand, macro_expand_next): Update.
12615
12616 2018-02-08  Tom Tromey  <tom@tromey.com>
12617
12618         * symtab.c (default_collect_symbol_completion_matches_break_on):
12619         Use unique_xmalloc_ptr.
12620         * macroscope.h: (sal_macro_scope, user_macro_scope)
12621         (default_macro_scope): Return unique_xmalloc_ptr.
12622         * macroscope.c (sal_macro_scope, user_macro_scope)
12623         (default_macro_scope): Return unique_xmalloc_ptr.
12624         * macroexp.h (macro_expand, macro_expand_once): Return
12625         unique_xmalloc_ptr.
12626         * macroexp.c (macro_expand, macro_expand_once): Return
12627         unique_xmalloc_ptr.
12628         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12629         (info_macro_command, info_macros_command): Use
12630         unique_xmalloc_ptr.
12631         * compile/compile-c-support.c (write_macro_definitions): Use
12632         unique_xmalloc_ptr.
12633         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12634
12635 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12636
12637         * value.c (value_static_field): Assign field type instead of
12638         containing type when returning an optimized out value.
12639
12640 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12641
12642         * ft32-tdep.c (ft32_read_pc): Remove.
12643         (ft32_write_pc): Remove.
12644         (ft32_gdbarch_init): Update.
12645         * m32r-tdep.c (m32r_read_pc): Remove.
12646         (m32r_gdbarch_init): Update.
12647         * mep-tdep.c (mep_read_pc): Remove.
12648         (mep_gdbarch_init): Update.
12649         * microblaze-tdep.c (microblaze_write_pc): Remove.
12650         (microblaze_gdbarch_init): Update.
12651         * mn10300-tdep.c (mn10300_read_pc): Remove.
12652         (mn10300_write_pc): Remove.
12653         (mn10300_gdbarch_init): Update.
12654         * moxie-tdep.c (moxie_read_pc): Remove.
12655         (moxie_write_pc): Remove.
12656         (moxie_gdbarch_init): Update.
12657
12658 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12659
12660         * expprint.c (print_subexp_standard): Handle
12661         OP_F77_UNDETERMINED_ARGLIST.
12662         (dump_subexp_body_standard): Likewise.
12663
12664 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12665
12666         * target-descriptions.c (tdesc_element_visitor) Add empty
12667         implementations.
12668         (tdesc_type): Move make_gdb_type from here.
12669         (tdesc_type_builtin): Likewise.
12670         (tdesc_type_vector): Likewise.
12671         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12672         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12673         (make_gdb_type_union): Likewise.
12674         (make_gdb_type_flags): Likewise.
12675         (make_gdb_type_enum): Likewise.
12676         (make_gdb_type): New function.
12677         (tdesc_register_type): Use static make_gdb_type.
12678
12679 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12680
12681         * infcmd.c (default_print_one_register_info): Align natural-format
12682         column values consistently one under another.
12683         (pad_to_column): New function.
12684
12685 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12686
12687         * dwarf2read.c (dwarf2_physname): Move commment.
12688
12689 2018-02-01  Leszek Swirski  <leszeks@google.com>
12690
12691         * varobj.c (varobj_formatted_print_options): Allow recursive
12692         pretty printing if pretty printing is enabled.
12693
12694 2018-02-01  Leszek Swirski  <leszeks@google.com>
12695
12696         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12697         names after a structop as a filename.
12698
12699 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12700
12701         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12702         (arm_record_coproc_data_proc): Likewise.
12703
12704 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12705
12706         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12707
12708 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12709
12710         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12711         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12712
12713 2018-01-31  Pedro Alves  <palves@redhat.com>
12714
12715         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12716         * inflow.c (child_terminal_save_inferior): Wrap reference to
12717         tcgetpgrp in HAVE_TERMIOS_H.
12718         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12719         _WIN32.
12720         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12721         always iterate over all inferiors.
12722         (gdbsim_cntrl_c): Adjust.
12723         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12724
12725 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12726
12727         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12728         index type is objfile-owned if the element type is as well.
12729
12730 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12731
12732         GDB 8.1 released.
12733
12734 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12735
12736         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12737         "features/s390x-linux64.c".
12738         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12739         s390_linux32 and s390x_linux64.
12740         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12741         default tdesc.
12742         * s390-tdep.c: Include "features/s390-linux32.c" and
12743         "features/s390x-linux64.c".
12744         (s390_tdesc_valid): Add check for tdesc_has_registers.
12745         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12746         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12747         tdesc_s390x_linux64.
12748         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12749         tdesc_s390x_linux64 to...
12750         * s390-tdep.h: ...here.
12751
12752 2018-01-30  Pedro Alves  <palves@redhat.com>
12753
12754         PR gdb/13211
12755         * config.in, configure: Regenerate.
12756         * configure.ac: Check for getpgid.
12757         * go32-nat.c (go32_pass_ctrlc): New.
12758         (go32_target): Install it.
12759         * inf-child.c (inf_child_target): Install
12760         child_terminal_save_inferior, child_pass_ctrlc and
12761         child_interrupt.
12762         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12763         (inf_ptrace_target): No longer install it.
12764         * infcmd.c (interrupt_target_1): Adjust.
12765         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12766         (child_interrupt): Declare.
12767         (inferior::terminal_state): New.
12768         * inflow.c (struct terminal_info): Update comments.
12769         (inferior_process_group): Delete.
12770         (terminal_is_ours): Delete.
12771         (gdb_tty_state): New.
12772         (child_terminal_init): Adjust.
12773         (is_gdb_terminal, sharing_input_terminal_1)
12774         (sharing_input_terminal): New functions.
12775         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12776         Set the process's actual process group in the foreground if
12777         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12778         mark terminal as the inferior's if not sharing GDB's terminal.
12779         Don't check attach_flag.
12780         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12781         pass down a target_terminal_state.
12782         (child_terminal_save_inferior): New, factored out from ...
12783         (child_terminal_ours_1): ... this.  Handle
12784         target_terminal_state::is_ours_for_output.
12785         (child_interrupt, child_pass_ctrlc): New.
12786         (inflow_inferior_exit): Clear the inferior's terminal_state.
12787         (copy_terminal_info): Copy the inferior's terminal state.
12788         (_initialize_inflow): Remove reference to terminal_is_ours.
12789         * inflow.h (inferior_process_group): Delete.
12790         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12791         * procfs.c (procfs_target): Don't install procfs_interrupt.
12792         (procfs_interrupt): Delete.
12793         * remote.c (remote_serial_quit_handler): Adjust.
12794         (remote_interrupt): Remove ptid parameter.  Adjust.
12795         * target-delegates.c: Regenerate.
12796         * target.c: Include "terminal.h".
12797         (target_terminal::terminal_state): Rename to ...
12798         (target_terminal::m_terminal_state): ... this.
12799         (target_terminal::init): Adjust.
12800         (target_terminal::inferior): Adjust to per-inferior
12801         terminal_state.
12802         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12803         (target_terminal::ours, target_terminal::ours_for_output): Use
12804         target_terminal_is_ours_kind.
12805         (target_interrupt): Remove ptid parameter.  Adjust.
12806         (default_target_pass_ctrlc): Adjust.
12807         * target.h (target_ops::to_terminal_save_inferior): New field.
12808         (target_ops::to_interrupt): Remove ptid_t parameter.
12809         (target_interrupt): Remove ptid_t parameter.  Update comment.
12810         (target_pass_ctrlc): Update comment.
12811         * target/target.h (target_terminal_state): New scoped enum,
12812         factored out of ...
12813         (target_terminal::terminal_state): ... here.
12814         (target_terminal::inferior): Update comments.
12815         (target_terminal::restore_inferior): New.
12816         (target_terminal::is_inferior, target_terminal::is_ours)
12817         (target_terminal::is_ours_for_output): Adjust.
12818         (target_terminal::scoped_restore_terminal_state): Adjust to
12819         rename, and call restore_inferior() instead of inferior().
12820         (target_terminal::scoped_restore_terminal_state::m_state): Change
12821         type.
12822         (target_terminal::terminal_state): Rename to ...
12823         (target_terminal::m_terminal_state): ... this and change type.
12824
12825 2018-01-30  Pedro Alves  <palves@redhat.com>
12826
12827         * linux-nat.c (wait_for_signal): New function.
12828         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12829         directly.
12830         (async_terminal_is_ours)
12831         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12832         (linux_nat_add_target): Don't override
12833         to_terminal_inferior/to_terminal_ours.
12834
12835 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12836
12837         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12838
12839 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12840
12841         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12842         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12843         dwarf2_per_objfile_free here.
12844         (dwarf2_per_objfile_free): Remove.
12845         (_initialize_dwarf2_read): Don't register
12846         dwarf2_per_objfile_free as a registry cleanup.
12847
12848 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12849
12850         Avoid compilation errors in MinGW native builds
12851
12852         The error is triggered by including python-internal.h, and the
12853         error message is:
12854
12855              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12856                       from build-gnulib/import/math.h:27,
12857                       from d:/usr/Python26/include/pyport.h:235,
12858                       from d:/usr/Python26/include/Python.h:58,
12859                       from python/python-internal.h:94,
12860                       from python/py-arch.c:24:
12861              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12862         using ::hypot;
12863                 ^~~~~
12864
12865         This happens because Python headers define 'hypot' to expand t
12866         '_hypot' in the Windows builds.
12867         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12868         'hypoth'.  This avoids a compilation error.
12869
12870 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12871
12872         * MAINTAINERS (Write After Approval): Fix ordering.
12873
12874 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12875
12876         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12877
12878 2018-01-26  Alan Modra  <amodra@gmail.com>
12879
12880         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12881         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12882         Remove nop.  Make const.  Comment.
12883         (powerpc32_plt_stub_so_2): New.
12884         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12885         Correct count.  Update uses.
12886         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12887         Move common code reading PLT entry word.  Correct
12888         powerpc32_plt_stub PLT address calculation.
12889         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12890         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12891         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12892         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12893         (ppc64_standard_linkage8): Likewise.
12894         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12895         Correct insns description.
12896         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12897
12898 2018-01-24  Pedro Alves  <palves@redhat.com>
12899
12900         GCC PR libstdc++/83906
12901         * gdbtypes.c (operator==(const dynamic_prop &,
12902         const dynamic_prop &)): New.
12903         (operator==(const range_bounds &, const range_bounds &)): New.
12904         (check_types_equal): Use them instead of memcmp.
12905         * gdbtypes.h (operator==(const dynamic_prop &,
12906         const dynamic_prop &)): Declare.
12907         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12908         (operator==(const range_bounds &, const range_bounds &)): Declare.
12909         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12910
12911 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12912
12913         * s390-linux-tdep.c (s390_record_address_mask)
12914         (s390_record_calc_disp_common, s390_record_calc_disp)
12915         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12916         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12917         (s390_process_record): Move to s390-tdep.c.
12918         (s390_linux_init_abi_any): Adjust.
12919         * s390-tdep.c (s390_record_address_mask)
12920         (s390_record_calc_disp_common, s390_record_calc_disp)
12921         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12922         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12923         (s390_process_record): Moved from s390-linux-tdep.c
12924         (s390_gdbarch_init): Adjust.
12925
12926 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12927
12928         * s390-linux-nat.c (s390-tdep.h): New include.
12929         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12930         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12931         (ALLDEPFILES): Add s390-tdep.c.
12932         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12933         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12934         * s390-tdep.h: ...this.  New file.
12935         * s390-linux-tdep.c (s390-tdep.h): New include.
12936         (_initialize_s390_tdep): Rename to...
12937         (_initialize_s390_linux_tdep): ...this and adjust.
12938         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12939         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12940         s390-tdep.h.
12941         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12942         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12943         (s390_is_partial_instruction, s390_software_single_step)
12944         (is_non_branch_ril, s390_displaced_step_copy_insn)
12945         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12946         (s390_prologue_data, s390_addr, s390_store, s390_load)
12947         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12948         (s390_register_call_saved, s390_guess_tracepoint_registers)
12949         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12950         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12951         (s390_pseudo_register_name, s390_pseudo_register_type)
12952         (s390_pseudo_register_read, s390_pseudo_register_write)
12953         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12954         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12955         (s390_addr_bits_remove, s390_address_class_type_flags)
12956         (s390_address_class_type_flags_to_name)
12957         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12958         (s390_function_arg_float, s390_function_arg_vector)
12959         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12960         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12961         (s390_frame_align, s390_register_return_value, s390_return_value)
12962         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12963         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12964         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12965         (s390_trad_frame_prev_register, s390_unwind_cache)
12966         (s390_prologue_frame_unwind_cache)
12967         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12968         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12969         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12970         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12971         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12972         (s390_frame_base_address, s390_local_base_address)
12973         (s390_frame_base, s390_gcc_target_options)
12974         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12975         (s390_validate_reg_range, s390_tdesc_valid)
12976         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12977         * s390-tdep.c: ...this.  New file.
12978
12979 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12980
12981         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12982         (s390_process_record, s390_gdbarch_tdep_alloc)
12983         (s390_linux_init_abi_any): Use/set new hook.
12984
12985 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12986
12987         * s390-linux-tdep.c (osabi.h): New include.
12988         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12989         (s390_linux_init_abi_any): New functions.
12990         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12991
12992 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12993
12994         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12995         tdesc_has_registers check
12996
12997 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12998
12999         * s390-linux-tdep.c (s390_tdesc_valid): New function.
13000         (s390_validate_reg_range): New macro.
13001         (s390_gdbarch_init): Adjust.
13002
13003 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13004
13005         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
13006         (s390_gdbarch_tdep_alloc): Adjust.
13007         (s390_gdbarch_init): Adjust.
13008
13009 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13010
13011         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
13012         <have_tdb>: Change type to bool.
13013         (s390_gdbarch_tdep_alloc): Adjust.
13014         (s390_gdbarch_init): Adjust.
13015
13016 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13017
13018         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
13019         (gdbarch_tdep) <have_upper, have_vx>: New fields.
13020         (s390_gdbarch_tdep_alloc): New function.
13021         (s390_gdbarch_init): Allocate tdep at start and use its fields
13022         instead of separate variables.
13023
13024 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13025
13026         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
13027         when looking for cached gdbarch and add comment for remaining.
13028
13029 2018-01-22  Pedro Alves  <palves@redhat.com>
13030             Sergio Durigan Junior  <sergiodj@redhat.com>
13031
13032         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
13033         case.
13034
13035 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
13036
13037         * MAINTAINERS: Update my company e-mail address.
13038
13039 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13040
13041         * regcache.c (cooked_write_test): New function.
13042         (_initialize_regcache): Register the test.
13043
13044 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13045
13046         * ia64-tdep.c (ia64_pseudo_register_read): Call
13047         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13048         * m32c-tdep.c (m32c_cat_read): Likewise.
13049         (m32c_r3r2r1r0_read): Likewise.
13050         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13051         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13052
13053 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13054
13055         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13056         method raw_read instead of regcache_raw_read.
13057         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13058         * arm-tdep.c (arm_neon_quad_read): Likewise.
13059         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13060         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13061         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13062         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13063         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13064         (i386_pseudo_register_read_into_value): Likewise.
13065         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13066         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13067         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13068         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13069         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13070         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13071         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13072         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13073         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13074
13075 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13076
13077         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13078         * configure.tgt: Remove target mt.
13079         * mt-tdep.c: Remove.
13080         * regcache.c (cooked_read_test): Remove the check for mt.
13081
13082 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13083
13084         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13085         instead of gdbarch_pseudo_register_read_value.
13086
13087 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13088
13089         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13090         language is Ada.
13091
13092 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13093
13094         * linespec.c (create_sals_line_offset): Remove code that preserved
13095         the symtab_and_line's line number.
13096
13097 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13098
13099         * varobj.c (varobj_create): Don't set valid_block when creating a
13100         floating varobj.
13101
13102 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13103
13104         * varobj.c (varobj_create): Remove out of date comment.
13105
13106 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13107
13108         PR mi/20395
13109         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13110         updating innermost block.
13111         * parse.c (innermost_block_tracker::update): Take extra type
13112         parameter, and check types match before updating innermost block.
13113         (write_dollar_variable): Update innermost block for registers.
13114         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13115         (innermost_block_tracker::innermost_block_tracker): Initialise
13116         m_types member.
13117         (innermost_block_tracker::reset): Take type parameter.
13118         (innermost_block_tracker::update): Take type parameter, and pass
13119         type through as needed.
13120         (innermost_block_tracker::m_types): New member.
13121         * varobj.c (varobj_create): Pass type when reseting innermost
13122         block.
13123
13124 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13125
13126         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13127         * ada-lang.c (resolve_subexp): Likewise.
13128         * breakpoint.c (set_breakpoint_condition) Likewise.
13129         (watch_command_1) Likewise.
13130         * c-exp.y (variable): Likewise.
13131         * d-exp.y (PrimaryExpression): Likewise.
13132         * f-exp.y (variable): Likewise.
13133         * go-exp.y (variable): Likewise.
13134         * m2-exp.y (variable): Likewise.
13135         * objfiles.c (objfile::~objfile): Likewise.
13136         * p-exp.y (variable): Likewise.
13137         * parse.c (innermost_block): Change type.
13138         * parser-defs.h (class innermost_block_tracker): New.
13139         (innermost_block): Change to innermost_block_tracker.
13140         * printcmd.c (display_command): Switch to innermost_block API.
13141         (do_one_display): Likewise.
13142         * rust-exp.y (do_one_display): Likewise.
13143         * symfile.c (clear_symtab_users): Likewise.
13144         * varobj.c (varobj_create): Switch to innermost_block API, replace
13145         use of innermost_block with block stored on varobj object.
13146
13147 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13148
13149         * expression.h (innermost_block): Remove declaration.
13150         * varobj.c: Add 'parser-defs.h' include.
13151
13152 2018-01-19  Tom Tromey  <tom@tromey.com>
13153
13154         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13155         symbols in the static and global blocks.
13156
13157 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13158
13159         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13160         gdb_ptrace.h, and move including gdb_wait.h ...
13161         * nat/linux-ptrace.h: ... to here.
13162
13163 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13164
13165         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13166         inf_ptrace_detach_success.
13167         (inf_ptrace_detach_success): Add inferior parameter, use it
13168         instead of inferior_ptid, pass it to detach_inferior.
13169         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13170         parameter.
13171         * inferior.c (detach_inferior): Add overload that takes an
13172         inferior object.
13173         * inferior.h (detach_inferior): Likewise.
13174         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13175         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13176         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13177
13178 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13179
13180         * target.h (struct target_ops) <to_detach>: Add inferior
13181         parameter.
13182         (target_detach): Likewise.
13183         * target.c (dispose_inferior): Pass inferior down.
13184         (target_detach): Pass inferior down.  Assert that it is equal to
13185         the current inferior.
13186         * aix-thread.c (aix_thread_detach): Pass inferior down.
13187         * corefile.c (core_file_command): Pass current_inferior() down.
13188         * corelow.c (core_detach): Add inferior parameter.
13189         * darwin-nat.c (darwin_detach): Likewise.
13190         * gnu-nat.c (gnu_detach): Likewise.
13191         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13192         * infcmd.c (detach_command): Pass current_inferior() down to
13193         target_detach.
13194         * infrun.c (follow_fork_inferior): Pass parent_inf to
13195         target_detach.
13196         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13197         target_detach.
13198         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13199         * linux-thread-db.c (thread_db_detach): Likewise.
13200         * nto-procfs.c (procfs_detach): Likewise.
13201         * procfs.c (procfs_detach): Likewise.
13202         * record.c (record_detach): Likewise.
13203         * record.h (struct inferior): Forward-declare.
13204         (record_detach): Add inferior parameter.
13205         * remote-sim.c (gdbsim_detach): Likewise.
13206         * remote.c (remote_detach_1): Likewise.
13207         (remote_detach): Likewise.
13208         (extended_remote_detach): Likewise.
13209         * sol-thread.c (sol_thread_detach): Likewise.
13210         * target-debug.h (target_debug_print_inferior_p): New macro.
13211         * target-delegates.c: Re-generate.
13212         * top.c (kill_or_detach): Pass inferior down to target_detach.
13213         * windows-nat.c (windows_detach): Add inferior parameter.
13214
13215 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13216
13217         * target.h (struct target_ops) <to_detach>: Remove args
13218         parameter.
13219         (target_detach): Likewise.
13220         * target.c (dispose_inferior): Adjust.
13221         (target_detach): Remove args parameter, adjust.
13222         * aix-thread.c (aix_thread_detach): Adjust.
13223         * corefile.c (core_file_command): Adjust.
13224         * corelow.c (core_detach): Adjust.
13225         * darwin-nat.c (darwin_detach): Adjust.
13226         * gnu-nat.c (gnu_detach): Adjust.
13227         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13228         * infcmd.c (detach_command): Adjust
13229         * infrun.c (follow_fork_inferior): Adjust.
13230         (handle_vfork_child_exec_or_exit): Adjust.
13231         * linux-fork.c (linux_fork_detach): Remove args parameter.
13232         * linux-fork.h (linux_fork_detach): Likewise.
13233         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13234         * linux-thread-db.c (thread_db_detach): Likewise.
13235         * nto-procfs.c (procfs_detach): Likewise.
13236         * procfs.c (procfs_detach): Likewise.
13237         (do_detach): Remove signo parameter.
13238         * record.c (record_detach): Remove args parameter.
13239         * record.h (record_detach): Likewise.
13240         * remote-sim.c (gdbsim_detach): Likewise.
13241         * remote.c (remote_detach_1): Likewise.
13242         (remote_detach): Likewise.
13243         (extended_remote_detach): Likewise.
13244         * sol-thread.c (sol_thread_detach): Likewise.
13245         * target-delegates.c: Re-generate.
13246         * top.c (struct qt_args) <args>: Remove field.
13247         (kill_or_detach): Don't pass args.
13248         (quit_force): Don't set args.
13249         * windows-nat.c (windows_detach): Remove args parameter.
13250
13251 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13252
13253         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13254         (arm_linux_init_abi): Install it.
13255
13256 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13257
13258         * osabi.c (gdb_osabi_names): Extend the regexp for
13259         arm-linux-gnueabihf.
13260
13261 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13262
13263         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13264         m_abbrevs.
13265         (abbrev_table::add_abbrev): Update.
13266         (abbrev_table::lookup_abbrev): Update.
13267
13268 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13269
13270         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13271
13272 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13273
13274         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13275         to "std::string".
13276
13277 2018-01-17  Tom Tromey  <tom@tromey.com>
13278
13279         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13280
13281 2018-01-17  Tom Tromey  <tom@tromey.com>
13282
13283         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13284         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13285         (create_array_type_with_stride): Update.
13286         * dwarf2read.c (set_die_type): Update.
13287
13288 2018-01-17  Tom Tromey  <tom@tromey.com>
13289
13290         * dwarf2read.c (delayed_method_info): Remove typedef.
13291         (dwarf2_cu::method_info): Now a std::vector.
13292         (add_to_method_list): Update.
13293         (free_delayed_list): Remove.
13294         (compute_delayed_physnames): Update.
13295         (process_full_comp_unit, process_full_type_unit): Clear the method
13296         list.  Remove cleanups.
13297         (psymtab_include_file_name): Add name_holder parameter.  Use
13298         unique_xmalloc_ptr.
13299         (dwarf_decode_lines): Update.
13300
13301 2018-01-17  Tom Tromey  <tom@tromey.com>
13302             Simon Marchi  <simon.marchi@ericsson.com>
13303
13304         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13305         (dwarf2_per_objfile::free_cached_comp_units)
13306         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13307         (init_cutu_and_read_dies_no_follow): Update.
13308         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13309         (dwarf2_cu::~dwarf2_cu): New.
13310         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13311         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13312
13313 2018-01-17  Tom Tromey  <tom@tromey.com>
13314             Simon Marchi  <simon.marchi@ericsson.com>
13315
13316         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13317         (struct die_reader_specs) <abbrev_table>: New member.
13318         (struct abbrev_table): Add constructor.
13319         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13320         <abbrev_obstack>: Now an auto_obstack.
13321         (abbrev_table_up): New typedef.
13322         (init_cu_die_reader): Add abbrev_table parameter.
13323         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13324         Add result_dwo_abbrev_table.
13325         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13326         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13327         Update.
13328         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13329         parameter.
13330         (skip_children): Update.
13331         (abbrev_table::alloc_abbrev): Rename from
13332         abbrev_table_alloc_abbrev.
13333         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13334         (abbrev_table::lookup_abbrev): Rename from
13335         abbrev_table_lookup_abbrev.
13336         (abbrev_table_read_table): Return abbrev_table_up.
13337         (abbrev_table_free, abbrev_table_free_cleanup)
13338         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13339         (load_partial_dies): Update.
13340
13341 2018-01-17  Tom Tromey  <tom@tromey.com>
13342
13343         * dwarf2read.c (dwarf2_compute_name): Update comment.
13344         (read_func_scope, read_variable): Update.
13345         (new_symbol): Remove.
13346         (new_symbol_full): Rename to new_symbol.
13347
13348 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13349
13350         PR gdb/16577
13351         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13352         a warning instead of throwing an error, set section size to 0 and return
13353         NULL.
13354         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13355
13356 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13357
13358         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13359         std::string.
13360         (linux_ptrace_attach_fail_reason_string): Likewise.
13361         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13362         Likewise.
13363         (linux_ptrace_attach_fail_reason_string): Likewise.
13364         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13365
13366 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13367
13368         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13369
13370 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13371
13372         PR gdb/21559
13373         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13374         checking for fs_base/gs_base fields in struct user_regs_struct.
13375         * configure: Regenerate.
13376
13377 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13378
13379         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13380         function.
13381         (aarch64_linux_init_abi): Install it to gdbarch hook
13382         gcc_target_options.
13383
13384 2018-01-15  Pedro Alves  <palves@redhat.com>
13385
13386         * common/signals-state-save-restore.c
13387         (save_original_signals_state): Fix typos.
13388
13389 2017-01-12  Tom Tromey  <tom@tromey.com>
13390             Sergio Durigan Junior  <sergiodj@redhat.com>
13391
13392         * Makefile.in (install-only): Install gdb-add-index.
13393
13394 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13395
13396         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13397
13398 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13399
13400         * infrun.c (keep_going_pass_signal): Clear step-over info when
13401         insert_breakpoints fails.
13402
13403 2018-01-11  Pedro Alves  <palves@redhat.com>
13404
13405         PR gdb/22583
13406         * infrun.c (resume): Rename to ...
13407         (resume_1): ... this.
13408         (resume): Reimplement as wrapper around resume_1.
13409
13410 2018-01-11  Pedro Alves  <palves@redhat.com>
13411
13412         PR remote/22597
13413         * remote.c (remote_parse_stop_reply): Default to the last-set
13414         general thread instead of to 'magic_null_ptid'.
13415
13416 2018-01-10  Pedro Alves  <palves@redhat.com>
13417
13418         * language.h (language_get_symbol_name_matcher): Rename ...
13419         (get_symbol_name_matcher): ... this.
13420         * language.c (language_get_symbol_name_matcher): Ditto.
13421         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13422         callers adjusted.
13423
13424 2018-01-10  Pedro Alves  <palves@redhat.com>
13425
13426         PR gdb/22670
13427         * dwarf2read.c
13428         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13429         Adjust to use language_get_symbol_name_matcher instead of
13430         language_defn::la_get_symbol_name_matcher.
13431         * language.c (language_get_symbol_name_matcher): If in Ada mode
13432         and the lookup name is a verbatim match, return Ada's matcher.
13433         * language.h (language_get_symbol_name_matcher): Adjust comment.
13434         (ada_lookup_name_info::verbatim_p):: New method.
13435
13436 2018-01-10  Pedro Alves  <palves@redhat.com>
13437
13438         PR gdb/22670
13439         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13440         minsym's language is language_auto or language_cplus, pass down
13441         language_ada instead.
13442         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13443
13444 2018-01-10  Pedro Alves  <palves@redhat.com>
13445
13446         PR gdb/22670
13447         * minsyms.c (linkage_name_str): New function.
13448         (iterate_over_minimal_symbols): Use it.
13449
13450 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13451
13452         * NEWS: Document that 'info proc' now works on FreeBSD.
13453
13454 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13455
13456         * configure.ac: Check for kinfo_getfile in libutil.
13457         * configure: Regenerate.
13458         * config.in: Regenerate.
13459         * fbsd-nat.c: Include "fbsd-tdep.h".
13460         (fbsd_fetch_cmdline): New.
13461         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13462         rather than calling error.
13463         (fbsd_info_proc): New.
13464         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13465         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13466         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13467
13468 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13469
13470         * fbsd-nat.c (struct free_deleter): Remove.
13471         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13472
13473 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13474
13475         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13476         NULL for an empty pathname.
13477
13478 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13479
13480         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13481         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13482         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13483         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13484         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13485         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13486         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13487         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13488         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13489         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13490         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13491         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13492         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13493         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13494         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13495
13496 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13497
13498         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13499         (gnu_xfer_auxv): New function.
13500         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13501         TARGET_OBJECT_AUXV.
13502
13503 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13504             Simon Marchi  <simon.marchi@ericsson.com>
13505
13506         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13507         common/selftest.c.
13508         (COMMON_OBS): Remove selftest.o.
13509         * configure.ac: Append selftest-arch.c and common/selftest.c to
13510         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13511         * configure: Re-generated.
13512         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13513         GDB_SELF_TEST.
13514         (maintenance_info_selftests): Likewise.
13515
13516 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13517
13518         * ada-valprint.c (val_print_packed_array_elements): Use
13519         proper number of elements when printing an array indexed
13520         by an enumeration type.
13521
13522 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13523
13524         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13525         (dw2_get_file_names_reader): Adjust.
13526         (lookup_dwo_signatured_type): Adjust.
13527         (lookup_dwp_signatured_type): Adjust.
13528         (lookup_signatured_type): Adjust.
13529         (create_type_unit_group): Adjust.
13530         (get_type_unit_group): Adjust.
13531         (process_psymtab_comp_unit_reader): Adjust.
13532         (build_type_psymtabs_reader): Adjust.
13533         (scan_partial_symbols): Adjust.
13534         (add_partial_symbol): Adjust.
13535         (add_partial_subprogram): Adjust.
13536         (peek_die_abbrev): Adjust.
13537         (fixup_go_packaging): Adjust.
13538         (process_imported_unit_die): Adjust.
13539         (dwarf2_compute_name): Adjust.
13540         (dwarf2_physname): Adjust.
13541         (read_import_statement): Adjust.
13542         (handle_DW_AT_stmt_list): Adjust.
13543         (read_file_scope): Adjust.
13544         (read_func_scope): Adjust.
13545         (read_lexical_block_scope): Adjust.
13546         (read_call_site_scope): Adjust.
13547         (read_variable): Adjust.
13548         (dwarf2_rnglists_process): Adjust.
13549         (dwarf2_ranges_process): Adjust.
13550         (dwarf2_ranges_read): Adjust.
13551         (dwarf2_get_pc_bounds): Adjust.
13552         (dwarf2_record_block_ranges): Adjust.
13553         (dwarf2_add_field): Adjust.
13554         (dwarf2_add_member_fn): Adjust.
13555         (read_structure_type): Adjust.
13556         (process_structure_scope): Adjust.
13557         (read_enumeration_type): Adjust.
13558         (read_array_type): Adjust.
13559         (mark_common_block_symbol_computed): Adjust.
13560         (read_common_block): Adjust.
13561         (read_namespace_type): Adjust.
13562         (read_namespace): Adjust.
13563         (read_module_type): Adjust.
13564         (read_tag_pointer_type): Adjust.
13565         (read_tag_ptr_to_member_type): Adjust.
13566         (read_tag_string_type): Adjust.
13567         (read_subroutine_type): Adjust.
13568         (read_typedef): Adjust.
13569         (read_base_type): Adjust.
13570         (attr_to_dynamic_prop): Adjust.
13571         (read_subrange_type): Adjust.
13572         (read_unspecified_type): Adjust.
13573         (dwarf2_read_abbrevs): Adjust.
13574         (load_partial_dies): Adjust.
13575         (read_partial_die): Adjust.
13576         (find_partial_die): Adjust.
13577         (guess_partial_die_structure_name): Adjust.
13578         (fixup_partial_die): Adjust.
13579         (read_attribute_value): Adjust.
13580         (read_addr_index): Adjust.
13581         (read_addr_index_from_leb128): Adjust.
13582         (read_str_index): Adjust.
13583         (dwarf2_string_attr): Adjust.
13584         (get_debug_line_section): Adjust.
13585         (dwarf_decode_line_header): Adjust.
13586         (lnp_state_machine::check_line_address): Adjust.
13587         (dwarf_decode_lines_1): Adjust.
13588         (dwarf_decode_lines): Adjust.
13589         (dwarf2_start_symtab): Adjust.
13590         (var_decode_location): Adjust.
13591         (new_symbol_full): Adjust.
13592         (dwarf2_const_value_data): Adjust.
13593         (dwarf2_const_value_attr): Adjust.
13594         (dwarf2_const_value): Adjust.
13595         (die_type): Adjust.
13596         (die_containing_type): Adjust.
13597         (build_error_marker_type): Adjust.
13598         (lookup_die_type): Adjust.
13599         (guess_full_die_structure_name): Adjust.
13600         (anonymous_struct_prefix): Adjust.
13601         (determine_prefix): Adjust.
13602         (dwarf2_name): Adjust.
13603         (follow_die_ref_or_sig): Adjust.
13604         (follow_die_offset): Adjust.
13605         (follow_die_ref): Adjust.
13606         (follow_die_sig_1): Adjust.
13607         (follow_die_sig): Adjust.
13608         (get_signatured_type): Adjust.
13609         (get_DW_AT_signature_type): Adjust.
13610         (decode_locdesc): Adjust.
13611         (dwarf_decode_macros): Adjust.
13612         (cu_debug_loc_section): Adjust.
13613         (fill_in_loclist_baton): Adjust.
13614         (dwarf2_symbol_mark_computed): Adjust.
13615         (init_one_comp_unit): Don't assign
13616         dwarf2_cu::dwarf2_per_objfile.
13617         (set_die_type): Adjust.
13618
13619 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13620
13621         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13622         <dwarf2_per_objfile>: New field.
13623         (dwarf2_per_objfile): Remove global.
13624         (get_dwarf2_per_objfile): New function.
13625         (set_dwarf2_per_objfile): New function.
13626         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13627         dwarf2_per_objfile.
13628         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13629         (read_abbrev_offset): Likewise.
13630         (read_indirect_string): Likewise.
13631         (read_indirect_line_string): Likewise.
13632         (read_indirect_string_at_offset): Likewise.
13633         (read_indirect_string_from_dwz): Likewise.
13634         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13635         dwarf2_per_objfile.
13636         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13637         (create_all_comp_units): Change objfile parameter to
13638         dwarf2_per_objfile.
13639         (create_all_type_units): Likewise.
13640         (process_queue): Add dwarf2_per_objfile parameter.
13641         (read_and_check_comp_unit_head): Likewise.
13642         (lookup_dwo_unit_in_dwp): Likewise.
13643         (get_dwp_file): Likewise.
13644         (process_cu_includes): Likewise.
13645         (struct free_dwo_file_cleanup_data): New struct.
13646         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13647         set_dwarf2_per_objfile.
13648         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13649         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13650         context, adjust calls.
13651         (dw2_instantiate_symtab): Likewise.
13652         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13653         (dw2_get_cu): Likewise.
13654         (create_cu_from_index_list): Change objfile parameter to
13655         dwarf2_per_objfile.
13656         (create_cus_from_index_list): Get dwarf2_per_objfile from
13657         context, adjust calls.
13658         (create_cus_from_index): Likewise.
13659         (create_signatured_type_table_from_index): Change objfile
13660         parameter to dwarf2_per_objfile.
13661         (create_signatured_type_table_from_debug_names): Change objfile
13662         parameter to dwarf2_per_objfile.
13663         (create_addrmap_from_index): Likewise.
13664         (create_addrmap_from_aranges): Likewise.
13665         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13666         (dw2_setup): Remove.
13667         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13668         context.
13669         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13670         get_dwarf2_per_objfile.
13671         (dw2_forget_cached_source_info): Likewise.
13672         (dw2_map_symtabs_matching_filename): Likewise.
13673         (struct dw2_symtab_iterator) <index>: Remove.
13674         <dwarf2_per_objfile>: New field.
13675         (dw2_symtab_iter_init): Replace index parameter with
13676         dwarf2_per_objfile.
13677         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13678         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13679         (dw2_print_stats): Likewise.
13680         (dw2_dump): Likewise.
13681         (dw2_expand_symtabs_for_function): Likewise.
13682         (dw2_expand_all_symtabs): Likewise.
13683         (dw2_expand_symtabs_with_fullname): Likewise.
13684         (dw2_expand_marked_cus): Replace index and objfile parameters
13685         with dwarf2_per_objfile.
13686         (dw_expand_symtabs_matching_file_matcher): Add
13687         dwarf2_per_objfile parameter and adjust calls.
13688         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13689         adjust calls.
13690         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13691         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13692         adjust calls.
13693         (create_cus_from_debug_names_list): Replace objfile parameter
13694         with dwarf2_per_objfile and adjust calls.
13695         (create_cus_from_debug_names): Likewise.
13696         (dwarf2_read_debug_names): Likewise.
13697         (mapped_debug_names::namei_to_name): Adjust call.
13698         (dw2_debug_names_iterator::next): Likewise.
13699         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13700         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13701         (dw2_debug_names_dump): Likewise.
13702         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13703         (dw2_debug_names_expand_symtabs_matching): Likewise.
13704         (dwarf2_initialize_objfile): Likewise.
13705         (dwarf2_build_psymtabs): Likewise.
13706         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13707         this_cu.
13708         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13709         (read_and_check_comp_unit_head): Likewise.
13710         (read_abbrev_offset): Likewise.
13711         (create_debug_type_hash_table): Likewise.
13712         (create_debug_types_hash_table): Likewise.
13713         (create_all_type_units): Replace objfile parameter with
13714         dwarf2_per_objfile.
13715         (add_type_unit): Add dwarf2_per_objfile parameter.
13716         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13717         with dwarf2_per_objfile.
13718         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13719         (lookup_dwp_signatured_type): Likewise.
13720         (lookup_signatured_type): Likewise.
13721         (read_cutu_die_from_dwo): Likewise.
13722         (init_tu_and_read_dwo_dies): Likewise.
13723         (init_cutu_and_read_dies): Likewise.
13724         (init_cutu_and_read_dies_no_follow): Likewise.
13725         (allocate_type_unit_groups_table): Add objfile parameter.
13726         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13727         (get_type_unit_group): Likewise.
13728         (process_psymtab_comp_unit): Update call.
13729         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13730         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13731         (print_tu_stats): Likewise.
13732         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13733         in void* parameter.
13734         (build_type_psymtabs): Change objfile parameter to
13735         dwarf2_per_objfile.
13736         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13737         passed in void* parameter.
13738         (process_skeletonless_type_units): Change objfile parameter to
13739         dwarf2_per_objfile.
13740         (set_partial_user): Likewise.
13741         (dwarf2_build_psymtabs_hard): Likewise.
13742         (read_comp_units_from_section): Likewise.
13743         (create_all_comp_units): Likewise.
13744         (scan_partial_symbols): Update calls.
13745         (add_partial_symbol): Likewise.
13746         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13747         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13748         (process_queue): Add dwarf2_per_objfile parameter.
13749         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13750         (compute_compunit_symtab_includes): Likewise.
13751         (process_cu_includes): Add dwarf2_per_objfile parameter.
13752         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13753         (process_full_type_unit): Likewise.
13754         (process_imported_unit_die): Update call.
13755         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13756         (read_file_scope): Likewise.
13757         (allocate_dwo_file_hash_table): Add objfile parameter.
13758         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13759         (create_cus_hash_table): Likewise.
13760         (create_dwp_hash_table): Likewise.
13761         (create_dwo_unit_in_dwp_v1): Likewise.
13762         (create_dwp_v2_section): Likewise.
13763         (create_dwo_unit_in_dwp_v2): Likewise.
13764         (lookup_dwo_unit_in_dwp): Likewise.
13765         (try_open_dwop_file): Likewise.
13766         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13767         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13768         cleanup to include a reference to dwarf2_per_objfile.
13769         (open_dwp_file): Add dwarf2_per_objfile parameter.
13770         (open_and_init_dwp_file): Likewise.
13771         (get_dwp_file): Likewise.
13772         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13773         (queue_and_load_all_dwo_tus): Update call.
13774         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13775         data.
13776         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13777         (dwarf2_ranges_process): Likewise.
13778         (dwarf2_get_pc_bounds): Likewise.
13779         (mark_common_block_symbol_computed): Likewise.
13780         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13781         (dwarf2_read_abbrevs): Update call.
13782         (read_partial_die): Use dwarf2_per_objfile from cu.
13783         (find_partial_die): Likewise.
13784         (fixup_partial_die): Likewise.
13785         (read_attribute_value): Likewise.
13786         (read_indirect_string_at_offset_from): Add objfile parameter.
13787         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13788         parameter.
13789         (read_indirect_string_from_dwz): Add objfile parameter.
13790         (read_indirect_string): Add objfile parameter.
13791         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13792         (read_addr_index): Use dwarf2_per_objfile from cu.
13793         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13794         call dw2_setup.
13795         (read_str_index): Use dwarf2_per_objfile from cu.
13796         (get_debug_line_section): Likewise.
13797         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13798         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13799         (new_symbol_full): Use dwarf2_per_objfile from cu.
13800         (build_error_marker_type): Likewise.
13801         (lookup_die_type): Likewise.
13802         (determine_prefix): Likewise.
13803         (follow_die_offset): Likewise.
13804         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13805         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13806         (dwarf2_fetch_die_type_sect_off): Likewise.
13807         (dwarf2_get_die_type): Likewise.
13808         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13809         (get_signatured_type): Likewise.
13810         (get_DW_AT_signature_type): Likewise.
13811         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13812         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13813         (cu_debug_loc_section): Likewise.
13814         (fill_in_loclist_baton): Likewise.
13815         (dwarf2_symbol_mark_computed): Likewise.
13816         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13817         dwarf2_per_objfile.
13818         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13819         parameter.
13820         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13821         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13822         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13823         (set_die_type): Use dwarf2_free_objfile from cu.
13824         (get_die_type_at_offset): Likewise.
13825         (dwarf2_per_objfile_free): Don't assign global variable.
13826         (debug_names) <constructor>: Add dwarf2_per_objfile
13827         parameter, update m_debugstrlookup construction.
13828         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13829         parameter.
13830         <m_dwarf2_per_objfile>: New field.
13831         <lookup>: Use m_dwarf2_per_objfile.
13832         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13833         (psyms_seen_size): Likewise.
13834         (write_gdbindex): Replace objfile parameter with
13835         dwarf2_per_objfile.
13836         (write_debug_names): Likewise.
13837         (write_psymtabs_to_index): Likewise.
13838         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13839         calls.
13840
13841 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13842
13843         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13844         <dwarf2_per_objfile>: New field.
13845         (struct dwarf2_per_cu_data) <objfile>: Remove.
13846         <dwarf2_per_objfile>: New field.
13847         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13848         of objfile.
13849         (create_signatured_type_table_from_index): Likewise.
13850         (create_debug_type_hash_table): Likewise.
13851         (fill_in_sig_entry_from_dwo_entry): Likewise.
13852         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13853         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13854         objfile.
13855         (create_partial_symtab): Access objfile through
13856         dwarf2_per_objfile.
13857         (process_psymtab_comp_unit_reader): Likewise.
13858         (read_comp_units_from_section): Likewise.
13859         (scan_partial_symbols): Likewise.
13860         (add_partial_symbol): Likewise.
13861         (add_partial_subprogram): Likewise.
13862         (peek_die_abbrev): Likewise.
13863         (fixup_go_packaging): Likewise.
13864         (process_full_comp_unit): Likewise.
13865         (process_full_type_unit): Likewise.
13866         (process_imported_unit_die): Likewise.
13867         (dwarf2_compute_name): Likewise.
13868         (dwarf2_physname): Likewise.
13869         (read_import_statement): Likewise.
13870         (create_cus_hash_table): Assign dwarf2_physname instead of
13871         objfile.
13872         (read_func_scope): Access objfile through dwarf2_per_objfile.
13873         (read_lexical_block_scope): Likewise.
13874         (read_call_site_scope): Likewise.
13875         (read_variable): Likewise.
13876         (dwarf2_rnglists_process): Likewise.
13877         (dwarf2_ranges_process): Likewise.
13878         (dwarf2_ranges_read): Likewise.
13879         (dwarf2_record_block_ranges): Likewise.
13880         (dwarf2_add_field): Likewise.
13881         (dwarf2_add_member_fn): Likewise.
13882         (read_structure_type): Likewise.
13883         (process_structure_scope): Likewise.
13884         (read_enumeration_type): Likewise.
13885         (read_array_type): Likewise.
13886         (read_common_block): Likewise.
13887         (read_namespace_type): Likewise.
13888         (read_namespace): Likewise.
13889         (read_module_type): Likewise.
13890         (read_tag_pointer_type): Likewise.
13891         (read_tag_ptr_to_member_type): Likewise.
13892         (read_tag_string_type): Likewise.
13893         (read_subroutine_type): Likewise.
13894         (read_typedef): Likewise.
13895         (read_base_type): Likewise.
13896         (attr_to_dynamic_prop): Likewise.
13897         (read_subrange_type): Likewise.
13898         (read_unspecified_type): Likewise.
13899         (load_partial_dies): Likewise.
13900         (read_partial_die): Likewise.
13901         (find_partial_die): Likewise.
13902         (guess_partial_die_structure_name): Likewise.
13903         (fixup_partial_die): Likewise.
13904         (read_attribute_value): Likewise.
13905         (read_addr_index_from_leb128): Likewise.
13906         (dwarf2_read_addr_index): Likewise.
13907         (dwarf2_string_attr): Likewise.
13908         (lnp_state_machine::check_line_address): Likewise.
13909         (dwarf_decode_lines_1): Likewise.
13910         (dwarf_decode_lines): Likewise.
13911         (dwarf2_start_symtab): Likewise.
13912         (var_decode_location): Likewise.
13913         (new_symbol_full): Likewise.
13914         (dwarf2_const_value_data): Likewise.
13915         (dwarf2_const_value_attr): Likewise.
13916         (dwarf2_const_value): Likewise.
13917         (die_type): Likewise.
13918         (die_containing_type): Likewise.
13919         (lookup_die_type): Likewise.
13920         (guess_full_die_structure_name): Likewise.
13921         (anonymous_struct_prefix): Likewise.
13922         (dwarf2_name): Likewise.
13923         (follow_die_ref_or_sig): Likewise.
13924         (follow_die_offset): Likewise.
13925         (follow_die_ref): Likewise.
13926         (dwarf2_fetch_die_loc_sect_off): Likewise.
13927         (dwarf2_fetch_constant_bytes): Likewise.
13928         (dwarf2_fetch_die_type_sect_off): Likewise.
13929         (dwarf2_get_die_type): Likewise.
13930         (follow_die_sig): Likewise.
13931         (decode_locdesc): Likewise.
13932         (dwarf2_per_cu_objfile): Likewise.
13933         (dwarf2_per_cu_text_offset): Likewise.
13934         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13935         objfile.
13936         (set_die_type): Access objfile through
13937         dwarf2_per_objfile.
13938
13939 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13940
13941         * valprint.c (converted_character_d): Remove typedef.
13942         (DEF_VEC_O (converted_character_d)): Remove.
13943         (count_next_character): Use std::vector.
13944         (print_converted_chars_to_obstack): Likewise.
13945         (generic_printstr): Likewise.
13946
13947 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13948
13949         * xml-support.h (struct gdb_xml_value): Add constructor.
13950         <value>: Change type to unique_xmalloc_ptr.
13951         (gdb_xml_value_s): Remove typedef.
13952         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13953         (gdb_xml_element_start_handler): Change parameter type to
13954         std::vector.
13955         (xml_find_attribute): Likewise.
13956         * xml-support.c (xml_find_attribute): Change parameter type to
13957         std::vector and adjust.
13958         (gdb_xml_values_cleanup): Remove.
13959         (gdb_xml_parser::start_element): Adjust to std::vector.
13960         (xinclude_start_include): Change paraeter type to std::vector
13961         and adjust.
13962         * btrace.c (check_xml_btrace_version): Likewise.
13963         (parse_xml_btrace_block): Likewise.
13964         (parse_xml_btrace_pt_config_cpu): Likewise.
13965         (parse_xml_btrace_pt): Likewise.
13966         (parse_xml_btrace_conf_bts): Likewise.
13967         (parse_xml_btrace_conf_pt): Likewise.
13968         * memory-map.c (memory_map_start_memory): Likewise.
13969         (memory_map_start_property): Likewise.
13970         * osdata.c (osdata_start_osdata): Likewise.
13971         (osdata_start_item): Likewise.
13972         (osdata_start_column): Likewise.
13973         * remote.c (start_thread): Likewise.
13974         * solib-aix.c (library_list_start_library): Likewise.
13975         (library_list_start_list): Likewise.
13976         * solib-svr4.c (library_list_start_library): Likewise.
13977         (svr4_library_list_start_list): Likewise.
13978         * solib-target.c (library_list_start_segment): Likewise.
13979         (library_list_start_section): Likewise.
13980         (library_list_start_library): Likewise.
13981         (library_list_start_list): Likewise.
13982         * tracepoint.c (traceframe_info_start_memory): Likewise.
13983         (traceframe_info_start_tvar): Likewise.
13984         * xml-syscall.c (syscall_start_syscall): Likewise.
13985         * xml-tdesc.c (tdesc_start_target): Likewise.
13986         (tdesc_start_feature): Likewise.
13987         (tdesc_start_reg): Likewise.
13988         (tdesc_start_union): Likewise.
13989         (tdesc_start_struct): Likewise.
13990         (tdesc_start_flags): Likewise.
13991         (tdesc_start_enum): Likewise.
13992         (tdesc_start_field): Likewise.
13993         (tdesc_start_enum_value): Likewise.
13994         (tdesc_start_vector): Likewise.
13995
13996 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13997
13998         * extension.h (struct xmethod_worker) <clone>: Remove.
13999         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
14000         Remove.
14001         (python_xmethod_worker::clone): Remove.
14002         * valops.c (find_overload_match): Use std::move instead of
14003         clone.
14004
14005 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14006
14007         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
14008         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
14009         <free_xmethod_worker_data>: Remove.
14010         <get_matching_xmethod_workers>: Chance VEC to std::vector.
14011         <get_xmethod_arg_types>: Remove.
14012         <get_xmethod_result_type>: Remove.
14013         <invoke_xmethod>: Remove.
14014         * extension.c (new_xmethod_worker): Remove.
14015         (clone_xmethod_worker): Remove.
14016         (get_matching_xmethod_workers): Return void, pass std::vector by
14017         pointer.
14018         (get_xmethod_arg_types): Rename to...
14019         (xmethod_worker::get_arg_types): ... this, and adjust.
14020         (get_xmethod_result_type): Rename to...
14021         (xmethod_worker::get_result_type): ... this, and adjust.
14022         (invoke_xmethod): Remove.
14023         (free_xmethod_worker): Remove.
14024         (free_xmethod_worker_vec): Remove.
14025         * extension.h (enum ext_lang_rc): Move here from
14026         extension-priv.h.
14027         (struct xmethod_worker): Add constructor and destructor.
14028         <data>: Remove.
14029         <value>: Remove.
14030         <invoke, clone, do_get_result_type, do_get_arg_types>: New
14031         virtual pure methods.
14032         <get_arg_types, get_result_type>: New methods.
14033         (xmethod_worker_ptr): Remove typedef.
14034         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
14035         (xmethod_worker_vec): Remove typedef.
14036         (xmethod_worker_up): New typedef.
14037         (invoke_xmethod): Remove.
14038         (clone_xmethod_worker): Remove.
14039         (free_xmethod_worker): Remove.
14040         (free_xmethod_worker_vec): Remove.
14041         (get_xmethod_arg_types): Remove.
14042         (get_xmethod_result_type): Remove.
14043         * valops.c (find_method_list): Use std::vector, don't use
14044         intermediate vector.
14045         (value_find_oload_method_list): Use std::vector.
14046         (find_overload_match): Use std::vector.
14047         (find_oload_champ): Use std::vector.
14048         * value.c (value_free): Use operator delete.
14049         (value_of_xmethod): Rename to...
14050         (value_from_xmethod): ... this.  Don't assign
14051         xmethod_worker::value, take rvalue-reference.
14052         (result_type_of_xmethod): Adjust.
14053         (call_xmethod): Adjust.
14054         * value.h: Include extension.h.
14055         (struct xmethod_worker): Don't forward-declare.
14056         (value_of_xmethod): Rename to...
14057         (value_from_xmethod): ... this, take rvalue-reference.
14058         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14059         (struct python_xmethod_worker): ... this, add constructor and
14060         destructor.
14061         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14062         (gdbpy_free_xmethod_worker_data): Rename to...
14063         (python_xmethod_worker::~python_xmethod_worker): ... this and
14064         adjust.
14065         (gdbpy_clone_xmethod_worker_data): Rename to...
14066         (python_xmethod_worker::clone): ... this and adjust.
14067         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14068         temporary vector.
14069         (gdbpy_get_xmethod_arg_types): Rename to...
14070         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14071         (gdbpy_get_xmethod_result_type): Rename to...
14072         (python_xmethod_worker::do_get_result_type): ... this and
14073         adjust.
14074         (gdbpy_invoke_xmethod): Rename to...
14075         (python_xmethod_worker::invoke): ... this and adjust.
14076         (new_python_xmethod_worker): Rename to...
14077         (python_xmethod_worker::python_xmethod_worker): ... this and
14078         adjust.
14079         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14080         Remove.
14081         (gdbpy_free_xmethod_worker_data): Remove.
14082         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14083         (gdbpy_get_xmethod_arg_types): Remove.
14084         (gdbpy_get_xmethod_result_type): Remove.
14085         (gdbpy_invoke_xmethod): Remove.
14086         * python/python.c (python_extension_ops): Remove obsolete
14087         callbacks.
14088
14089 2018-01-05  Pedro Alves  <palves@redhat.com>
14090
14091         PR gdb/18653
14092         * common/signals-state-save-restore.c
14093         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14094         find a custom handler preinstalled, instead of internal erroring.
14095         But only warn if !quiet.
14096         * common/signals-state-save-restore.h
14097         (save_original_signals_state): New parameter 'quiet'.
14098         * main.c (captured_main_1): Move save_original_signals_state call
14099         after option handling, and pass QUIET.
14100
14101 2018-01-05  Pedro Alves  <palves@redhat.com>
14102
14103         * spu-tdep.c (spu_catch_start): Pass
14104         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14105
14106 2018-01-05  Pedro Alves  <palves@redhat.com>
14107
14108         PR gdb/22670
14109         * ada-lang.c (literal_symbol_name_matcher): New function.
14110         (ada_get_symbol_name_matcher): Use it for
14111         symbol_name_match_type::SEARCH_NAME.
14112         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14113         it down instead of assuming symbol_name_match_type::FULL.
14114         * block.h (block_lookup_symbol): New parameter 'match_type'.
14115         * c-valprint.c (print_unpacked_pointer): Use
14116         lookup_symbol_search_name instead of lookup_symbol.
14117         * compile/compile-object-load.c (get_out_value_type): Pass down
14118         symbol_name_match_type::SEARCH_NAME.
14119         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14120         symbol_name_match_type::FULL.
14121         * cp-support.c (cp_get_symbol_name_matcher): Handle
14122         symbol_name_match_type::SEARCH_NAME.
14123         * infrun.c (insert_exception_resume_breakpoint): Use
14124         lookup_symbol_search_name.
14125         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14126         * psymtab.c (maintenance_check_psymtabs): Use
14127         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14128         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14129         SYMBOL_SEARCH_NAME.
14130         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14131         if symbol_name_match_type::SEARCH_NAME.
14132         (lookup_symbol_in_language): Pass down
14133         symbol_name_match_type::FULL.
14134         (lookup_symbol_search_name): New.
14135         (lookup_language_this): Pass down
14136         symbol_name_match_type::SEARCH_NAME.
14137         (lookup_symbol_aux, lookup_local_symbol): New parameter
14138         'match_type'.  Pass it down.
14139         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14140         (lookup_symbol_search_name): New declaration.
14141         (lookup_symbol_in_block): New 'match_type' parameter.
14142
14143 2018-01-05  Pedro Alves  <palves@redhat.com>
14144
14145         PR gdb/22670
14146         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14147         ada_lookup_symbol.
14148         (ada_lookup_symbol): Reimplement in terms of
14149         ada_lookup_symbol_list, bits factored out from
14150         ada_lookup_encoded_symbol.
14151
14152 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14153
14154         * ada-exp.y (write_object_renaming): When subscripting an array
14155         using a symbol as the index, pass the block in call to
14156         ada_lookup_encoded_symbol when looking that symbol up.
14157
14158 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14159
14160         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14161         TYPE_INDEX_TYPE.
14162
14163 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14164
14165         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14166         the case where VALUE_LVAL (val0) is not lval_memory.
14167
14168 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14169
14170         * ada-valprint.c (print_optional_low_bound): Handle
14171         character-indexed array printing like boolean-indexed array
14172         printing.
14173
14174 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14175
14176         * NEWS: Create a new section for the next release branch.
14177         Rename the section of the current branch, now that it has
14178         been cut.
14179
14180 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14181
14182         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14183         * version.in: Bump version to 8.1.50.DATE-git.
14184
14185 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14186
14187         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14188         Add field.
14189         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14190         Add field.
14191         (default_exception_support_info) <catch_handlers_sym>: Add field.
14192         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14193         (ada_exception_name_addr_1): Add "catch handlers" handling.
14194         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14195         Update all callers.
14196         (create_excep_cond_exprs) <ex>: Add parameter.
14197         (re_set_exception): Update create_excep_cond_exprs call.
14198         (print_it_exception, print_one_exception, print_mention_exception)
14199         (print_recreate_exception): Add "catch handler" handling.
14200         (allocate_location_catch_handlers, re_set_catch_handlers)
14201         (check_status_catch_handlers, print_it_catch_handlers)
14202         (print_one_catch_handlers, print_mention_catch_handlers)
14203         (print_recreate_catch_handlers): New function.
14204         (catch_handlers_breakpoint_ops): New variable.
14205         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14206         Add parameter.  Add "catch handler" handling.
14207         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14208         Add "catch handler" handling.
14209         (ada_exception_catchpoint_cond_string): Add "catch handler"
14210         handling.
14211         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14212         call.
14213         (catch_ada_handlers_command): New function.
14214         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14215         operations structure.
14216         (_initialize_ada_language): Add "catch handlers" command entry.
14217         * NEWS: Document "catch handlers" feature.
14218
14219 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14220
14221         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14222         account when creating the array type of the slice.
14223         (ada_value_slice): Likewise.
14224
14225 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14226
14227         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14228         New enum value.
14229         (create_array_type_with_stride): Add byte_stride_prop parameter.
14230         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14231         New parameter.  Update all callers in this file.
14232         (array_type_has_dynamic_stride): New function.
14233         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14234         of arrays with dynamic byte strides.
14235         * dwarf2read.c (read_array_type): Add support for dynamic
14236         DW_AT_byte_stride attributes.
14237
14238 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14239
14240         * dwarf2read.c (read_unspecified_type): Treat
14241         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14242
14243 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14244
14245         Update copyright year range in all GDB files.
14246
14247 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
14248
14249         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14250         and gdb/testsuite/gdb.base/step-line.c.
14251
14252 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14253
14254         * copyright.py (main): Dump the contents of
14255         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14256         even if BY_HAND is empty.
14257
14258 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14259
14260         * top.c (print_gdb_version): Update Copyright year in version
14261         message.
14262
14263 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14264
14265         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14266
14267 For older changes see ChangeLog-2017.
14268 \f
14269 Local Variables:
14270 mode: change-log
14271 left-margin: 8
14272 fill-column: 74
14273 version-control: never
14274 coding: utf-8
14275 End: