56645e960fcfff7ed519332e557ea83f88b3b426
[external/binutils.git] / gdb / ChangeLog
1 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2
3         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
4         case with explicit breakpoint kind.
5         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
6         'additional_info' and related logic.
7         (riscv_debug_breakpoints): New variable.
8         (riscv_breakpoint_kind_from_pc): Use the length of the existing
9         instruction to determine the breakpoint kind.
10         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
11         flag.  Update description of 'set/show riscv
12         use-compressed-breakpoints' flag.
13
14 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
15
16         (NEWS): Mention changes to frame related commands.
17         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
18         (add_prefix_cmd_suppress_notification): New function.
19         (add_com_suppress_notification): Call
20         add_cmd_suppress_notification.
21         * command.h (add_cmd_suppress_notification): Declare.
22         (add_prefix_cmd_suppress_notification): Declare.
23         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
24         (parse_frame_specification): Moved from stack.c, with
25         simplification to handle a single argument.
26         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
27         switch to the selected frame.  Add a header comment.
28         * stack.c: Remove 'safe-ctype.h' include.
29         (find_frame_for_function): Add declaration.
30         (find_frame_for_address): New function.
31         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
32         (frame_selection_by_function_completer): New function.
33         (info_frame_command): Rename to...
34         (info_frame_command_core): ...this, and update parameter types.
35         (select_frame_command): Rename to...
36         (select_frame_command_core): ...this, and update parameter types.
37         (frame_command): Rename to...
38         (frame_command_core): ...this, and update parameter types.
39         (class frame_command_helper): New class to wrap implementations of
40         frame related sub-commands.
41         (frame_apply_cmd_list): New static global.
42         (frame_cmd_list): Make static.
43         (select_frame_cmd_list): New global for sub-commands.
44         (info_frame_cmd_list): New global for sub-commands.
45         (_initialize_stack): Register sub-commands for 'frame',
46         'select-frame', and 'info frame'.  Update 'frame apply' commands
47         to use frame_apply_cmd_list.  Move function local static
48         frame_apply_list to file static frame_apply_cmd_list for
49         consistency.
50         * stack.h (select_frame_command): Delete declarationn.
51         (select_frame_for_mi): Declare new function.
52
53 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
54
55         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
56         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
57         and NOP.
58
59 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
60
61         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
62
63 2018-09-26  Tom Tromey  <tom@tromey.com>
64
65         * valops.c (auto_abandon): Remove dead code.
66
67 2018-09-26  Tom Tromey  <tom@tromey.com>
68
69         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
70
71 2018-09-24  Tom Tromey  <tom@tromey.com>
72
73         * common/pathstuff.c (get_standard_cache_dir): Make
74         "xdg_cache_home" and "home" const.
75         * top.c (init_history): Make "tmpenv" const.
76         * main.c (get_init_files): Make "homedir" const.
77
78 2018-09-23  Tom Tromey  <tom@tromey.com>
79
80         PR python/18852:
81         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
82
83 2018-09-23  Tom Tromey  <tom@tromey.com>
84
85         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
86         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
87         * python/python-internal.h (gdbpy_handle_exception): Declare.
88         * python/py-utils.c (gdbpy_handle_exception): New function.
89
90 2018-09-23  Tom Tromey  <tom@tromey.com>
91
92         PR python/17284:
93         * python/py-type.c (typy_template_argument): Check for negative
94         argument number.
95
96 2018-09-23  Tom Tromey  <tom@tromey.com>
97
98         PR python/14062:
99         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
100
101 2018-09-23  Tom Tromey  <tom@tromey.com>
102
103         PR python/18170:
104         * python/py-value.c (valpy_int): Allow conversion from pointer
105         type.
106
107 2018-09-23  Tom Tromey  <tom@tromey.com>
108
109         PR python/20126:
110         * python/py-value.c (valpy_int): Respect type sign.
111
112 2018-09-23  Tom Tromey  <tom@tromey.com>
113
114         PR python/18352;
115         * python/py-value.c (valpy_float): Allow conversions from int or
116         char.
117         (valpy_int, valpy_long): Allow conversions from float.
118
119 2018-09-23  Tom Tromey  <tom@tromey.com>
120
121         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
122         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
123
124 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
125
126         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
127         __sighndlr.
128         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
129
130 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
131
132         * windows-nat.c (windows_nat_target::wait): Remove a spurious
133         target_terminal::ours().
134
135 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
136
137         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
138         of vl to ULONGEST.
139
140 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
141
142         * breakpoint.c (update_inserted_breakpoint_locations): Remove
143         redundant condition.
144
145 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
146
147         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
148
149         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
150         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
151         * sol-thread.c (ps_pdmodel): Don't guard definition.
152
153         * procfs.c: Fix formatting.
154
155         * procfs.c (sysset_t_alloc): Remove.
156         (create_procinfo): Use XNEW instead of sysset_t_alloc.
157         (procfs_debug_inferior): Likewise.
158         (procfs_set_exec_trap): Likewise.
159         (proc_set_traced_sysentry): Don't allocate argp dynamically.
160         (proc_set_traced_sysexit): Likewise.
161
162         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
163         (dead_procinfo): Likewise.
164         (proc_warn): Likewise.
165         (proc_error): Likewise.
166         (proc_get_LDT_entry): Likewise.
167         (do_attach): Likewise.
168         (procfs_target::pid_to_str): Likewise.
169         (iterate_over_mappings): Likewise.
170
171         * procfs.c (create_procinfo): Fix ARI warning.
172         (proc_get_status): Likewise.
173         (proc_stop_process): Likewise.
174         (proc_run_process): Likewise.
175         (proc_kill): Likewise.
176         (proc_get_LDT_entry): Likewise.
177         (procfs_find_LDT_entry): Likewise.
178         (proc_update_threads): Likewise.
179         (proc_iterate_over_threads): Likewise.
180         (do_attach): Likewise.
181         (procfs_xfer_memory): Likewise.
182         (invalidate_cache): Likewise.
183         (procfs_target::resume): Likewise.
184         (procfs_init_inferior): Likewise.
185         (procfs_set_exec_trap): Likewise.
186         (procfs_target::thread_alive): Likewise.
187         (procfs_target::pid_to_exec_file): Likewise.
188         (iterate_over_mappings): Likewise.
189         (procfs_target::make_corefile_notes): Likewise.
190         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
191
192         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
193         (procfs_find_LDT_entry): Likewise.
194         * sol-thread.c (ps_lgetLDT): Likewise.
195
196 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
197
198         PR tdep/17903
199         * procfs.c (procfs_target): Declare pid_to_exec_file.
200         (procfs_target::pid_to_exec_file): New.
201
202 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
203
204         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
205         renaming.
206         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
207         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
208
209 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
210
211         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
212         (supply_fpregset, fill_fpregset): Move ...
213         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
214         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
215         Remove references to ioctl-based procfs.
216         Include <sys/reg.h>.
217         Remove PR_MODEL_NATIVE guards.
218         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
219         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
220
221 2018-09-19  Xavier Roirand  <roirand@adacore.com>
222
223         PR gdb/20981:
224         * solib-darwin.c (darwin_get_dyld_bfd): New function.
225         (darwin_solib_get_all_image_info_addr_at_init): Update call.
226         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
227
228 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
229
230         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
231         (fbsd_print_sockaddr_in6): Likewise.
232
233 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
234             Chris January  <chris.january@arm.com>
235
236         * eval.c (skip_undetermined_arglist): Skip argument list helper.
237         (evaluate_subexp_standard): Return a dummy type when
238         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
239         OP_F77_UNDETERMINED_ARGLIST case.
240         * expression.h (enum noside): Update comment.
241
242 2018-09-19  George Vasick <george.vasick@oracle.com>
243
244         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
245
246 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
247             April Chin <april.chin@oracle.com>
248             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
249
250         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
251         uint_t lwpid_t.
252         (create_procinfo): Print pids in /proc without leading zeros.
253
254 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
255
256         * nios2-tdep.c (nios2_gcc_target_options): New.
257         (nios2_gdb_arch_init): Install new hook.
258
259 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
260
261         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
262         New file.
263         * update-gnulib.sh: Apply patch.
264         * configure: Re-generate.
265
266 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
267
268         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
269         description.  Make "info proc" command descriptions more
270         consistent.
271
272 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
273
274         * NEWS: Mention 'info proc files' command.
275
276 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
277
278         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
279         descriptors for IP_FILES and IP_ALL.
280
281 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
282
283         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
284         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
285         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
286         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
287         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
288         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
289         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
290         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
291         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
292         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
293         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
294         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
295         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
296         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
297         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
298         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
299         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
300         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
301         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
302         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
303         (struct fbsd_sockaddr_un): New types.
304         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
305         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
306         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
307         (fbsd_core_info_proc_files): New functions.
308         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
309         IP_ALL.
310         * fbsd-tdep.h (fbsd_info_proc_files_header)
311         (fbsd_info_proc_files_entry): New.
312
313 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
314
315         * defs.h (enum info_proc_what) [IP_FILES]: New value.
316         * infcmd.c (info_proc_cmd_files): New function.
317         (_initialize_infcmd): Register 'info proc files' command.
318
319 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
320
321         * gnulib/aclocal-m4-deps.mk: Re-generate.
322         * gnulib/aclocal.m4: Re-generate.
323         * gnulib/config.in: Re-generate.
324         * gnulib/configure: Re-generate.
325         * gnulib/import/Makefile.am: Re-generate.
326         * gnulib/import/Makefile.in: Re-generate.
327         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
328         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
329         * gnulib/import/arpa_inet.in.h: New file.
330         * gnulib/import/inet_ntop.c: New file.
331         * gnulib/import/m4/arpa_inet_h.m4: New file.
332         * gnulib/import/m4/inet_ntop.m4: New file.
333         * gnulib/import/m4/netinet_in_h.m4: New file.
334         * gnulib/import/m4/socklen.m4: New file.
335         * gnulib/import/m4/sockpfaf.m4: New file.
336         * gnulib/import/m4/stdalign.m4: New file.
337         * gnulib/import/m4/sys_uio_h.m4: New file.
338         * gnulib/import/netinet_in.in.h: New file.
339         * gnulib/import/stdalign.in.h: New file.
340         * gnulib/import/sys_socket.c: New file.
341         * gnulib/import/sys_socket.in.h: New file.
342         * gnulib/import/sys_uio.in.h: New file.
343         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
344         module.
345
346 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
347
348         * gnulib/aclocal-m4-deps.mk: New file.
349         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
350         deterministically.
351
352 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
353
354         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
355         KVE_PATH.
356
357 2018-09-18  Tom Tromey  <tom@tromey.com>
358
359         * compile/compile-object-load.c (struct
360         link_hash_table_cleanup_data): Add constructor and destructor.
361         Use DISABLE_COPY_AND_ASSIGN.
362         (~link_hash_table_cleanup_data): Rename from
363         link_hash_table_free.  Now a destructor.
364         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
365
366 2018-09-18  Tom Tromey  <tom@tromey.com>
367
368         * compile/compile-object-run.c (do_module_cleanup): Use delete.
369         * compile/compile-object-load.c (struct munmap_list): Move to
370         header file.
371         (munmap_list::add): Rename from munmap_list_add; rewrite.
372         (munmap_list::~munmap_list): Rename from munmap_list_free.
373         (munmap_listp_free_cleanup): Remove.
374         (compile_object_load): Update.
375         * compile/compile-object-load.h (struct munmap_list): Move from
376         compile-object-load.c.  Rewrite.
377
378 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
379
380         * aarch64-tdep.c (pass_in_v): Use register size.
381         (aarch64_extract_return_value): Likewise.
382         (aarch64_store_return_value): Likewise.
383
384 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
385
386         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
387         rlim_t.
388
389 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
390
391         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
392         Fix short help line.
393
394 2018-09-17  Tom Tromey  <tom@tromey.com>
395
396         PR python/20445:
397         * configure: Rebuild.
398         * configure.ac: Conditionally use -DNDEBUG for Python.
399
400 2018-09-17  Tom Tromey  <tom@tromey.com>
401
402         * configure: Rebuild.
403         * configure.ac: Use gmp as a library dependency when checking for
404         mpfr.
405
406 2018-09-17  Pedro Alves  <palves@redhat.com>
407
408         * python/py-inferior.c (find_inferior_object): Delete.
409
410 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
411
412         * compile/compile-cplus-types.c
413         (compile_cplus_instance::enter_scope): Don't use new_scope after
414         std::move.
415
416 2018-09-17  Tom Tromey  <tom@tromey.com>
417
418         * common/pathstuff.c (get_standard_cache_dir): Use
419         ~/Library/Caches on macOS.
420         * common/pathstuff.h (get_standard_cache_dir): Update comment.
421
422 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
423
424         PR python/23669
425         * breakpoint.c (commands_cmd_element): New.
426         (_initialize_breakpoint): Assign commands_cmd_element.
427         * breakpoint.h (commands_cmd_element): New.
428         * cli/cli-script.c (while_cmd_element, if_command,
429         define_cmd_element): New.
430         (command_name_equals): Remove.
431         (process_next_line): Compare commands by pointer, not by name.
432         (_initialize_cli_script): Assign the various cmd_list_element
433         variables.
434         * compile/compile.c (compile_cmd_element): New.
435         (_initialize_compile): Assign compile_cmd_element.
436         * compile/compile.h (compile_cmd_element): New.
437         * guile/guile.c (guile_cmd_element): New.
438         (install_gdb_commands): Assign guile_cmd_element.
439         * guile/guile.h (guile_cmd_element): New.
440         * python/python.c (python_cmd_element): New.
441         (_initialize_python): Assign python_cmd_element.
442         * python/python.h (python_cmd_element): New.
443         * tracepoint.c (while_stepping_cmd_element): New.
444         (_initialize_tracepoint): Assign while_stepping_cmd_element.
445         * tracepoint.h (while_stepping_cmd_element): New.
446
447 2018-09-17  Tom Tromey  <tom@tromey.com>
448
449         * infrun.c (save_infcall_suspend_state): Return
450         infcall_suspend_state_up.
451         (save_infcall_control_state): Return infcall_control_state_up.
452         * inferior.h (save_infcall_suspend_state)
453         (save_infcall_control_state): Declare later.  Return unique
454         pointers.
455
456 2018-09-17  Tom Tromey  <tom@tromey.com>
457
458         * infrun.c (struct stop_context): Declare constructor,
459         destructor, "changed" method.
460         (stop_context::stop_context): Rename from save_stop_context.
461         (stop_context::~stop_context): Rename from
462         release_stop_context_cleanup.
463         (normal_stop): Update.
464         (stop_context::changed): Rename from stop_context_changed.  Return
465         bool.
466
467 2018-09-17  Tom Tromey  <tom@tromey.com>
468
469         * inferior.h (struct infcall_suspend_state_deleter): New.
470         (infcall_suspend_state_up): New typedef.
471         (struct infcall_control_state_deleter): New.
472         (infcall_control_state_up): New typedef.
473         (make_cleanup_restore_infcall_suspend_state)
474         (make_cleanup_restore_infcall_control_state): Don't declare.
475         * infcall.c (call_function_by_hand_dummy): Update.
476         * infrun.c (do_restore_infcall_suspend_state_cleanup)
477         (make_cleanup_restore_infcall_suspend_state): Remove.
478         (do_restore_infcall_control_state_cleanup)
479         (make_cleanup_restore_infcall_control_state): Remove.
480
481 2018-09-17  Tom Tromey  <tom@tromey.com>
482
483         * gdbthread.h (struct thread_control_state): Add initializer.
484         (class thread_info) <control>: Remove initializer.
485         * inferior.h (struct inferior_control_state): Add initializer.
486         (class inferior) <control>: Remove initializer.
487         (exit_inferior_1): Update.
488         * infrun.c (struct infcall_control_state): Add constructors.
489         (save_infcall_control_state): Use new.
490         (restore_infcall_control_state, discard_infcall_control_state):
491         Use delete.
492
493 2018-09-17  Tom Tromey  <tom@tromey.com>
494
495         * infrun.c (struct infcall_suspend_state) <registers>: Now a
496         unique_ptr.
497         <siginfo_data>: Now a unique_xmalloc_ptr.
498         (save_infcall_suspend_state, restore_infcall_suspend_state)
499         (discard_infcall_suspend_state)
500         (get_infcall_suspend_state_regcache): Update.
501
502 2018-09-17  Tom Tromey  <tom@tromey.com>
503
504         * gdbthread.h (struct thread_suspend_state): Add initializers.
505         (class thread_info) <suspend>: Remove initializer.
506         * infrun.c (struct infcall_suspend_state): Add initializers.
507         (save_infcall_suspend_state): Use new.
508         (discard_infcall_suspend_state): Use delete.
509
510 2018-09-16  Tom Tromey  <tom@tromey.com>
511
512         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
513         Remove.
514         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
515         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
516         (py_varobj_iter_new): Likewise.
517         (py_varobj_get_iterator): Use gdbpy_ref.
518
519 2018-09-16  Tom Tromey  <tom@tromey.com>
520
521         * python/py-threadevent.c (py_get_event_thread): Simplify.
522         * python/py-inferior.c (infpy_thread_from_thread_handle):
523         Return immediately after calling thread_to_thread_object.  Use
524         Py_RETURN_NONE.
525         (thread_to_thread_object): Set the exception on a NULL return.
526
527 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
528
529         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
530
531 2018-09-16  Tom Tromey  <tom@tromey.com>
532
533         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
534         Remove.
535
536 2018-09-16  Tom Tromey  <tom@tromey.com>
537
538         * python/python-internal.h (thread_to_thread_object): Change
539         return type.
540         * python/py-inferior.c (thread_to_thread_object): Return a new
541         reference.
542         (infpy_thread_from_thread_handle): Update.
543         * python/py-infthread.c (gdbpy_selected_thread): Update.
544         * python/py-stopevent.c (create_stop_event_object): Update.
545         * python/py-threadevent.c (py_get_event_thread): Return a new
546         reference.
547         (py_get_event_thread): Update.
548         * python/py-event.h (py_get_event_thread): Change return type.
549         * python/py-continueevent.c (create_continue_event_object):
550         Update.
551
552 2018-09-16  Tom Tromey  <tom@tromey.com>
553
554         * python/py-progspace.c (pspy_get_objfiles): Update.
555         * python/python-internal.h (objfile_to_objfile_object): Change
556         return type.
557         * python/py-newobjfileevent.c (create_new_objfile_event_object):
558         Update.
559         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
560         Update.
561         * python/python.c (gdbpy_get_current_objfile): Update.
562         (gdbpy_objfiles): Update.
563         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
564         Update.
565         (objfile_to_objfile_object): Return a new reference.
566         * python/py-symtab.c (stpy_get_objfile): Update.
567         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
568         Update.
569
570 2018-09-16  Tom Tromey  <tom@tromey.com>
571
572         * python/py-inferior.c (infpy_get_progspace): Update.
573         * python/python-internal.h (pspace_to_pspace_object): Change
574         return type.
575         * python/py-newobjfileevent.c
576         (create_clear_objfiles_event_object): Update.
577         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
578         Update.
579         * python/python.c (gdbpy_get_current_progspace): Update.
580         (gdbpy_progspaces): Update.
581         * python/py-progspace.c (pspace_to_pspace_object): Return a new
582         reference.
583         * python/py-objfile.c (objfpy_get_progspace): Update.
584         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
585         Update.
586
587 2018-09-16  Tom Tromey  <tom@tromey.com>
588
589         * python/lib/gdb/__init__.py (current_progspace, objfiles)
590         (solib_name, block_for_pc, find_pc_line): New functions.
591         (execute_unwinders): Update.
592         * python/py-block.c (gdbpy_block_for_pc): Remove.
593         * python/py-inferior.c (infpy_get_progspace): New function.
594         (inferior_object_getset) <progspace>: Add.
595         * python/py-progspace.c (pspy_objfiles): Rewrite.
596         (pspy_solib_name, pspy_block_for_pc)
597         (pspy_find_pc_line, pspy_is_valid): New functions.
598         (progspace_object_methods): Add entries for solib_name,
599         block_for_pc, find_pc_line, is_valid.
600         * python/python-internal.h (gdbpy_block_for_pc)
601         (build_objfiles_list): Don't declare.
602         * python/python.c: Don't include solib.h.
603         (gdbpy_solib_name, gdbpy_find_pc_line)
604         (gdbpy_get_current_progspace, build_objfiles_list)
605         (gdbpy_objfiles): Remove.
606         (GdbMethods) <current_progspace, objfiles, block_for_pc,
607         solib_name, find_pc_line>: Remove entries.
608
609 2018-09-16  Tom Tromey  <tom@tromey.com>
610
611         * top.c (new_ui_command): Use GNU style for metasyntactic
612         variables.
613         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
614         variables.
615         * maint.c (maintenance_translate_address): Remove "<>" around
616         text.
617         * interps.c (interpreter_exec_cmd): Use GNU style for
618         metasyntactic variables.
619         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
620         metasyntactic variables.
621         * tracepoint.c (tfind_range_command): Use GNU style for
622         metasyntactic variables.
623         (tfind_outside_command): Likewise.
624         (_initialize_tracepoint): Likewise.
625         * remote.c (extended_remote_target::create_inferior): Use GNU
626         style for metasyntactic variables.
627         * sparc64-tdep.c (adi_examine_command): Use GNU style for
628         metasyntactic variables.
629         (adi_assign_command): Likewise.
630
631 2018-09-16  Tom Tromey  <tom@tromey.com>
632
633         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
634         metasyntactic variables.  Print message if no disassembler options
635         are available.
636
637 2018-09-15  Tom Tromey  <tom@tromey.com>
638
639         * infcmd.c (get_inferior_args): Return const char *.
640         * inferior.h (get_inferior_args): Return type now const.
641         * linux-tdep.c (linux_fill_prpsinfo): Update.
642         * procfs.c (procfs_target::make_corefile_notes): Update.
643
644 2018-09-07  Tom Tromey  <tom@tromey.com>
645
646         * python/python.c (execute_gdb_command): Call bpstat_do_actions
647         inside the TRY.
648
649 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
650
651         * nios2-tdep.c (nios2_type_align): New.
652         (nios2_gdb_arch_init): Install type_align hook.
653
654 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
655
656         * eval.c (fake_method::fake_method): Call xzalloc directly for a
657         type that is neither object file owned, nor gdbarch owned.
658         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
659         gdbarch is non-NULL.
660         (alloc_type_instance): Allocate non-objfile owned types on the
661         gdbarch obstack.
662         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
663         using TYPE_ALLOC to ensure memory is allocated on the correct
664         obstack.
665         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
666         obstack, or the gdbarch obstack.
667         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
668
669 2018-09-14  Tom Tromey  <tom@tromey.com>
670
671         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
672         block.
673
674 2018-09-14  Tom Tromey  <tom@tromey.com>
675
676         * nat/fork-inferior.c (get_startup_shell): Remove "static".
677
678 2018-09-13  Tom Tromey  <tom@tromey.com>
679
680         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
681         static.
682
683 2018-09-13  Tom Tromey  <tom@tromey.com>
684
685         * exec.c (try_open_exec_file): Use std::string.
686
687 2018-09-13  Tom Tromey  <tom@tromey.com>
688
689         * utils.h (gdb_bfd_errmsg): Return std::string.
690         * exec.c (exec_file_attach): Update.
691         * compile/compile-object-load.c (compile_object_load): Update.
692         * utils.c (gdb_bfd_errmsg): Return std::string.
693
694 2018-09-13  Tom Tromey  <tom@tromey.com>
695
696         * procfs.c (struct procinfo_deleter): New.
697         (procinfo_up): New typedef.
698         (do_destroy_procinfo_cleanup): Remove.
699         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
700
701 2018-09-13  Tom Tromey  <tom@tromey.com>
702
703         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
704
705 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
706 2018-09-13  Tom Tromey  <tom@tromey.com>
707
708         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
709         (pspy_get_objfiles): New function.
710         (progspace_object_methods): New.
711         (pspace_object_type): Add tp_methods callback.
712         * python/python-internal.h (build_objfiles_list): New
713         declaration.
714         * python/python.c (build_objfiles_list): New function.
715         (gdbpy_objfiles): Implement using build_objfiles_list.
716         * NEWS: Mention the Progspace.objfiles method.
717
718 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
719
720         * python/py-inferior.c (infpy_get_progspace): New function.
721         (inferior_object_getset): Add progspace property.
722         * NEWS: Mention the new property.
723
724 2018-09-13  Tom Tromey  <tom@tromey.com>
725
726         PR rust/23650:
727         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
728
729 2018-09-13  Tom Tromey  <tom@tromey.com>
730
731         PR rust/23626:
732         * rust-lang.c (rust_enum_variant): Now static.
733         (rust_empty_enum_p): New function.
734         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
735         Handle empty enum.
736
737 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
738
739         * python/py-inferior.c (infpy_repr): New.
740         (inferior_object_type): Register infpy_repr.
741         * python/py-objfile.c (objfpy_repr): New.
742         (objfile_object_type): Register objfpy_repr.
743
744 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
745
746         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
747
748 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
749
750         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
751         typo.
752
753 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
754
755         * common/common-utils.c: Don't include '<sys/stat.h>'.
756         (is_regular_file): Move to...
757         * common/filestuff.c (is_regular_file): ... here.
758         * common/common-utils.h (is_regular_file): Move to...
759         * common/filestuff.h (is_regular_file): ... here.
760
761 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
762
763         * skip.c (debug_skip): New variable.
764         (skiplist_entry::do_skip_file_p): Add debug output.
765         (skiplist_entry::do_skip_gfile_p): Likewise.
766         (skiplist_entry::skip_function_p): Likewise.
767         (_initialize_step_skip): Create debug command.
768         * NEWS: Mention set/show debug skip.
769
770 2018-09-11  Xavier Roirand  <roirand@adacore.com>
771
772         * darwin-nat.c (should_disable_startup_with_shell):
773         New function.
774         (darwin_nat_target::create_inferior): Add call.
775
776 2018-09-11  Xavier Roirand  <roirand@adacore.com>
777
778         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
779         inf_port, msg_state>: Initialize.
780         (struct darwin_thread_info) <signaled, single_step>: Change
781         type and initialize.
782         (struct darwin_thread_info) <event>: Initialize.
783
784 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
785
786         PR gdb/23555
787         PR gdb/23558
788         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
789         guesses.
790
791 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
792
793         Revert:
794         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
795
796         PR gdb/23555
797         PR gdb/23558
798         * gnulib/aclocal.m4: Regenerate.
799         * gnulib/config.in: Regenerate.
800         * gnulib/configure: Regenerate.
801         * gnulib/import/Makefile.am: Update.
802         * gnulib/import/Makefile.in: Update.
803         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
804         * gnulib/import/_Noreturn.h: ... this.
805         * gnulib/import/alloca.in.h: Update.
806         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
807         * gnulib/import/arg-nonnull.h: ... this.
808         * gnulib/import/assure.h: Update.
809         * gnulib/import/at-func.c: Update.
810         * gnulib/import/basename-lgpl.c: Update.
811         * gnulib/import/extra/snippet/c++defs.h: Rename to...
812         * gnulib/import/c++defs.h: ... this.
813         * gnulib/import/canonicalize-lgpl.c: Update.
814         * gnulib/import/cdefs.h: Update.
815         * gnulib/import/chdir-long.c: Update.
816         * gnulib/import/chdir-long.h: Update.
817         * gnulib/import/cloexec.c: Update.
818         * gnulib/import/cloexec.h: Update.
819         * gnulib/import/close.c: Update.
820         * gnulib/import/closedir.c: Update.
821         * gnulib/import/config.charset: Update.
822         * gnulib/import/dirent-private.h: Update.
823         * gnulib/import/dirent.in.h: Update.
824         * gnulib/import/dirfd.c: Update.
825         * gnulib/import/dirname-lgpl.c: Update.
826         * gnulib/import/dirname.h: Update.
827         * gnulib/import/dosname.h: Update.
828         * gnulib/import/dup-safer-flag.c: Update.
829         * gnulib/import/dup-safer.c: Update.
830         * gnulib/import/dup.c: Update.
831         * gnulib/import/dup2.c: Update.
832         * gnulib/import/errno.in.h: Update.
833         * gnulib/import/error.c: Update.
834         * gnulib/import/error.h: Update.
835         * gnulib/import/exitfail.c: Update.
836         * gnulib/import/exitfail.h: Update.
837         * gnulib/import/extra/update-copyright: Update.
838         * gnulib/import/fchdir.c: Update.
839         * gnulib/import/fcntl.c: Update.
840         * gnulib/import/fcntl.in.h: Update.
841         * gnulib/import/fd-hook.c: Update.
842         * gnulib/import/fd-hook.h: Update.
843         * gnulib/import/fd-safer-flag.c: Update.
844         * gnulib/import/fd-safer.c: Update.
845         * gnulib/import/fdopendir.c: Update.
846         * gnulib/import/filename.h: Update.
847         * gnulib/import/filenamecat-lgpl.c: Update.
848         * gnulib/import/filenamecat.h: Update.
849         * gnulib/import/flexmember.h: Update.
850         * gnulib/import/float+.h: Update.
851         * gnulib/import/float.c: Update.
852         * gnulib/import/float.in.h: Update.
853         * gnulib/import/fnmatch.c: Update.
854         * gnulib/import/fnmatch.in.h: Update.
855         * gnulib/import/fnmatch_loop.c: Update.
856         * gnulib/import/fpucw.h: Update.
857         * gnulib/import/frexp.c: Update.
858         * gnulib/import/frexpl.c: Update.
859         * gnulib/import/fstat.c: Update.
860         * gnulib/import/fstatat.c: Update.
861         * gnulib/import/getcwd-lgpl.c: Update.
862         * gnulib/import/getcwd.c: Update.
863         * gnulib/import/getdtablesize.c: Update.
864         * gnulib/import/getlogin_r.c: Update.
865         * gnulib/import/getprogname.c: Update.
866         * gnulib/import/getprogname.h: Update.
867         * gnulib/import/gettext.h: Update.
868         * gnulib/import/gettimeofday.c: Update.
869         * gnulib/import/glob-libc.h: Update.
870         * gnulib/import/glob.c: Update.
871         * gnulib/import/glob.in.h: Update.
872         * gnulib/import/glob_internal.h: Update.
873         * gnulib/import/glob_pattern_p.c: Update.
874         * gnulib/import/globfree.c: Update.
875         * gnulib/import/hard-locale.c: Update.
876         * gnulib/import/hard-locale.h: Update.
877         * gnulib/import/intprops.h: Update.
878         * gnulib/import/inttypes.in.h: Update.
879         * gnulib/import/isnan.c: Update.
880         * gnulib/import/isnand-nolibm.h: Update.
881         * gnulib/import/isnand.c: Update.
882         * gnulib/import/isnanl-nolibm.h: Update.
883         * gnulib/import/isnanl.c: Update.
884         * gnulib/import/itold.c: Update.
885         * gnulib/import/libc-config.h: Update.
886         * gnulib/import/limits.in.h: Update.
887         * gnulib/import/localcharset.c: Update.
888         * gnulib/import/localcharset.h: Update.
889         * gnulib/import/localtime-buffer.c: Update.
890         * gnulib/import/localtime-buffer.h: Update.
891         * gnulib/import/lstat.c: Update.
892         * gnulib/import/m4/00gnulib.m4: Update.
893         * gnulib/import/m4/__inline.m4: Update.
894         * gnulib/import/m4/absolute-header.m4: Update.
895         * gnulib/import/m4/alloca.m4: Update.
896         * gnulib/import/m4/builtin-expect.m4: Update.
897         * gnulib/import/m4/canonicalize.m4: Update.
898         * gnulib/import/m4/chdir-long.m4: Update.
899         * gnulib/import/m4/close.m4: Update.
900         * gnulib/import/m4/closedir.m4: Update.
901         * gnulib/import/m4/configmake.m4: Update.
902         * gnulib/import/m4/d-ino.m4: Update.
903         * gnulib/import/m4/d-type.m4: Update.
904         * gnulib/import/m4/dirent_h.m4: Update.
905         * gnulib/import/m4/dirfd.m4: Update.
906         * gnulib/import/m4/dirname.m4: Update.
907         * gnulib/import/m4/double-slash-root.m4: Update.
908         * gnulib/import/m4/dup.m4: Update.
909         * gnulib/import/m4/dup2.m4: Update.
910         * gnulib/import/m4/eealloc.m4: Update.
911         * gnulib/import/m4/environ.m4: Update.
912         * gnulib/import/m4/errno_h.m4: Update.
913         * gnulib/import/m4/error.m4: Update.
914         * gnulib/import/m4/exponentd.m4: Update.
915         * gnulib/import/m4/exponentl.m4: Update.
916         * gnulib/import/m4/extensions.m4: Update.
917         * gnulib/import/m4/extern-inline.m4: Update.
918         * gnulib/import/m4/fchdir.m4: Update.
919         * gnulib/import/m4/fcntl-o.m4: Update.
920         * gnulib/import/m4/fcntl.m4: Update.
921         * gnulib/import/m4/fcntl_h.m4: Update.
922         * gnulib/import/m4/fdopendir.m4: Update.
923         * gnulib/import/m4/filenamecat.m4: Update.
924         * gnulib/import/m4/flexmember.m4: Update.
925         * gnulib/import/m4/float_h.m4: Update.
926         * gnulib/import/m4/fnmatch.m4: Update.
927         * gnulib/import/m4/fnmatch_h.m4: Update.
928         * gnulib/import/m4/fpieee.m4: Update.
929         * gnulib/import/m4/frexp.m4: Update.
930         * gnulib/import/m4/frexpl.m4: Update.
931         * gnulib/import/m4/fstat.m4: Update.
932         * gnulib/import/m4/fstatat.m4: Update.
933         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
934         * gnulib/import/m4/getcwd-path-max.m4: Update.
935         * gnulib/import/m4/getcwd.m4: Update.
936         * gnulib/import/m4/getdtablesize.m4: Update.
937         * gnulib/import/m4/getlogin.m4: Update.
938         * gnulib/import/m4/getlogin_r.m4: Update.
939         * gnulib/import/m4/getpagesize.m4: Update.
940         * gnulib/import/m4/getprogname.m4: Update.
941         * gnulib/import/m4/gettimeofday.m4: Update.
942         * gnulib/import/m4/glibc21.m4: Update.
943         * gnulib/import/m4/glob.m4: Update.
944         * gnulib/import/m4/glob_h.m4: Update.
945         * gnulib/import/m4/gnulib-cache.m4: Update.
946         * gnulib/import/m4/gnulib-common.m4: Update.
947         * gnulib/import/m4/gnulib-comp.m4: Update.
948         * gnulib/import/m4/gnulib-tool.m4: Update.
949         * gnulib/import/m4/hard-locale.m4: Update.
950         * gnulib/import/m4/include_next.m4: Update.
951         * gnulib/import/m4/inttypes-pri.m4: Update.
952         * gnulib/import/m4/inttypes.m4: Update.
953         * gnulib/import/m4/isnand.m4: Update.
954         * gnulib/import/m4/isnanl.m4: Update.
955         * gnulib/import/m4/largefile.m4: Update.
956         * gnulib/import/m4/limits-h.m4: Update.
957         * gnulib/import/m4/localcharset.m4: Update.
958         * gnulib/import/m4/locale-fr.m4: Update.
959         * gnulib/import/m4/locale-ja.m4: Update.
960         * gnulib/import/m4/locale-zh.m4: Update.
961         * gnulib/import/m4/localtime-buffer.m4: Update.
962         * gnulib/import/m4/longlong.m4: Update.
963         * gnulib/import/m4/lstat.m4: Update.
964         * gnulib/import/m4/malloc.m4: Update.
965         * gnulib/import/m4/malloca.m4: Update.
966         * gnulib/import/m4/math_h.m4: Update.
967         * gnulib/import/m4/mbrtowc.m4: Update.
968         * gnulib/import/m4/mbsinit.m4: Update.
969         * gnulib/import/m4/mbsrtowcs.m4: Update.
970         * gnulib/import/m4/mbstate_t.m4: Update.
971         * gnulib/import/m4/memchr.m4: Update.
972         * gnulib/import/m4/memmem.m4: Update.
973         * gnulib/import/m4/mempcpy.m4: Update.
974         * gnulib/import/m4/memrchr.m4: Update.
975         * gnulib/import/m4/mkdir.m4: Update.
976         * gnulib/import/m4/mkstemp.m4: Update.
977         * gnulib/import/m4/mmap-anon.m4: Update.
978         * gnulib/import/m4/mode_t.m4: Update.
979         * gnulib/import/m4/msvc-inval.m4: Update.
980         * gnulib/import/m4/msvc-nothrow.m4: Update.
981         * gnulib/import/m4/multiarch.m4: Update.
982         * gnulib/import/m4/nocrash.m4: Update.
983         * gnulib/import/m4/off_t.m4: Update.
984         * gnulib/import/m4/onceonly.m4: Update.
985         * gnulib/import/m4/open-cloexec.m4: Update.
986         * gnulib/import/m4/open.m4: Update.
987         * gnulib/import/m4/openat.m4: Update.
988         * gnulib/import/m4/opendir.m4: Update.
989         * gnulib/import/m4/pathmax.m4: Update.
990         * gnulib/import/m4/rawmemchr.m4: Update.
991         * gnulib/import/m4/readdir.m4: Update.
992         * gnulib/import/m4/readlink.m4: Update.
993         * gnulib/import/m4/realloc.m4: Update.
994         * gnulib/import/m4/rename.m4: Update.
995         * gnulib/import/m4/rewinddir.m4: Update.
996         * gnulib/import/m4/rmdir.m4: Update.
997         * gnulib/import/m4/save-cwd.m4: Update.
998         * gnulib/import/m4/secure_getenv.m4: Update.
999         * gnulib/import/m4/setenv.m4: Update.
1000         * gnulib/import/m4/signal_h.m4: Update.
1001         * gnulib/import/m4/ssize_t.m4: Update.
1002         * gnulib/import/m4/stat-time.m4: Update.
1003         * gnulib/import/m4/stat.m4: Update.
1004         * gnulib/import/m4/std-gnu11.m4: Update.
1005         * gnulib/import/m4/stdbool.m4: Update.
1006         * gnulib/import/m4/stddef_h.m4: Update.
1007         * gnulib/import/m4/stdint.m4: Update.
1008         * gnulib/import/m4/stdio_h.m4: Update.
1009         * gnulib/import/m4/stdlib_h.m4: Update.
1010         * gnulib/import/m4/strchrnul.m4: Update.
1011         * gnulib/import/m4/strdup.m4: Update.
1012         * gnulib/import/m4/strerror.m4: Update.
1013         * gnulib/import/m4/string_h.m4: Update.
1014         * gnulib/import/m4/strstr.m4: Update.
1015         * gnulib/import/m4/strtok_r.m4: Update.
1016         * gnulib/import/m4/sys_socket_h.m4: Update.
1017         * gnulib/import/m4/sys_stat_h.m4: Update.
1018         * gnulib/import/m4/sys_time_h.m4: Update.
1019         * gnulib/import/m4/sys_types_h.m4: Update.
1020         * gnulib/import/m4/tempname.m4: Update.
1021         * gnulib/import/m4/time_h.m4: Update.
1022         * gnulib/import/m4/unistd-safer.m4: Update.
1023         * gnulib/import/m4/unistd_h.m4: Update.
1024         * gnulib/import/m4/warn-on-use.m4: Update.
1025         * gnulib/import/m4/wchar_h.m4: Update.
1026         * gnulib/import/m4/wchar_t.m4: Update.
1027         * gnulib/import/m4/wctype_h.m4: Update.
1028         * gnulib/import/m4/wint_t.m4: Update.
1029         * gnulib/import/malloc.c: Update.
1030         * gnulib/import/malloc/scratch_buffer.h: Update.
1031         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1032         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1033         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1034         * gnulib/import/malloca.c: Update.
1035         * gnulib/import/malloca.h: Update.
1036         * gnulib/import/malloca.valgrind: Update.
1037         * gnulib/import/math.in.h: Update.
1038         * gnulib/import/mbrtowc.c: Update.
1039         * gnulib/import/mbsinit.c: Update.
1040         * gnulib/import/mbsrtowcs-impl.h: Update.
1041         * gnulib/import/mbsrtowcs-state.c: Update.
1042         * gnulib/import/mbsrtowcs.c: Update.
1043         * gnulib/import/memchr.c: Update.
1044         * gnulib/import/memmem.c: Update.
1045         * gnulib/import/mempcpy.c: Update.
1046         * gnulib/import/memrchr.c: Update.
1047         * gnulib/import/mkdir.c: Update.
1048         * gnulib/import/mkstemp.c: Update.
1049         * gnulib/import/msvc-inval.c: Update.
1050         * gnulib/import/msvc-inval.h: Update.
1051         * gnulib/import/msvc-nothrow.c: Update.
1052         * gnulib/import/msvc-nothrow.h: Update.
1053         * gnulib/import/open.c: Update.
1054         * gnulib/import/openat-die.c: Update.
1055         * gnulib/import/openat-priv.h: Update.
1056         * gnulib/import/openat-proc.c: Update.
1057         * gnulib/import/openat.c: Update.
1058         * gnulib/import/openat.h: Update.
1059         * gnulib/import/opendir.c: Update.
1060         * gnulib/import/pathmax.h: Update.
1061         * gnulib/import/pipe-safer.c: Update.
1062         * gnulib/import/rawmemchr.c: Update.
1063         * gnulib/import/readdir.c: Update.
1064         * gnulib/import/readlink.c: Update.
1065         * gnulib/import/realloc.c: Update.
1066         * gnulib/import/ref-add.sin: Update.
1067         * gnulib/import/ref-del.sin: Update.
1068         * gnulib/import/rename.c: Update.
1069         * gnulib/import/rewinddir.c: Update.
1070         * gnulib/import/rmdir.c: Update.
1071         * gnulib/import/same-inode.h: Update.
1072         * gnulib/import/save-cwd.c: Update.
1073         * gnulib/import/save-cwd.h: Update.
1074         * gnulib/import/scratch_buffer.h: Update.
1075         * gnulib/import/secure_getenv.c: Update.
1076         * gnulib/import/setenv.c: Update.
1077         * gnulib/import/signal.in.h: Update.
1078         * gnulib/import/stat-time.c: Update.
1079         * gnulib/import/stat-time.h: Update.
1080         * gnulib/import/stat-w32.c: Update.
1081         * gnulib/import/stat-w32.h: Update.
1082         * gnulib/import/stat.c: Update.
1083         * gnulib/import/stdbool.in.h: Update.
1084         * gnulib/import/stddef.in.h: Update.
1085         * gnulib/import/stdint.in.h: Update.
1086         * gnulib/import/stdio.in.h: Update.
1087         * gnulib/import/stdlib.in.h: Update.
1088         * gnulib/import/str-two-way.h: Update.
1089         * gnulib/import/strchrnul.c: Update.
1090         * gnulib/import/strdup.c: Update.
1091         * gnulib/import/streq.h: Update.
1092         * gnulib/import/strerror-override.c: Update.
1093         * gnulib/import/strerror-override.h: Update.
1094         * gnulib/import/strerror.c: Update.
1095         * gnulib/import/string.in.h: Update.
1096         * gnulib/import/stripslash.c: Update.
1097         * gnulib/import/strnlen1.c: Update.
1098         * gnulib/import/strnlen1.h: Update.
1099         * gnulib/import/strstr.c: Update.
1100         * gnulib/import/strtok_r.c: Update.
1101         * gnulib/import/sys_stat.in.h: Update.
1102         * gnulib/import/sys_time.in.h: Update.
1103         * gnulib/import/sys_types.in.h: Update.
1104         * gnulib/import/tempname.c: Update.
1105         * gnulib/import/tempname.h: Update.
1106         * gnulib/import/time.in.h: Update.
1107         * gnulib/import/unistd--.h: Update.
1108         * gnulib/import/unistd-safer.h: Update.
1109         * gnulib/import/unistd.in.h: Update.
1110         * gnulib/import/unsetenv.c: Update.
1111         * gnulib/import/verify.h: Update.
1112         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1113         * gnulib/import/wchar.in.h: Update.
1114         * gnulib/import/wctype.in.h: Update.
1115         * gnulib/import/xalloc-oversized.h: Update.
1116         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1117         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1118
1119 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1120
1121         * record-btrace.c (get_thread_current_frame): Remove
1122         old_inferior_ptid.
1123
1124 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1125
1126         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1127         with check_tag to 1 if and only if the type is tagged and the
1128         component being searched cannot been found in the current
1129         view. Otherwise, always call ada_to_fixed_type with
1130         check_tag to 0.
1131
1132 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1133
1134         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1135         declaration.
1136         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1137         * ada-varobj.c (ada_varobj_get_number_of_children,
1138         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1139
1140 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1141
1142         * ada-valprint.c (ada_value_print): Use type instead of
1143         enclosing type.
1144
1145 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1146
1147         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1148         an array of access to unconstrained array.
1149
1150 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1151
1152         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1153         (ada_check_typedef): Use it.
1154
1155 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1156
1157         * ada-varobj.c (ada_varobj_describe_struct_child)
1158         (ada_varobj_describe_child): Handle union case like struct one.
1159
1160 2018-09-10  Tom Tromey  <tom@tromey.com>
1161
1162         PR python/18380:
1163         * python/python.c (_initialize_python): Make example in "python"
1164         help work in Python 3.
1165
1166 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1167
1168         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1169         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1170         $(EXEEXT) to the script, as it is not a program.
1171
1172 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1173
1174         * python/py-prettyprint.c (pretty_print_one_value): Return
1175         gdbpy_ref<>.
1176         (print_string_repr): Adjust.
1177         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1178         * python/python-internal.h (apply_varobj_pretty_printer): Return
1179         gdbpy_ref<>.
1180         * varobj.c (varobj_value_get_print_value): Adjust.
1181
1182 2018-09-08  Tom Tromey  <tom@tromey.com>
1183
1184         PR python/16047:
1185         * python/py-prettyprint.c (pretty_print_one_value): Check for
1186         to_string method.
1187
1188 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1189
1190         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1191         replace_operator_with_call.
1192
1193 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1194
1195         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1196
1197 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1198
1199         * ada-typeprint.c (print_range): Print the bounds using TYPE
1200         rather than its TYPE_TARGET_TYPE.
1201
1202 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1203
1204         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1205         call to ada_to_fixed_value_create.
1206
1207 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1208
1209         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1210
1211 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1212
1213         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1214         by calls to error.
1215
1216 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1217
1218         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1219         Move update of loop variable "fi".
1220
1221 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1222
1223         * ada-lang.c (value_assign_to_component): In the case of
1224         big-endian targets, extract the bits of the given VAL
1225         using an src_offset of zero if container is not a scalar.
1226
1227 2018-09-06  Simon Ser  <contact@emersion.fr>
1228
1229         PR gdb/23105
1230         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1231         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1232         * fbsd-tdep.c (fbsd_make_note_desc): New.
1233         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1234         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1235         * target.h (enum target_object) Add FreeBSD-specific
1236         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1237
1238 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1239
1240         * compile/compile-c.h (generate_c_for_variable_locations):
1241         Change reference to pointer.
1242         * compile/compile-c-support.c (compile_program) <compute>:
1243         Likewise.
1244         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1245         (generate_c_for_for_one_variable): Likewise
1246         (generate_c_for_variable_locations): Likewise
1247         * compile/compile-c-types.c (compile_c_instance::convert_type):
1248         Likewise
1249         * compile/compile-cplus-symbols.c (convert_one_symbol):
1250         std::move the scope passed to enter_scope.
1251         * compile/compile-cplus-types.c
1252         (compile_cplus_instance::enter_scope): Make parameter
1253         rvalue-reference.
1254         (compile_cplus_instance::new_scope): Change reference to
1255         pointer.
1256         (compile_cplus_instance::convert_type): Likewise
1257         (compile_cplus_convert_typedef): std::move the scope passed to
1258         enter_scope.
1259         (compile_cplus_convert_struct_or_union): Likewise.
1260         (compile_cplus_convert_enum): Likewise.
1261         (compile_cplus_convert_namespace): Likewise.
1262         * compile/compile-cplus.h (compile_cplus_instance)
1263         <enter_scope>: Make parameter rvalue-reference.
1264         * compile/compile-internal.h (compile_instance)
1265         <get_cached_type>: Likewise
1266         * compile/compile-loc2c.c (push): Likewise
1267         (pushf): Likewise
1268         (unary): Likewise
1269         (binary): Likewise
1270         (print_label): Likewise
1271         (pushf_register_address): Likewise
1272         (pushf_register): Likewise
1273         (do_compile_dwarf_expr_to_c): Likewise
1274         (compile_dwarf_expr_to_c): Likewise
1275         (compile_dwarf_bounds_to_c): Likewise
1276         * compile/compile.c (compile_instance::get_cached_type):
1277         Likewise
1278         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1279         (compile_dwarf_bounds_to_c): Likewise
1280         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1281         (dwarf2_compile_property_to_c): Likewise
1282         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1283         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1284         Likewise
1285
1286 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1287
1288         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1289         * tui/tui-data.c (init_content_element): Don't initialize it.
1290
1291 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1292
1293         * tui/tui-data.h (struct tui_win_info)
1294         <detail::opaque>: Remove.
1295         * tui/tui-data.c (init_win_info): Remove assignment.
1296
1297 2018-09-05  Tom Tromey  <tom@tromey.com>
1298
1299         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1300         -Wformat-nonliteral.
1301         * target-float.c (host_float_ops<T>::to_string)
1302         (host_float_ops<T>::from_string): Use
1303         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1304         * configure: Rebuild.
1305
1306 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1307
1308         * printcmd.c (printf_c_string): Use
1309         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1310         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1311
1312 2018-09-05  Tom Tromey  <tom@tromey.com>
1313
1314         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1315
1316 2018-09-05  Tom de Vries  <tdevries@suse.de>
1317
1318         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1319         with resolve_abstract_p == true.
1320         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1321         defaulting to false. Propagate resolve_abstract_p to
1322         dwarf2_fetch_die_loc_sect_off.
1323         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1324         parameter, defaulting to false.
1325         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1326         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1327         parameter.
1328         * dwarf2read.h (struct die_info): Forward-declare.
1329         (die_info_ptr): New typedef.
1330         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1331
1332 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1333
1334         GDB 8.2 released.
1335
1336 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1337             Pedro Alves  <palves@redhat.com>
1338
1339         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1340         "aclocal-m4-deps.mk".  Include file here.
1341         $(srcdir)/aclocal.m4: Add "configure.ac".
1342         * gnulib/aclocal-m4-deps.mk: New file.
1343         * gnulib/update-gnulib.sh: Automatically update
1344         "aclocal-m4-deps.mk".
1345
1346 2018-09-04  Tom Tromey  <tom@tromey.com>
1347
1348         * configure: Rebuild.
1349         * configure.ac: Remove multi-ice code.
1350
1351 2018-09-04  Tom Tromey  <tom@tromey.com>
1352
1353         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1354         (ada-exp.o): Update.
1355
1356 2018-09-04  Tom Tromey  <tom@tromey.com>
1357
1358         * Makefile.in (printcmd.o, target-float.o): Remove.
1359         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1360
1361 2018-09-04  Tom Tromey  <tom@tromey.com>
1362
1363         * gnulib/Makefile.in: Remove obsolete comment.
1364         * Makefile.in: Remove obsolete comment.
1365
1366 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1367
1368         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1369         line with '+'.
1370
1371 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1372
1373         * riscv-tdep.c: Add 'prologue-value.h' include.
1374         (struct riscv_unwind_cache): New struct.
1375         (riscv_debug_unwinder): New global.
1376         (riscv_scan_prologue): Update arguments, capture register details
1377         from prologue scan.
1378         (riscv_skip_prologue): Reformat arguments line, move end of
1379         prologue calculation into riscv_scan_prologue.
1380         (riscv_frame_cache): Update return type, create
1381         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1382         details.
1383         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1384         (riscv_frame_prev_register): Use the trad_frame within the
1385         riscv_unwind_cache.
1386         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1387         flag.
1388
1389 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1390
1391         * trad-frame.h (trad_frame_set_realreg): Declare.
1392         (trad_frame_set_addr): Declare.
1393         * trad-frame.c (trad_frame_set_realreg): Define new function.
1394         (trad_frame_set_addr): Define new function.
1395         (trad_frame_set_reg_realreg): Use new function.
1396         (trad_frame_set_reg_addr): Use new function.
1397
1398 2018-09-01  Keith Seitz  <keiths@redhat.com>
1399
1400         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1401         pulongest instead of "%lld".
1402         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1403         ATTRIBUTE_UNUSED.
1404
1405 2018-08-31  Tom Tromey  <tom@tromey.com>
1406
1407         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1408         variant part type.
1409
1410 2018-08-31  Pedro Alves  <palves@redhat.com>
1411
1412         * gdbarch.h: Regenerate.
1413
1414 2018-08-31  Pedro Alves  <palves@redhat.com>
1415
1416         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1417         * target.h (Hardware watchpoint interfaces): Describe
1418         continuable/steppable/non-steppable watchpoints.
1419         * gdbarch.h, gdbarch.c: Regenerate.
1420
1421 2018-08-31  Pedro Alves  <palves@redhat.com>
1422
1423         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1424         Delete.
1425         * s390-linux-nat.c
1426         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1427         * target.h (target_ops::have_continuable_watchpoint): Delete.
1428         (target_have_continuable_watchpoint): Delete.
1429         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1430         * target-delegates.c: Regenerate.
1431
1432 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1433
1434         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1435         the files present in "gnulib/import/m4/".
1436
1437 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1438
1439         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1440         c.sw, c.swsp, and c.sdsp.
1441
1442 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1443
1444         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1445         (riscv_read_misa_reg): Don't cache value read into inferior data.
1446         (riscv_new_inferior_data): Delete.
1447         (riscv_inferior_data_cleanup): Delete.
1448         (riscv_inferior_data): Delete.
1449         (riscv_invalidate_inferior_data): Delete.
1450         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1451
1452 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1453
1454         * compile/compile-cplus-types.c
1455         (compile_cplus_instance::leave_scope): Take the address of scope
1456         object.
1457         (compile_cplus_instance::convert_qualified_base): Compare quals
1458         to 0.
1459
1460 2018-08-30  Keith Seitz  <keiths@redhat.com>
1461
1462         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1463         Use "%s" and host_address_to_string instead of "%p" in printf.
1464
1465 2018-08-29  Keith Seitz  <keiths@redhat.com>
1466
1467         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1468         and compile-cplus-types.c.
1469         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1470         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1471         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1472         Declare.
1473         * compile/compile-c-support.c: Include compile-cplus.h.
1474         (load_libcompile): Templatize.
1475         (get_compile_context): "New" function.
1476         (c_get_compile_context): Use get_compile_context.
1477         (cplus_get_compile_context): New function.
1478         (cplus_push_user_expression, cplus_pop_user_expression)
1479         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1480         (cplus_compute_program): Define new structs/functions.
1481         * compile/compile-cplus-symmbols.c: New file.
1482         * compile/compile-cplus-types.c: New file.
1483         * compile/compile-cplus.h: New file.
1484         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1485         Declare.
1486         * compile/compile-object-load.c (get_out_value_type): Use
1487         strncmp_iw when comparing symbol names.
1488         (compile_object_load): Add mst_bss and mst_data.
1489         * compile/compile.c (_initialize_compile): Remove
1490         -Wno-implicit-function-declaration from `compile_args'.
1491         * compile/gcc-cp-plugin.h: New file.
1492         * NEWS: Mention C++ compile support and new debug options.
1493
1494 2018-08-29  Keith Seitz  <keiths@redhat.com>
1495
1496         * linespec.c (collect_info::add_symbol): Make virtual.
1497         (struct symbol_searcher_collect_info): New struct.
1498         (symbol_searcher::find_all_symbols): New method.
1499         * symtab.h (class symbol_searcher): New class.
1500
1501 2018-08-29  Keith Seitz  <keiths@redhat.com>
1502
1503         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1504         Change to vector of block_symbol.  Update all users.
1505         (struct collect_info) <symbols>: Likewise.
1506         (collect_info::add_symbol): Take block_symbol as argument.
1507         Update all callers.
1508         (decode_compound_collector) <m_symbols>: Change type to vector
1509         of block_symbol.  Update all users.
1510         (decode_compound_collector::operator ()): Change parameter type
1511         to block_symbol.
1512         (find_method, find_function_symbols, find_linespec_symbols)
1513         (find_label_symbols_in_block, find_label_symbols): Change symbol
1514         vectors to block_symbol vectors.
1515         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1516         block_symbol.
1517
1518 2018-08-29  Keith Seitz  <keiths@redhat.com>
1519
1520         * linespec.c (symbolp): Remove typedef and VEC definitions.
1521         (bound_minimal_symbol_d): Likewise.
1522
1523 2018-08-29  Keith Seitz  <keiths@redhat.com>
1524
1525         * linespec.c (decode_compound_collector::decode_compound_collector):
1526         Remove initialization for `m_symtabs'.
1527         (decode_compound_collector::release_symbols): Change return type
1528         to std::vector.  Update all callers.
1529         (class decode_compound_collector) <m_symbols>: Change type to
1530         std::vector.
1531         (lookup_prefix_sym): Change return type to std::vector.  Update all
1532         callers.
1533         (compare_symbols): Remove.
1534         (std_compare_symbols): Rename to `compare_symbols'.
1535         (find_method): Change `sym_classes' parameter to std::vector.
1536         Update all callers.  Use std::sort to sort sym_classes.
1537         (find_linespec_symbols): Remove cleanup.
1538
1539 2018-08-29  Keith Seitz  <keiths@redhat.com>
1540
1541         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1542         std::vector.  Update all users.
1543         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1544         (struct collect_info) <minimal_symbols>: Likewise.
1545         (compare_msymbols): Return bool.  Change parameters to const
1546         bound_minimal_symbol references.
1547         (find_method, find_function_symbols, find_linespec_symbols): Change
1548         `minsyms' parameter to std::vector.  Update all callers.
1549
1550 2018-08-29  Keith Seitz  <keiths@redhat.com>
1551
1552         * linespec.c (struct linespec) <label_symbols>: Change type to
1553         std::vector.  Update all users.
1554         (find_label_symbols_in_block): Change `result' parameter to
1555         std::vector.  Update all callers.
1556         (find_label_symbols): Return std::vector.  Update all callers.
1557
1558 2018-08-29  Keith Seitz  <keiths@redhat.com>
1559
1560         * linespec.c (struct linespec) <function_symbols>: Change type to
1561         std::vector.  Update all users.
1562         (struct collect_info) <function_symbols>: Likewise.
1563         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1564         (std_compare_symbols): New function.
1565         (find_method, find_function_symbols, find_linespec_symbols)
1566         (find_label_symbols_in_block): Change `symbols' parameter to
1567         std::vector.  Update all callers.
1568         (find_label_symbols): Likewise for `function_symbols' and
1569         `label_funcs_ret'.
1570
1571 2018-08-29  Keith Seitz  <keiths@redhat.com>
1572
1573         * linespec.c (symtab_vector_up): Define.
1574         (struct linespec) <file_symtabs>: Change type to std::vector *.
1575         Update all uses.
1576         (struct collect_info) <file_symtabs>: Likewise.
1577         (collect_symtabs_from_filename): Return symtab_vector_up.
1578         Update all callers.
1579         (decode_objc): Remove cleanup.
1580         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1581         (symtab_collector::release_symtabs): Return symtab_vector_up.
1582         Update all callers.
1583         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1584         Update all users.
1585         (collect_symtabs_from_filename, symtabs_from_filename): Return
1586         symtab_vector_up.  Update all callers.
1587
1588 2018-08-29  Tom Tromey  <tom@tromey.com>
1589
1590         * csky-tdep.c (csky_analyze_prologue): Use
1591         core_addr_to_string_nz.
1592
1593 2018-08-29  Tom Tromey  <tom@tromey.com>
1594
1595         * windows-nat.c (struct xlate_exception) <them>: Change type to
1596         DWORD.
1597         (xlate): Fix formatting.  Remove last entry.
1598         (struct xlate_exception, xlate): Comment out.
1599         (windows_nat_target::resume): Use ranged for.
1600
1601 2018-08-29  Jim Wilson  <jimw@sifive.com>
1602
1603         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1604         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1605         of NT_PRFPREG.
1606         (riscv_linux_nat_target::store_registers): Likewise.
1607
1608 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1609
1610         PR gdb/23555
1611         PR gdb/23558
1612         * gnulib/aclocal.m4: Regenerate.
1613         * gnulib/config.in: Regenerate.
1614         * gnulib/configure: Regenerate.
1615         * gnulib/import/Makefile.am: Update.
1616         * gnulib/import/Makefile.in: Update.
1617         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1618         * gnulib/import/_Noreturn.h: ... this.
1619         * gnulib/import/alloca.in.h: Update.
1620         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1621         * gnulib/import/arg-nonnull.h: ... this.
1622         * gnulib/import/assure.h: Update.
1623         * gnulib/import/at-func.c: Update.
1624         * gnulib/import/basename-lgpl.c: Update.
1625         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1626         * gnulib/import/c++defs.h: ... this.
1627         * gnulib/import/canonicalize-lgpl.c: Update.
1628         * gnulib/import/cdefs.h: Update.
1629         * gnulib/import/chdir-long.c: Update.
1630         * gnulib/import/chdir-long.h: Update.
1631         * gnulib/import/cloexec.c: Update.
1632         * gnulib/import/cloexec.h: Update.
1633         * gnulib/import/close.c: Update.
1634         * gnulib/import/closedir.c: Update.
1635         * gnulib/import/config.charset: Update.
1636         * gnulib/import/dirent-private.h: Update.
1637         * gnulib/import/dirent.in.h: Update.
1638         * gnulib/import/dirfd.c: Update.
1639         * gnulib/import/dirname-lgpl.c: Update.
1640         * gnulib/import/dirname.h: Update.
1641         * gnulib/import/dosname.h: Update.
1642         * gnulib/import/dup-safer-flag.c: Update.
1643         * gnulib/import/dup-safer.c: Update.
1644         * gnulib/import/dup.c: Update.
1645         * gnulib/import/dup2.c: Update.
1646         * gnulib/import/errno.in.h: Update.
1647         * gnulib/import/error.c: Update.
1648         * gnulib/import/error.h: Update.
1649         * gnulib/import/exitfail.c: Update.
1650         * gnulib/import/exitfail.h: Update.
1651         * gnulib/import/extra/update-copyright: Update.
1652         * gnulib/import/fchdir.c: Update.
1653         * gnulib/import/fcntl.c: Update.
1654         * gnulib/import/fcntl.in.h: Update.
1655         * gnulib/import/fd-hook.c: Update.
1656         * gnulib/import/fd-hook.h: Update.
1657         * gnulib/import/fd-safer-flag.c: Update.
1658         * gnulib/import/fd-safer.c: Update.
1659         * gnulib/import/fdopendir.c: Update.
1660         * gnulib/import/filename.h: Update.
1661         * gnulib/import/filenamecat-lgpl.c: Update.
1662         * gnulib/import/filenamecat.h: Update.
1663         * gnulib/import/flexmember.h: Update.
1664         * gnulib/import/float+.h: Update.
1665         * gnulib/import/float.c: Update.
1666         * gnulib/import/float.in.h: Update.
1667         * gnulib/import/fnmatch.c: Update.
1668         * gnulib/import/fnmatch.in.h: Update.
1669         * gnulib/import/fnmatch_loop.c: Update.
1670         * gnulib/import/fpucw.h: Update.
1671         * gnulib/import/frexp.c: Update.
1672         * gnulib/import/frexpl.c: Update.
1673         * gnulib/import/fstat.c: Update.
1674         * gnulib/import/fstatat.c: Update.
1675         * gnulib/import/getcwd-lgpl.c: Update.
1676         * gnulib/import/getcwd.c: Update.
1677         * gnulib/import/getdtablesize.c: Update.
1678         * gnulib/import/getlogin_r.c: Update.
1679         * gnulib/import/getprogname.c: Update.
1680         * gnulib/import/getprogname.h: Update.
1681         * gnulib/import/gettext.h: Update.
1682         * gnulib/import/gettimeofday.c: Update.
1683         * gnulib/import/glob-libc.h: Update.
1684         * gnulib/import/glob.c: Update.
1685         * gnulib/import/glob.in.h: Update.
1686         * gnulib/import/glob_internal.h: Update.
1687         * gnulib/import/glob_pattern_p.c: Update.
1688         * gnulib/import/globfree.c: Update.
1689         * gnulib/import/hard-locale.c: Update.
1690         * gnulib/import/hard-locale.h: Update.
1691         * gnulib/import/intprops.h: Update.
1692         * gnulib/import/inttypes.in.h: Update.
1693         * gnulib/import/isnan.c: Update.
1694         * gnulib/import/isnand-nolibm.h: Update.
1695         * gnulib/import/isnand.c: Update.
1696         * gnulib/import/isnanl-nolibm.h: Update.
1697         * gnulib/import/isnanl.c: Update.
1698         * gnulib/import/itold.c: Update.
1699         * gnulib/import/libc-config.h: Update.
1700         * gnulib/import/limits.in.h: Update.
1701         * gnulib/import/localcharset.c: Update.
1702         * gnulib/import/localcharset.h: Update.
1703         * gnulib/import/localtime-buffer.c: Update.
1704         * gnulib/import/localtime-buffer.h: Update.
1705         * gnulib/import/lstat.c: Update.
1706         * gnulib/import/m4/00gnulib.m4: Update.
1707         * gnulib/import/m4/__inline.m4: Update.
1708         * gnulib/import/m4/absolute-header.m4: Update.
1709         * gnulib/import/m4/alloca.m4: Update.
1710         * gnulib/import/m4/builtin-expect.m4: Update.
1711         * gnulib/import/m4/canonicalize.m4: Update.
1712         * gnulib/import/m4/chdir-long.m4: Update.
1713         * gnulib/import/m4/close.m4: Update.
1714         * gnulib/import/m4/closedir.m4: Update.
1715         * gnulib/import/m4/configmake.m4: Update.
1716         * gnulib/import/m4/d-ino.m4: Update.
1717         * gnulib/import/m4/d-type.m4: Update.
1718         * gnulib/import/m4/dirent_h.m4: Update.
1719         * gnulib/import/m4/dirfd.m4: Update.
1720         * gnulib/import/m4/dirname.m4: Update.
1721         * gnulib/import/m4/double-slash-root.m4: Update.
1722         * gnulib/import/m4/dup.m4: Update.
1723         * gnulib/import/m4/dup2.m4: Update.
1724         * gnulib/import/m4/eealloc.m4: Update.
1725         * gnulib/import/m4/environ.m4: Update.
1726         * gnulib/import/m4/errno_h.m4: Update.
1727         * gnulib/import/m4/error.m4: Update.
1728         * gnulib/import/m4/exponentd.m4: Update.
1729         * gnulib/import/m4/exponentl.m4: Update.
1730         * gnulib/import/m4/extensions.m4: Update.
1731         * gnulib/import/m4/extern-inline.m4: Update.
1732         * gnulib/import/m4/fchdir.m4: Update.
1733         * gnulib/import/m4/fcntl-o.m4: Update.
1734         * gnulib/import/m4/fcntl.m4: Update.
1735         * gnulib/import/m4/fcntl_h.m4: Update.
1736         * gnulib/import/m4/fdopendir.m4: Update.
1737         * gnulib/import/m4/filenamecat.m4: Update.
1738         * gnulib/import/m4/flexmember.m4: Update.
1739         * gnulib/import/m4/float_h.m4: Update.
1740         * gnulib/import/m4/fnmatch.m4: Update.
1741         * gnulib/import/m4/fnmatch_h.m4: Update.
1742         * gnulib/import/m4/fpieee.m4: Update.
1743         * gnulib/import/m4/frexp.m4: Update.
1744         * gnulib/import/m4/frexpl.m4: Update.
1745         * gnulib/import/m4/fstat.m4: Update.
1746         * gnulib/import/m4/fstatat.m4: Update.
1747         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1748         * gnulib/import/m4/getcwd-path-max.m4: Update.
1749         * gnulib/import/m4/getcwd.m4: Update.
1750         * gnulib/import/m4/getdtablesize.m4: Update.
1751         * gnulib/import/m4/getlogin.m4: Update.
1752         * gnulib/import/m4/getlogin_r.m4: Update.
1753         * gnulib/import/m4/getpagesize.m4: Update.
1754         * gnulib/import/m4/getprogname.m4: Update.
1755         * gnulib/import/m4/gettimeofday.m4: Update.
1756         * gnulib/import/m4/glibc21.m4: Update.
1757         * gnulib/import/m4/glob.m4: Update.
1758         * gnulib/import/m4/glob_h.m4: Update.
1759         * gnulib/import/m4/gnulib-cache.m4: Update.
1760         * gnulib/import/m4/gnulib-common.m4: Update.
1761         * gnulib/import/m4/gnulib-comp.m4: Update.
1762         * gnulib/import/m4/gnulib-tool.m4: Update.
1763         * gnulib/import/m4/hard-locale.m4: Update.
1764         * gnulib/import/m4/include_next.m4: Update.
1765         * gnulib/import/m4/inttypes-pri.m4: Update.
1766         * gnulib/import/m4/inttypes.m4: Update.
1767         * gnulib/import/m4/isnand.m4: Update.
1768         * gnulib/import/m4/isnanl.m4: Update.
1769         * gnulib/import/m4/largefile.m4: Update.
1770         * gnulib/import/m4/limits-h.m4: Update.
1771         * gnulib/import/m4/localcharset.m4: Update.
1772         * gnulib/import/m4/locale-fr.m4: Update.
1773         * gnulib/import/m4/locale-ja.m4: Update.
1774         * gnulib/import/m4/locale-zh.m4: Update.
1775         * gnulib/import/m4/localtime-buffer.m4: Update.
1776         * gnulib/import/m4/longlong.m4: Update.
1777         * gnulib/import/m4/lstat.m4: Update.
1778         * gnulib/import/m4/malloc.m4: Update.
1779         * gnulib/import/m4/malloca.m4: Update.
1780         * gnulib/import/m4/math_h.m4: Update.
1781         * gnulib/import/m4/mbrtowc.m4: Update.
1782         * gnulib/import/m4/mbsinit.m4: Update.
1783         * gnulib/import/m4/mbsrtowcs.m4: Update.
1784         * gnulib/import/m4/mbstate_t.m4: Update.
1785         * gnulib/import/m4/memchr.m4: Update.
1786         * gnulib/import/m4/memmem.m4: Update.
1787         * gnulib/import/m4/mempcpy.m4: Update.
1788         * gnulib/import/m4/memrchr.m4: Update.
1789         * gnulib/import/m4/mkdir.m4: Update.
1790         * gnulib/import/m4/mkstemp.m4: Update.
1791         * gnulib/import/m4/mmap-anon.m4: Update.
1792         * gnulib/import/m4/mode_t.m4: Update.
1793         * gnulib/import/m4/msvc-inval.m4: Update.
1794         * gnulib/import/m4/msvc-nothrow.m4: Update.
1795         * gnulib/import/m4/multiarch.m4: Update.
1796         * gnulib/import/m4/nocrash.m4: Update.
1797         * gnulib/import/m4/off_t.m4: Update.
1798         * gnulib/import/m4/onceonly.m4: Update.
1799         * gnulib/import/m4/open-cloexec.m4: Update.
1800         * gnulib/import/m4/open.m4: Update.
1801         * gnulib/import/m4/openat.m4: Update.
1802         * gnulib/import/m4/opendir.m4: Update.
1803         * gnulib/import/m4/pathmax.m4: Update.
1804         * gnulib/import/m4/rawmemchr.m4: Update.
1805         * gnulib/import/m4/readdir.m4: Update.
1806         * gnulib/import/m4/readlink.m4: Update.
1807         * gnulib/import/m4/realloc.m4: Update.
1808         * gnulib/import/m4/rename.m4: Update.
1809         * gnulib/import/m4/rewinddir.m4: Update.
1810         * gnulib/import/m4/rmdir.m4: Update.
1811         * gnulib/import/m4/save-cwd.m4: Update.
1812         * gnulib/import/m4/secure_getenv.m4: Update.
1813         * gnulib/import/m4/setenv.m4: Update.
1814         * gnulib/import/m4/signal_h.m4: Update.
1815         * gnulib/import/m4/ssize_t.m4: Update.
1816         * gnulib/import/m4/stat-time.m4: Update.
1817         * gnulib/import/m4/stat.m4: Update.
1818         * gnulib/import/m4/std-gnu11.m4: Update.
1819         * gnulib/import/m4/stdbool.m4: Update.
1820         * gnulib/import/m4/stddef_h.m4: Update.
1821         * gnulib/import/m4/stdint.m4: Update.
1822         * gnulib/import/m4/stdio_h.m4: Update.
1823         * gnulib/import/m4/stdlib_h.m4: Update.
1824         * gnulib/import/m4/strchrnul.m4: Update.
1825         * gnulib/import/m4/strdup.m4: Update.
1826         * gnulib/import/m4/strerror.m4: Update.
1827         * gnulib/import/m4/string_h.m4: Update.
1828         * gnulib/import/m4/strstr.m4: Update.
1829         * gnulib/import/m4/strtok_r.m4: Update.
1830         * gnulib/import/m4/sys_socket_h.m4: Update.
1831         * gnulib/import/m4/sys_stat_h.m4: Update.
1832         * gnulib/import/m4/sys_time_h.m4: Update.
1833         * gnulib/import/m4/sys_types_h.m4: Update.
1834         * gnulib/import/m4/tempname.m4: Update.
1835         * gnulib/import/m4/time_h.m4: Update.
1836         * gnulib/import/m4/unistd-safer.m4: Update.
1837         * gnulib/import/m4/unistd_h.m4: Update.
1838         * gnulib/import/m4/warn-on-use.m4: Update.
1839         * gnulib/import/m4/wchar_h.m4: Update.
1840         * gnulib/import/m4/wchar_t.m4: Update.
1841         * gnulib/import/m4/wctype_h.m4: Update.
1842         * gnulib/import/m4/wint_t.m4: Update.
1843         * gnulib/import/malloc.c: Update.
1844         * gnulib/import/malloc/scratch_buffer.h: Update.
1845         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1846         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1847         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1848         * gnulib/import/malloca.c: Update.
1849         * gnulib/import/malloca.h: Update.
1850         * gnulib/import/malloca.valgrind: Update.
1851         * gnulib/import/math.in.h: Update.
1852         * gnulib/import/mbrtowc.c: Update.
1853         * gnulib/import/mbsinit.c: Update.
1854         * gnulib/import/mbsrtowcs-impl.h: Update.
1855         * gnulib/import/mbsrtowcs-state.c: Update.
1856         * gnulib/import/mbsrtowcs.c: Update.
1857         * gnulib/import/memchr.c: Update.
1858         * gnulib/import/memmem.c: Update.
1859         * gnulib/import/mempcpy.c: Update.
1860         * gnulib/import/memrchr.c: Update.
1861         * gnulib/import/mkdir.c: Update.
1862         * gnulib/import/mkstemp.c: Update.
1863         * gnulib/import/msvc-inval.c: Update.
1864         * gnulib/import/msvc-inval.h: Update.
1865         * gnulib/import/msvc-nothrow.c: Update.
1866         * gnulib/import/msvc-nothrow.h: Update.
1867         * gnulib/import/open.c: Update.
1868         * gnulib/import/openat-die.c: Update.
1869         * gnulib/import/openat-priv.h: Update.
1870         * gnulib/import/openat-proc.c: Update.
1871         * gnulib/import/openat.c: Update.
1872         * gnulib/import/openat.h: Update.
1873         * gnulib/import/opendir.c: Update.
1874         * gnulib/import/pathmax.h: Update.
1875         * gnulib/import/pipe-safer.c: Update.
1876         * gnulib/import/rawmemchr.c: Update.
1877         * gnulib/import/readdir.c: Update.
1878         * gnulib/import/readlink.c: Update.
1879         * gnulib/import/realloc.c: Update.
1880         * gnulib/import/ref-add.sin: Update.
1881         * gnulib/import/ref-del.sin: Update.
1882         * gnulib/import/rename.c: Update.
1883         * gnulib/import/rewinddir.c: Update.
1884         * gnulib/import/rmdir.c: Update.
1885         * gnulib/import/same-inode.h: Update.
1886         * gnulib/import/save-cwd.c: Update.
1887         * gnulib/import/save-cwd.h: Update.
1888         * gnulib/import/scratch_buffer.h: Update.
1889         * gnulib/import/secure_getenv.c: Update.
1890         * gnulib/import/setenv.c: Update.
1891         * gnulib/import/signal.in.h: Update.
1892         * gnulib/import/stat-time.c: Update.
1893         * gnulib/import/stat-time.h: Update.
1894         * gnulib/import/stat-w32.c: Update.
1895         * gnulib/import/stat-w32.h: Update.
1896         * gnulib/import/stat.c: Update.
1897         * gnulib/import/stdbool.in.h: Update.
1898         * gnulib/import/stddef.in.h: Update.
1899         * gnulib/import/stdint.in.h: Update.
1900         * gnulib/import/stdio.in.h: Update.
1901         * gnulib/import/stdlib.in.h: Update.
1902         * gnulib/import/str-two-way.h: Update.
1903         * gnulib/import/strchrnul.c: Update.
1904         * gnulib/import/strdup.c: Update.
1905         * gnulib/import/streq.h: Update.
1906         * gnulib/import/strerror-override.c: Update.
1907         * gnulib/import/strerror-override.h: Update.
1908         * gnulib/import/strerror.c: Update.
1909         * gnulib/import/string.in.h: Update.
1910         * gnulib/import/stripslash.c: Update.
1911         * gnulib/import/strnlen1.c: Update.
1912         * gnulib/import/strnlen1.h: Update.
1913         * gnulib/import/strstr.c: Update.
1914         * gnulib/import/strtok_r.c: Update.
1915         * gnulib/import/sys_stat.in.h: Update.
1916         * gnulib/import/sys_time.in.h: Update.
1917         * gnulib/import/sys_types.in.h: Update.
1918         * gnulib/import/tempname.c: Update.
1919         * gnulib/import/tempname.h: Update.
1920         * gnulib/import/time.in.h: Update.
1921         * gnulib/import/unistd--.h: Update.
1922         * gnulib/import/unistd-safer.h: Update.
1923         * gnulib/import/unistd.in.h: Update.
1924         * gnulib/import/unsetenv.c: Update.
1925         * gnulib/import/verify.h: Update.
1926         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1927         * gnulib/import/wchar.in.h: Update.
1928         * gnulib/import/wctype.in.h: Update.
1929         * gnulib/import/xalloc-oversized.h: Update.
1930         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1931         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1932
1933 2018-08-16  Gary Benson <gbenson@redhat.com>
1934
1935         PR gdb/13000:
1936         * gdb/main.c (captured_main_1): Exit with nonzero status
1937         in batch mode if the last command to be executed failed.
1938         * NEWS: Mention the above.
1939
1940 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1941
1942         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1943         end of warning message.
1944
1945 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1946
1947         PR gdb/22943:
1948         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1949         (aarch64_extract_return_value): Use
1950         aapcs_is_vfp_call_or_return_candidate.
1951         (aarch64_return_in_memory): Likewise.
1952         (aarch64_store_return_value): Likewise.
1953
1954 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1955
1956         * aarch64-tdep.c
1957         (aapcs_is_vfp_call_or_return_candidate): Make static
1958         (pass_in_v_or_stack): Remove function.
1959         (pass_in_v_vfp_candidate): New function.
1960         (aarch64_push_dummy_call): Check for float register candidates.
1961
1962 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1963
1964         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1965         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1966         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1967
1968 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1969
1970         PR build/23399
1971         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1972         (struct ipa_sym_addresses): Rename to...
1973         (struct ipa_sym_addresses_common): ... this.
1974         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1975
1976 2018-08-28  Tom Tromey  <tom@tromey.com>
1977
1978         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1979         (token_fifo): Now a std::vector.
1980         (yylex, c_parse): Update.
1981         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1982         (token_fifo): Now a std::vector.
1983         (yylex, d_parse): Update.
1984         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1985         (token_fifo): Now a std::vector.
1986         (yylex, go_parse): Update.
1987
1988 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1989
1990         * parser-defs.h (struct type_stack) <elements>: Change type to
1991         std::vector<union type_stack_elt>.
1992         <depth, size>: Remove.
1993         * parse.c (parse_exp_in_context_1): Adjust.
1994         (type_stack_reserve): Remove.
1995         (check_type_stack_depth): Remove.
1996         (insert_into_type_stack): Adjust to std::vector.
1997         (insert_type): Likewise.
1998         (push_type): Likewise.
1999         (push_type_int): Likewise.
2000         (insert_type_address_space): Likewise.
2001         (pop_type): Likewise.
2002         (pop_type_int): Likewise.
2003         (pop_typelist): Likewise.
2004         (pop_type_stack): Likewise.
2005         (append_type_stack): Likewise.
2006         (push_type_stack): Likewise.
2007         (get_type_stack): Likewise.
2008         (type_stack_cleanup): Likewise.
2009         (push_typelist): Likewise.
2010         (follow_types): Likewise.
2011         (_initialize_parse): Likewise.
2012
2013 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2014
2015         * NEWS: Mention csky target.
2016
2017 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2018             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2019             Don Breazeal  <donb@codesourcery.com>
2020
2021         * csky-linux-tdep.c: New file.
2022         * csky-tdep.c: Likewise.
2023         * csky-tdep.h: Likewise.
2024         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2025         csky-tdep.o.
2026         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2027         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2028         * configure.tgt: Add csky support.
2029
2030 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2031
2032         * python/py-framefilter.c (py_print_frame): Print frame architecture
2033         when printing on an MI output.
2034
2035 2018-08-27  Tom Tromey  <tom@tromey.com>
2036
2037         PR build/23087:
2038         * configure: Rebuild.
2039         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2040
2041 2018-08-27  Tom Tromey  <tom@tromey.com>
2042
2043         * aarch64-linux-tdep.c
2044         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2045         casts to int.
2046
2047 2018-08-27  Tom Tromey  <tom@tromey.com>
2048
2049         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2050         unsigned.
2051         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2052         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2053         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2054         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2055         unsigned.
2056
2057 2018-08-27  Tom Tromey  <tom@tromey.com>
2058
2059         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2060         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2061
2062 2018-08-27  Tom Tromey  <tom@tromey.com>
2063
2064         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2065         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2066         ULONGEST_MAX.
2067         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2068         ULONGEST_MAX.
2069         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2070         ULONGEST_MAX.
2071         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2072         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2073         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2074         ULONGEST_MAX.
2075         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2076         (ppc64_linux_sigaction_tramp_frame)
2077         (ppc32_linux_sighandler_tramp_frame)
2078         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2079         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2080         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2081         * mn10300-linux-tdep.c (am33_linux_sigframe)
2082         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2083         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2084         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2085         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2086         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2087         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2088         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2089         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2090         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2091         * microblaze-linux-tdep.c
2092         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2093         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2094         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2095         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2096         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2097         * common/common-types.h (ULONGEST_MAX): New define.
2098         (CORE_ADDR_MAX): Fix formatting.
2099         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2100         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2101         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2102         (arm_linux_rt_sigreturn_tramp_frame)
2103         (arm_eabi_linux_sigreturn_tramp_frame)
2104         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2105         (thumb2_eabi_linux_sigreturn_tramp_frame)
2106         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2107         (arm_linux_restart_syscall_tramp_frame)
2108         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2109         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2110         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2111         ULONGEST_MAX.
2112         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2113
2114 2018-08-27  Tom Tromey  <tom@tromey.com>
2115
2116         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2117         CORE_ADDR_MAX.
2118         * mips-tdep.c (mips_deal_with_atomic_sequence)
2119         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2120         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2121         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2122         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2123         CORE_ADDR_MAX.
2124         * aarch64-tdep.c (aarch64_software_single_step): Use
2125         CORE_ADDR_MAX.
2126
2127 2018-08-27  Tom Tromey  <tom@tromey.com>
2128
2129         * linespec.c (complete_linespec_component): Add cast to "char".
2130         * completer.c (completion_tracker::build_completion_result): Add
2131         cast to "char".
2132
2133 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2134
2135         * solist.h (struct solist, struct target_so_ops): Fix
2136         indentation.
2137
2138 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2139
2140         * ada-tasks.c (ada_task_info_s): Remove typedef.
2141         (DEF_VEC_O(ada_task_info_s)): Remove.
2142         (struct ada_tasks_inferior_data): Initialize fields.
2143         <task_list>: Make an std::vector.
2144         (get_ada_tasks_inferior_data): Allocate with new.
2145         (ada_get_task_number): Adjust.
2146         (get_task_number_from_id): Likewise.
2147         (valid_task_id): Likewise.
2148         (ada_get_task_info_from_ptid): Likewise.
2149         (iterate_over_live_ada_tasks): Likewise.
2150         (add_ada_task): Likewise.
2151         (read_known_tasks): Likewise.
2152         (ada_build_task_list): Likewise.
2153         (print_ada_task_info): Likewise.
2154         (info_task): Likewise.
2155         (task_command_1): Likewise.
2156
2157 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2158
2159         * ada-lang.c (add_angle_brackets): Return std::string.
2160
2161 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2162
2163         * python/py-threadevent.c (py_get_event_thread): Initialize
2164         pythread.
2165
2166 2018-08-24  Pedro Alves  <palves@redhat.com>
2167
2168         * python/py-bpevent.c (create_breakpoint_event_object): Use
2169         copy-initialization.
2170         * python/py-continueevent.c (emit_continue_event): Use
2171         copy-initialization.
2172         * python/py-exitedevent.c (create_exited_event_object): Return a
2173         gdbpy_ref<>.
2174         (emit_exited_event): Use copy-initialization.
2175         * python/py-inferior.c (python_new_inferior)
2176         (python_inferior_deleted, add_thread_object): Use
2177         copy-initialization.
2178         * python/py-infevents.c (create_inferior_call_event_object)
2179         (create_register_changed_event_object)
2180         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2181         (emit_inferior_call_event, emit_memory_changed_event)
2182         (emit_register_changed_event): Use copy-initialization.
2183         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2184         Return a gdbpy_ref<>.
2185         (emit_new_objfile_event): Use copy-initialization.
2186         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2187         (emit_clear_objfiles_event): Use copy-initialization.
2188         * python/py-signalevent.c (create_signal_event_object): Use
2189         copy-initialization.
2190         * python/py-threadevent.c (create_thread_event_object): Use
2191         copy-initialization.
2192
2193 2018-08-24  Pedro Alves  <palves@redhat.com>
2194             Simon Marchi  <simon.marchi@ericsson.com>
2195
2196         PR gdb/23379
2197         * python/py-continueevent.c: Include "gdbthread.h".
2198         (create_continue_event_object): Add intro comment.  Add 'ptid'
2199         parameter.  Use it to find thread to pass to
2200         create_thread_event_object.
2201         (emit_continue_event): Pass PTID down to
2202         create_continue_event_object.
2203         * python/py-event.h (py_get_event_thread): Declare.
2204         (create_thread_event_object): Remove default from 'thread'
2205         parameter.
2206         * python/py-stopevent.c (create_stop_event_object): Use
2207         py_get_event_thread.
2208         * python/py-threadevent.c (get_event_thread): Rename to ...
2209         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2210         and use it to find the thread.
2211         (create_thread_event_object): Assert that THREAD isn't null.
2212         Don't find the event thread here.
2213
2214 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2215
2216         * block.h (blockrange, blockranges): New struct declarations.
2217         (struct block): Add new field named `ranges'.
2218         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2219         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2220         macros for accessing ranges in struct block.
2221         (make_blockranges): New declaration.
2222         block.c (make_blockranges): New function.
2223         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2224         for block.
2225         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2226         * blockframe.c (cache_pc_function_block): New static global.
2227         (clear_pc_function_cache): Clear cache_pc_function_block.
2228         (find_pc_partial_function): Move comment to symtab.h.  Add
2229         support for non-contiguous blocks.
2230         * cli/cli-cmds.c (block.h): Include.
2231         (print_disassembly): Handle printing of non-contiguous blocks.
2232         (disassemble_current_function): Likewise.
2233         (disassemble_command): Likewise.
2234
2235         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2236         BLOCK_START.
2237         * blockframe.c (get_pc_function_start): Likewise.
2238         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2239         (gcc_symbol_address): Likewise.
2240         * compile/compile-object-run.c (compile_object_run): Likewise.
2241         * compile/compile.c (get_expr_block_and_pc): Likewise.
2242         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2243         (func_addr_to_tail_call_list): Likewise.
2244         * findvar.c (default_read_var_value): Likewise.
2245         * inline-frame.c (inline_frame_this_id): Likewise.
2246         (skip-inline_frames): Likewise.
2247         * infcmd.c (until_next_command): Likewise.
2248         * linespec.c (convert_linespec_to_sals): Likewise.
2249         * parse.c (parse_exp_in_context_1): Likewise.
2250         * printcmd.c (build_address_symbolic): likewise.
2251         (info_address_command): Likewise.
2252         symtab.c (find_function_start_sal): Likewise.
2253         (skip_prologue_sal): Likewise.
2254         (find_function_alias_target): Likewise.
2255         (find_gnu_ifunc): Likewise.
2256         * stack.c (find_frame_funname): Likewise.
2257         * symtab.c (fixup_symbol_section): Likewise.
2258         (find_function_start_sal): Likewise.
2259         (skip_prologue_sal): Likewsie.
2260         (find_function_alias_target): Likewise.
2261         (find_gnu_ifunc): Likewise.
2262         * tracepoint.c (info_scope_command): Likewise.
2263         * value.c (value_fn_field): Likewise.
2264
2265         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2266         in place of find_pc_partial_function.
2267         * blockframe.c (find_function_entry_range_from_pc): New function.
2268         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2269         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2270         for each range in a block.
2271
2272
2273 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2274
2275         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2276         incrementation.
2277
2278 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2279
2280         * solib-svr4.c (read_program_headers_from_bfd): Return
2281         gdb::optional<gdb::byte_vector>.
2282         (svr4_exec_displacement): Adjust.
2283
2284 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2285
2286         * solib-svr4.c (read_program_header): Return
2287         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2288         (find_program_interpreter): Return
2289         gdb::optional<gdb::byte_vector>.
2290         (scan_dyntag_auxv): Adjust.
2291         (enable_break): Adjust.
2292         (svr4_exec_displacement): Adjust.
2293
2294 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2295
2296         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2297         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2298
2299 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2300
2301         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2302         string_vprintf.
2303         * guile/scm-utils.c (gdbscm_printf): Likewise.
2304         * serial.c (serial_printf): Likewise.
2305         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2306
2307 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2308
2309         * stack.c (print_frame): Print frame architecture when printing on
2310         an MI output.
2311         * NEWS: Mention new "arch" attribute in frame output.
2312
2313 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2314
2315         * arch/aarch64.h (aarch64_regnum): Update comment.
2316
2317 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2318
2319         * NEWS: Add SVE to 8.2 section.
2320
2321 2018-08-21  Pedro Alves  <palves@redhat.com>
2322
2323         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2324         out from gdbscm_parse_function_args.
2325         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2326         gdbscm_parse_function_args_1.
2327
2328 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2329
2330         PR gdb/17816
2331         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2332         operator.
2333
2334 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2335
2336         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2337
2338 2018-08-19  Michael Spang  <spang@google.com>
2339
2340         PR gdb/11786
2341         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2342         for PT_TLS segments.
2343
2344 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2345
2346         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2347         dwarf_variable_value.
2348         * dwarf2-frame.c (class dwarf_expr_executor):
2349         Add override for dwarf_variable_value.
2350         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2351         (class symbol_needs_eval_context): Likewise.
2352         (indirect_synthetic_pointer): Add forward declaration.
2353         (sect_variable_value): New function.
2354         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2355         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2356         for DW_OP_GNU_variable_value.
2357
2358 2018-08-16  Tom Tromey  <tom@tromey.com>
2359
2360         * top.c (read_command_file): Update.
2361         (command_line_input): Remove "repeat" argument.
2362         * ada-lang.c (get_selections): Update.
2363         * linespec.c (decode_line_2): Update.
2364         * defs.h (command_line_input): Remove argument.
2365         * cli/cli-script.c (read_next_line): Update.
2366         * python/py-gdb-readline.c: Update.
2367
2368 2018-08-17  Tom Tromey  <tom@tromey.com>
2369
2370         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2371         command_line_input.
2372
2373 2018-08-15  Tom Tromey  <tom@tromey.com>
2374
2375         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2376
2377 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2378
2379         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2380         If used, use find_pc_partial_function to find address range
2381         to disassemble.
2382         * mi/mi-main.c (mi_cmd_list_features): Report
2383         "data-disassemble-a-option" feature.
2384         * NEWS: Mention new -data-disassemble option -a.
2385
2386 2018-08-13  Tom Tromey  <tom@tromey.com>
2387
2388         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2389
2390 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2391
2392         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2393         (aarch64_linux_collect_sve_regset): Likewise.
2394         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2395         * regcache.h (regcache_map_entry_size): New function.
2396
2397 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2398
2399         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2400         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2401         (SVE_HEADER_VL_LENGTH): Likewise.
2402         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2403         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2404         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2405         (SVE_HEADER_SIZE_OFFSET): Likewise.
2406         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2407         (SVE_HEADER_VL_OFFSET): Likewise.
2408         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2409         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2410         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2411         (SVE_HEADER_SIZE): Likewise.
2412         (aarch64_linux_core_read_vq): Add function.
2413         (aarch64_linux_core_read_description): Check for SVE section.
2414
2415 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2416
2417         * aarch64-fbsd-tdep.c
2418         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2419         collect_size.
2420         * aarch64-linux-tdep.c
2421         (aarch64_linux_iterate_over_regset_sections): Likewise.
2422         * alpha-linux-tdep.c
2423         (alpha_linux_iterate_over_regset_sections):
2424         * alpha-nbsd-tdep.c
2425         (alphanbsd_iterate_over_regset_sections): Likewise.
2426         * amd64-fbsd-tdep.c
2427         (amd64fbsd_iterate_over_regset_sections): Likewise.
2428         * amd64-linux-tdep.c
2429         (amd64_linux_iterate_over_regset_sections): Likewise.
2430         * arm-bsd-tdep.c
2431         (armbsd_iterate_over_regset_sections): Likewise.
2432         * arm-fbsd-tdep.c
2433         (arm_fbsd_iterate_over_regset_sections): Likewise.
2434         * arm-linux-tdep.c
2435         (arm_linux_iterate_over_regset_sections): Likewise.
2436         * corelow.c (get_core_registers_cb): Likewise.
2437         (core_target::fetch_registers): Likewise.
2438         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2439         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2440         * gdbarch.h (void): Regenerate.
2441         * gdbarch.sh: Add supply_size and collect_size.
2442         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2443         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2444         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2445         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2446         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2447         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2448         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2449         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2450         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2451         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2452         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2453         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2454         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2455         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2456         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2457         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2458         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2459         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2460         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2461         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2462         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2463         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2464         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2465         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2466         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2467         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2468         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2469         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2470         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2471         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2472
2473 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2474
2475         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2476         with string_printf.
2477
2478 2018-08-10  Keith Seitz  <keiths@redhat.com>
2479
2480         * compile/compile-c-support.c (add_code_header, add_code_footer):
2481         Move into policy class.
2482         (c_push_user_expression, pop_user_expression_nop)
2483         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2484         (compile_program): New host class.
2485         (c_compile_program): New typedef.
2486         (c_compute_porgram): Use c_compile_program.
2487
2488 2018-08-10  Keith Seitz  <keiths@redhat.com>
2489
2490         * compile/compile-internal.h (compile_instance::~compile_instance):
2491         Remove calls to htab_delete.
2492         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2493         * compile.c (compile_instance::compile_instance): Initialize
2494         htab unique pointers.
2495         (compile_instance::get_cached_type, compile_instance::insert_type)
2496         (compile_instance::error_symbol_once): Update for unique_ptr.
2497
2498 2018-08-10  Keith Seitz  <keiths@redhat.com>
2499
2500         * compile/compile-c-symbols.c (struct symbol_error)
2501         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2502         (compile_instance::insert_symbol_error)
2503         (compile_instance::error_symbol_once): Move to ...
2504         * compile/compile.c: ... here.
2505
2506 2018-08-10  Keith Seitz  <keiths@redhat.com>
2507
2508         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2509         instead of `new_compile_instance'.
2510         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2511         Update description.
2512         If the symbol error map is not initialized, create it.
2513         (generate_c_for_for_one_symbol): Do not check/initialize
2514         the symbol error map.
2515         * compile/compile-c-types.c (compile_c_instance): Make a class.
2516         Update all callers.
2517         (compile_instance::compile_instance): Initialize the type cache.
2518         (get_cached_type): New function.
2519         (insert_type): Update description.
2520         (compile_c_instance::m_default_cflags): Define.
2521         (convert_type): Update description.  Use get_cached_type.
2522         (delete_instance): Moved to destructor.
2523         (new_compile_instance): Moved to constructor.
2524         * compile/compile-c.h (compile_c_instance): Make class inheriting
2525         from compile_instance.
2526         <base>: Remove field.
2527         <type_map, symbol_err_map>: Move to base class.
2528         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2529         * compile/compile-internal.h (compile_instance): Make class.
2530         <type_map_t, symbol_err_map_t>: Define.
2531         <fe>: Rename to `m_gcc_fe'.
2532         <scope, block, gcc_target_options>: Add `m_' prefix.
2533         <m_type_map, m_symbol_err_map>: New fields, moved from
2534         compile_c_instance.
2535         <destroy>: Remove.
2536         (convert_type, new_compile_instance): Remove.
2537         * compile/compile.c (cleanup_compile_instance): Remove.
2538         (compile_to_object): Use unique_ptr to eliminate cleanups.
2539         (compile_instance::set_print_callback, compile_instance::version)
2540         (compile_instance::set_verbose)
2541         (compile_instance::set_driver_filename)
2542         (compile_instance::set_triplet_regexp)
2543         (compile_instance::set_arguments)
2544         (compile_instance::set_source_file)
2545         (compile_instance::compile): Define.
2546
2547 2018-08-10  Keith Seitz  <keiths@redhat.com>
2548
2549         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2550         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2551         gcc-c-fe.def to define C plugin.
2552         (delete_instance): Delete `c_plugin'.
2553         (new_compile_instance): Initialize `c_plugin'.
2554         * compile/compile-c.h: Include gcc_c_plugin.h.
2555         (struct compile_c_instance) <c_plugin>: New member.
2556         * gcc-c-plugin.h: New file.
2557         Update all callers with API change.
2558
2559 2018-08-10  Keith Seitz  <keiths@redhat.com>
2560
2561         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2562         (HFILES_NO_SRCDIR): ... to here.
2563         Add compile-internal.h and compile-c.h.
2564         * compile/compile-c-support.c: Include compile-c.h.
2565         * compile/compile-c-symbols.c: Include compile-c.h.
2566         (generate_c_for_variable_locations): Update comment.
2567         * compile/compile-c-types.c: Include compile-c.h.
2568         * compile/compile-c.h: New file -- moved C language declarations
2569         from other files here.
2570         * compile/compile-internal.h: Do not include hashtab.h or
2571         common/enum-flags.h.
2572         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2573         (gcc_convert_symbol, gcc_symbol_address)
2574         (generate_c_for_variable_locations, c_get_mode_for_size)
2575         (c_get_range_decl_name): Definitions moved to compile-c.h.
2576         * compile/compile-loc2c.c: Include compile-c.h.
2577
2578 2018-08-10  Keith Seitz  <keiths@redhat.com>
2579
2580         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2581         (c_symbol_substitution_name): ... this.
2582         Update all callers.
2583
2584 2018-08-10  Keith Seitz  <keiths@redhat.com>
2585
2586         * compile/compile-c-support.c (c_compute_program): Use
2587         unique_xmalloc_ptr to eliminate cleanup.
2588         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2589         Return a unique_xmalloc_ptr and eliminate cleanup.
2590         * compile/compile-internal.h (generate_c_for_variable_locations):
2591         Return unique_xmalloc_ptr and update description.
2592
2593 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2594
2595         * corelow.c (core_target::get_core_register_section): Rename
2596         min_size to section_min_size.
2597
2598 2018-08-09  Jim Wilson  <jimw@sifive.com>
2599
2600         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2601         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2602         * NEWS: Mention new GNU/Linux RISC-V target.
2603         * configure.host: Add riscv*-*-linux*.
2604         * configure.nat: Add riscv*.
2605         * configure.tgt: Add riscv*-*-linux*.
2606         * riscv-linux-nat.c: New file.
2607         * riscv-linux-tdep.c: New file.
2608
2609 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2610
2611         * infrun.c (resume): Make static, add forward declaration.
2612         (proceed): Update header comment.
2613         * infrun.h (resume): Delete declaration.
2614
2615 2018-08-09  Tom Tromey  <tom@tromey.com>
2616
2617         * riscv-tdep.h: Minor formatting fixes.
2618
2619 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2620
2621         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2622         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2623         (test_mkdir_recursive): Likewise.
2624         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2625
2626 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2627
2628         * valarith.c (value_subscripted_rvalue): If an array is not in
2629         memory, and we don't know the upper bound, then we can't know that
2630         the requested element exists or not.
2631
2632 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2633
2634         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2635         (target_options_to_string): Add comment.
2636
2637 2018-08-08  Tom Tromey  <tom@tromey.com>
2638
2639         * unittests/scoped_mmap-selftests.c: Check result of "write".
2640
2641 2018-08-08  Jim Wilson  <jimw@sifive.com>
2642
2643         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2644         (decode_register_index_short): New.
2645         (decode_j_type_insn, decode_cj_type_insn): New.
2646         (decode_b_type_insn, decode_cb_type_insn): New.
2647         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2648         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2649         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2650         is_c_sw_insn instead of is_sw_insn.
2651         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2652         (riscv_software_single_step): New.
2653         * riscv-tdep.h (riscv_software_single_step): Declare.
2654
2655         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2656         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2657
2658 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2659
2660         PR gdb/18050:
2661         * target.c (dispose_inferior): Don't dispose of inferiors that are
2662         already killed.
2663
2664 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2665
2666         * remote.c (remote_target::download_tracepoint): Change char* to
2667         const char*.
2668
2669 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2670
2671         * target.h (target_options_to_string): Return an std::string.
2672         * target.c (str_comma_list_concat_elem): Return void, use
2673         std::string.
2674         (do_option): Likewise.
2675         (target_options_to_string): Return an std::string.
2676         * linux-nat.c (linux_nat_target::wait): Adjust.
2677         * target-debug.h (target_debug_print_options): Adjust.
2678
2679 2018-08-07  Tom Tromey  <tom@tromey.com>
2680
2681         * Makefile.in (CPPFLAGS): New variable.
2682         (INTERNAL_CPPFLAGS): Use it.
2683
2684 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2685
2686         * NEWS: Mention the index cache.
2687
2688 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2689
2690         * common/pathstuff.h (get_standard_cache_dir): New.
2691         * common/pathstuff.c (get_standard_cache_dir): New.
2692         * build-id.h (build_id_to_string): New.
2693         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2694         DEBUG_STR_SUFFIX): Move to here.
2695         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2696         DEBUG_STR_SUFFIX): Move from there.
2697         (write_psymtabs_to_index): Make non-static, add basename
2698         parameter.  Write to temporary files, rename when done.
2699         (save_gdb_index_command): Adjust call to
2700         write_psymtabs_to_index.
2701         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2702         field.
2703         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2704         (get_gdb_index_contents_from_cache): New.
2705         (get_gdb_index_contents_from_cache_dwz): New.
2706         (dwarf2_initialize_objfile): Read index from cache.
2707         (dwarf2_build_psymtabs): Save to index.
2708         * dwarf-index-cache.h: New file.
2709         * dwarf-index-cache.c: New file.
2710         * dwarf-index-write.h: New file.
2711
2712 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2713
2714         * gnulib/aclocal.m4: Re-generate.
2715         * gnulib/config.in: Re-generate.
2716         * gnulib/configure: Re-generate.
2717         * gnulib/import/Makefile.am: Re-generate.
2718         * gnulib/import/Makefile.in: Re-generate.
2719         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2720         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2721         * gnulib/import/m4/mkdir.m4: New file.
2722         * gnulib/import/mkdir.c: New file.
2723         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2724         module.
2725
2726 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2727
2728         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2729         * common/scoped_mmap.c: New file.
2730         * common/scoped_mmap.h (destroy): New method.
2731         (~scoped_mmap, reset): Use destroy.
2732         (scoped_mmap): New move constructor.
2733         (mmap_file): New declaration.
2734         * unittests/scoped_mmap-selftests.c (test_normal,
2735         test_invalid_filename, run_tests): New functions.
2736         (_initialize_scoped_mmap_selftests): Register selftest.
2737
2738 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2739
2740         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2741         (read_gdb_index_from_buffer): ... this.  Remove section
2742         parameter, add buffer parameter.
2743         (get_gdb_index_contents_ftype,
2744         get_gdb_index_contents_dwz_ftype): New typedefs.
2745         (dwarf2_read_gdb_index): Add callback parameters to get the
2746         index contents.
2747         (get_gdb_index_contents_from_section): New.
2748         (dwarf2_initialize_objfile): Update call to
2749         dwarf2_read_gdb_index.
2750
2751 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2752
2753         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2754         (gdb_open_cloexec): Likewise.
2755         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2756         (commandline_from_pid): Likewise.
2757         (linux_xfer_osdata_threads): Likewise.
2758         (linux_xfer_osdata_fds): Likewise.
2759         * ada-lang.c (is_package_name): Likewise.
2760         * auxv.c (procfs_xfer_auxv): Likewise.
2761         * breakpoint.c (print_one_breakpoint_location): Use
2762         uiout::field_fmt.
2763         (print_one_catch_solib): Use string_printf.
2764         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2765         (add_pe_forwarded_sym): Likewise.
2766         * dwarf2read.c (create_type_unit_group): Likewise.
2767         (build_error_marker_type): Likewise.
2768         * infcall.c (get_function_name): Likewise.
2769         * valprint.c (print_converted_chars_to_obstack): Likewise.
2770         * xtensa-tdep.c (xtensa_register_type): Likewise.
2771
2772 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2773
2774         * remote.c (remote_target::download_tracepoint): Fix format
2775         string errors.
2776
2777 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2778
2779         * tracefile.c: Include common/byte-vector.h.
2780         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2781         with trace_regblock_size if needed.  Update uses of buf.
2782
2783 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2784
2785         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2786         std::vector<unsigned char>.
2787         * tracepoint.c (collection_list::collection_list): Remove
2788         m_regs_mask initializer from initializer list.  Resize
2789         m_regs_mask using the largest remote register number.
2790         (collection_list::add_remote_register): Remove size check on
2791         m_regs_mask.  Use at to access element.
2792         (collection_list::stringify): Change type of temp_buf to
2793         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2794         stringify the register mask.  Use pack_hex_byte for the register
2795         mask.
2796
2797 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2798
2799         * tracepoint.h (class collection_list) <add_register>: Remove.
2800         <add_remote_register, add_ax_registers, add_local_register>:
2801         Declare.
2802         <add_memrange>: Add scope parameter.
2803         * tracepoint.c (encode_actions_1): Likewise.
2804         (collection_list::add_register): Rename to ...
2805         (collection_list::add_remote_register): ... this.  Update
2806         comment.
2807         (collection_list::add_ax_registers, add_local_register): New
2808         methods.
2809         (collection_list::add_memrange): Add scope parameter.  Call
2810         add_local_register instead of add_register.
2811         (finalize_tracepoint_aexpr): New function.
2812         (collection_list::collect_symbol): Update calls to add_memrange.
2813         Call add_local_register instead of add_register.  Call
2814         add_ax_registers.  Call finalize_tracepoint_aexpr.
2815         (encode_actions_1): Get remote regnos for $reg action.  Call
2816         add_remote_register, add_ax_registers, and add_local_register.
2817         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2818         (validate_actionline): Call finalize_tracepoint_aexpr.
2819
2820 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2821
2822         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2823         Replace array buf with gdb::char_vector buf, of size
2824         get_remote_packet_size ().  Replace references to buf and
2825         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2826         and xsnprintf with snprintf.  Raise errors if the buffer is too
2827         small.
2828
2829 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2830
2831         * remote.c (remote_target::download_tracepoint): Fix the has_more
2832         predicate in the QTDP action list iteration.
2833
2834 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2835
2836         * remote.c (remote_target::download_tracepoint): Fix indentation
2837         in for block.
2838
2839 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2840
2841         * proc-api.c (_initialize_proc_api): Remove c, unused.
2842         * procfs.c (procfs_init_inferior): Remove signals, unused.
2843         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2844         unused.
2845
2846 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2847             Andrew Burgess  <andrew.burgess@embecosm.com>
2848
2849         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2850         'W_STOPCODE (0)' as this could be ambiguous.
2851
2852 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2853
2854         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2855         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2856         "ai_socktype").
2857
2858 2018-08-02  Tom Tromey  <tom@tromey.com>
2859
2860         PR symtab/16842.
2861         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2862         symbols.
2863         (process_structure_scope): Likewise.
2864
2865 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2866
2867         PR gdb/22629:
2868         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2869         kill inferior.
2870
2871 2018-08-02  Tom Tromey  <tom@tromey.com>
2872
2873         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2874         (darwin_suspend_inferior, darwin_resume_inferior)
2875         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2876         (darwin_check_new_threads): Check result of get_darwin_inferior.
2877
2878 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2879
2880         GDB 8.1.1 released.
2881
2882 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2883
2884         * varobj.c (varobj_get_path_expr_parent): Report an error if
2885         parent is a dynamic varobj.
2886
2887 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2888
2889         * gnulib/aclocal.m4: Re-generate.
2890         * gnulib/config.in: Re-generate.
2891         * gnulib/configure: Re-generate.
2892         * gnulib/import/Makefile.in: Re-generate.
2893         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2894         * gnulib/import/m4/onceonly.m4: Re-generate.
2895
2896 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2897
2898         * target-descriptions.c (struct xml_test_tdesc): New.
2899         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2900         (record_xml_tdesc): Update.
2901         (maintenance_check_xml_descriptions): Update.
2902         * target-descriptions.h (record_xml_tdesc): Update comment.
2903
2904 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2905
2906         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2907         checking array bounds are defined.
2908
2909 2018-07-30  Tom Tromey  <tom@tromey.com>
2910
2911         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2912         irreflexivity violation.
2913
2914 2018-07-30  Tom Tromey  <tom@tromey.com>
2915
2916         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2917         * value.c (unpack_long): Remove lint code.
2918         * valops.c (value_ind): Remove lint code.
2919         * valarith.c (value_x_binop, value_x_unop, value_equal)
2920         (value_pos): Remove lint code.
2921
2922 2018-07-28  Tom de Vries  <tdevries@suse.de>
2923
2924         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2925         with undefined upper bound as <optimized out>.
2926
2927 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2928
2929         * gcore.in: Rename variable "name" to "prefix".  Expand
2930         "usage" text.
2931
2932 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2933
2934         * windows-nat.c (windows_nat_target::create_inferior): Update to
2935         call close() in global namespace.
2936
2937 2018-07-26  Tom Tromey  <tom@tromey.com>
2938
2939         * dwarf-index-write.c (add_address_entry): Don't add objfile
2940         offsets.
2941         * dbxread.c (find_stab_function): Rename from
2942         find_stab_function_addr.  Return a bound_minimal_symbol.
2943         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2944         Don't add objfile offsets.
2945         (end_psymtab): Use raw_text_low, raw_text_high,
2946         MSYMBOL_VALUE_RAW_ADDRESS.
2947         (read_ofile_symtab): Update.
2948         (process_one_symbol): Update.
2949         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2950         offsets.
2951         (dw2_relocate): Remove.
2952         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2953         searching addrmap.
2954         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2955         Update.
2956         (process_psymtab_comp_unit_reader, add_partial_symbol)
2957         (add_partial_subprogram, dwarf2_ranges_read): Update.
2958         (load_partial_dies): Update.
2959         (add_address_entry): Don't add objfile offsets.
2960         (dwarf2_build_include_psymtabs): Update.
2961         (create_addrmap_from_aranges): Don't add objfile offsets.
2962         (dw2_find_pc_sect_compunit_symtab): Update.
2963         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2964         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2965         Update.
2966         (parse_partial_symbols): Don't add objfile offsets.  Use
2967         raw_text_low, raw_text_high.  Update.
2968         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2969         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2970         or call 'relocate' quick function.  Clear psymbol_map.
2971         * psympriv.h (struct partial_symbol) <address>: Add section
2972         offset.
2973         <set_unrelocated_address>: Rename from set_address.
2974         <raw_text_low, raw_text_high>: New methods.
2975         <text_low, text_high>: Add objfile parameter.
2976         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2977         set_unrelocated_address.
2978         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2979         (find_pc_psymbol): Update.
2980         (fixup_psymbol_section, relocate_psymtabs): Remove.
2981         (dump_psymtab, psym_functions): Update.
2982         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2983         parameter.
2984         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2985         (start_psymtab_common): Update.
2986         * symfile-debug.c (debug_qf_relocate): Remove.
2987         (debug_sym_quick_functions): Update.
2988         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2989         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2990         Update.
2991
2992 2018-07-26  Tom Tromey  <tromey@redhat.com>
2993
2994         * dbxread.c (end_psymtab): Use text_high_valid and
2995         text_low_valid.
2996         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2997         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2998         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2999         Update comment.
3000         <text_low_valid, text_high_valid>: New fields.
3001         <set_text_low, set_text_high>: Update.
3002         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3003
3004 2018-07-26  Tom Tromey  <tom@tromey.com>
3005
3006         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3007         Update.
3008         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3009         textlow and texthigh fields.
3010         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3011         Update.
3012         * mdebugread.c (parse_lines, parse_partial_symbols)
3013         (psymtab_to_symtab_1): Update.
3014         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3015         Rename fields.  Update comment.  Now private.
3016         <text_low, text_high, set_text_low, set_text_high>: New methods.
3017         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3018         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3019         (start_psymtab_common, maintenance_info_psymtabs)
3020         (maintenance_check_psymtabs): Update.
3021         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3022         texthigh fields.
3023         (scan_xcoff_symtab): Update.
3024
3025 2018-07-26  Tom Tromey  <tromey@redhat.com>
3026
3027         * psympriv.h (struct partial_symbol) <unrelocated_address,
3028         address, set_address>: New methods.
3029         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3030         (fixup_psymbol_section, relocate_psymtabs): Update.
3031         (print_partial_symbols): Add 'objfile' parameter.  Update.
3032         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3033         Update.
3034
3035 2018-07-26  Tom Tromey  <tom@tromey.com>
3036
3037         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3038         (debug_names::write_psymbols): Update.
3039         * psympriv.h (struct partial_symbol): Derive from
3040         general_symbol_info.
3041         <obj_section>: New method.
3042         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3043         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3044         (find_pc_sect_psymbol, fixup_psymbol_section)
3045         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3046         (print_partial_symbols, recursively_search_psymtabs)
3047         (compare_psymbols, psymbol_hash, psymbol_compare)
3048         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3049         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3050
3051 2018-07-26  Tom Tromey  <tromey@redhat.com>
3052
3053         * dbxread.c (end_psymtab): Remove dead code.
3054
3055 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3056
3057         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3058         DWARF unwinders are disabled.
3059         * dwarf2-frame.c: Add dwarf2read.h include.
3060         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3061         disabled.
3062         (dwarf2_frame_unwinders_enabled_p): Define.
3063         (show_dwarf_unwinders_enabled_p): New function.
3064         (_initialize_dwarf2_frame): Register switch to control DWARF
3065         unwinder use.
3066         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3067         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3068         (show_dwarf_cmdlist): Remove static keyword.
3069         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3070         (show_dwarf_cmdlist): Declare.
3071         * NEWS: Document new feature.
3072
3073 2018-07-26  Tom de Vries  <tdevries@suse.de>
3074
3075         PR breakpoints/23366
3076         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3077
3078 2018-07-26  Tom de Vries  <tdevries@suse.de>
3079
3080         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3081         DW_AT_count can't be translated to a dynamic prop.
3082
3083 2018-07-25  Tom de Vries  <tdevries@suse.de>
3084
3085         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3086         try/catch.
3087
3088 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3089
3090         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3091
3092 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3093
3094         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3095
3096 2018-07-24  Keith Seitz  <keiths@redhat.comt
3097
3098         PR symtab/23010
3099         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3100         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3101         instead of add_symbol_to_list.
3102         (read_file_scope): Call prepare_one_comp_unit before reading
3103         any other DIEs.
3104
3105 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3106
3107         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3108
3109 2018-07-24  Tom Tromey  <tom@tromey.com>
3110
3111         * utils.c (malloc, realloc, free): Don't declare.
3112         * configure, config.in: Rebuild.
3113         * configure.ac: Don't check for declarations of free, malloc, or
3114         realloc.
3115
3116 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3117
3118         * aarch64-linux-nat.c
3119         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3120         variable.
3121         * arm-linux-nat.c (fetch_regs): Likewise.
3122         (store_regs): Likewise.
3123         (fetch_vfp_regs): Likewise.
3124         (store_vfp_regs): Likewise.
3125         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3126         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3127         (arm_linux_nat_target::insert_watchpoint): Likewise.
3128         (arm_linux_nat_target::remove_watchpoint): Likewise.
3129         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3130         Likewise.
3131         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3132         Likewise.
3133         * ppc-linux-nat.c (fetch_register): Likewise.
3134         (fetch_all_gp_regs): Likewise.
3135         (fetch_ppc_registers): Likewise.
3136         (store_all_gp_regs): Likewise.
3137         (store_ppc_registers): Likewise.
3138         (hwdebug_insert_point): Likewise.
3139         (can_use_watchpoint_cond_accel): Likewise.
3140         * remote-sim.c (gdb_os_write_stdout): Likewise.
3141
3142 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3143             Tom Tromey  <tom@tromey.com>
3144
3145         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3146         test for it.
3147         * configure: Rebuild.
3148
3149 2018-07-22  Tom Tromey  <tom@tromey.com>
3150
3151         * regformats/regdat.sh: Define xmltarget_${name} inside
3152         #ifndef IN_PROCESS_AGENT.
3153
3154 2018-07-22  Tom Tromey  <tom@tromey.com>
3155
3156         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3157
3158 2018-07-22  Tom Tromey  <tom@tromey.com>
3159
3160         * symfile.c (reread_symbols): Notify iter, not objfile.
3161
3162 2018-07-22  Tom Tromey  <tom@tromey.com>
3163
3164         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3165         Use arch_ops.
3166         (ravenscar_thread_target::prepare_to_store): Likewise.
3167
3168 2018-07-22  Tom Tromey  <tom@tromey.com>
3169
3170         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3171         unused variable.  Call value_fetch_lazy when needed.
3172         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3173         Remove unused variable.  Call value_fetch_lazy when needed.
3174
3175 2018-07-22  Tom Tromey  <tom@tromey.com>
3176
3177         * m32c-tdep.c (mark_dma): Return void.
3178         (make_regs): Remove unused declarations.
3179
3180 2018-07-22  Tom Tromey  <tom@tromey.com>
3181
3182         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3183         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3184         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3185         bkscm_get_valid_block_smob_arg_unsafe for effect.
3186
3187 2018-07-22  Tom Tromey  <tom@tromey.com>
3188
3189         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3190         value_type.
3191
3192 2018-07-22  Tom Tromey  <tom@tromey.com>
3193
3194         * windows-nat.c (saved_context): Conditionally define.
3195         * remote.c (remote_target::remote_btrace_maybe_reopen):
3196         Conditionally declare "warned".
3197         * inflow.c (sigquit_ours): Conditionally define.
3198         (new_tty): Move "tty" declaration inside #if.
3199         * guile/guile.c (guile_datadir): Conditionally define.
3200         * charset.c (set_be_le_names): Move some declarations inside #if.
3201         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3202         #if.
3203         (parse_xml_btrace_conf): Likewise.
3204
3205 2018-07-22  Tom Tromey  <tom@tromey.com>
3206
3207         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3208
3209 2018-07-22  Tom Tromey  <tom@tromey.com>
3210
3211         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3212         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3213         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3214         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3215         * stack.c (frame_apply_level_command): Remove unused variable.
3216         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3217         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3218         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3219         unused variable.
3220         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3221         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3222         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3223         variable.
3224         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3225         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3226         variable.
3227         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3228         Remove unused variable.
3229         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3230         variable.
3231         * common/tdesc.c (print_xml_feature::visit): Remove unused
3232         variable.
3233         * compile/compile-object-load.c (store_regs): Remove unused
3234         variables.
3235         * complaints.c (clear_complaints): Remove unused variable.
3236         * corelow.c (core_target_open): Remove unused variable.
3237         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3238         variable.
3239         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3240         variable.
3241         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3242         variable.
3243         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3244         variable.
3245         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3246         variable.
3247         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3248         variable.
3249         * ia64-tdep.c (examine_prologue): Remove unused variable.
3250         * infcall.c (run_inferior_call): Remove unused variable.
3251         * inferior.c (exit_inferior): Remove unused variable.
3252         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3253         * linespec.c (decode_line_2): Remove unused variable.
3254         * linux-nat.c (super_close): Remove.
3255         * linux-tdep.c (linux_info_proc): Remove unused variable.
3256         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3257         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3258         Remove unused variable.
3259         * parse.c (find_minsym_type_and_address): Remove unused variable.
3260         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3261         variable.
3262         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3263         variable.
3264         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3265         variables.
3266         * record-btrace.c (record_btrace_target::store_registers): Remove
3267         unused variable.
3268         (cmd_show_record_btrace_cpu): Remove unused variable.
3269         * riscv-tdep.c (riscv_register_reggroup_p)
3270         (riscv_push_dummy_call, riscv_return_value): Remove unused
3271         variable.
3272         * rust-exp.y (literal): Remove unused variable.
3273         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3274         unused variable.
3275         <STRUCTOP_ANONYMOUS>: Likewise.
3276         * s390-linux-tdep.c (s390_linux_init_abi_31)
3277         (s390_linux_init_abi_64): Remove unused variable.
3278         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3279         (file_select_thread, net_windows_open, _initialize_ser_windows):
3280         Remove unused variables.
3281         * symtab.c (find_pc_sect_line): Remove unused variable.
3282         * target-memory.c (compute_garbled_blocks): Remove unused
3283         variable.
3284         (target_write_memory_blocks): Remove unused variable.
3285         * target.c (target_stack::unpush): Remove unused variables.
3286         * tracepoint.c (start_tracing, all_tracepoint_actions)
3287         (merge_uploaded_trace_state_variables)
3288         (print_one_static_tracepoint_marker): Remove unused variable.
3289         * unittests/basic_string_view/element_access/char/1.cc (test01):
3290         Remove unused variable.
3291         * windows-nat.c (windows_continue, windows_add_all_dlls)
3292         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3293         Remove unused variables.
3294
3295 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3296
3297         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3298         attr_profile in HAVE_ELF.
3299         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3300         HAVE_ELF.
3301
3302 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3303
3304         * frame.c (frame_register_unwind): Change parameter name.
3305         (frame_unwind_register): Likewise.
3306         (frame_unwind_register_value): Likewise.
3307         (frame_unwind_register_signed): Likewise.
3308         (frame_unwind_register_unsigned): Likewise.
3309         * frame.h (frame_register_unwind): Likewise.
3310         (frame_unwind_register): Likewise.
3311         (frame_unwind_register_value): Likewise.
3312         (frame_unwind_register_signed): Likewise.
3313         (frame_unwind_register_unsigned): Likewise.
3314         (frame_unwind_arch): Likewise.
3315
3316 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3317
3318         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3319         ISA maintenance.
3320
3321 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3322
3323         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3324         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3325         hand.
3326
3327 2018-07-20  Keith Seitz  <keiths@redhat.com>
3328
3329         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3330         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3331         m_compunit_symtab, m_language>: Add "m_" prefix.
3332         Update all uses.
3333         * buildsym.c: Update all uses.
3334
3335 2018-07-20  Tom Tromey  <tom@tromey.com>
3336
3337         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3338         * buildsym.h (record_line_ftype): Remove typedef.
3339
3340 2018-07-20  Tom Tromey  <tom@tromey.com>
3341
3342         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3343         (end_expandable_symtab): Likewise.
3344         (end_symtab_get_static_block): Likewise.
3345         (end_symtab_from_static_block): Likewise.
3346         * buildsym-legacy.c (augment_type_symtab): Remove.
3347         (end_expandable_symtab): Remove.
3348         (end_symtab_get_static_block): Remove.
3349         (end_symtab_from_static_block): Remove.
3350
3351 2018-07-20  Tom Tromey  <tom@tromey.com>
3352
3353         * dwarf2read.c: Include buildsym.h.
3354         (struct dwarf2_cu) <builder>: New method.
3355         (fixup_go_packaging): Update.
3356         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3357         use scoped_free_pendings.
3358         (using_directives): Add "cu" parameter, remove "language".
3359         (read_import_statement, setup_type_unit_groups, )
3360         (read_func_scope, read_lexical_block_scope)
3361         (dwarf2_record_block_ranges, read_namespace): Update.
3362         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3363         (lnp_state_machine::handle_end_sequence): Update.
3364         (class lnp_state_machine) <m_cu>: New member.
3365         <m_record_line_callback>: Remove.
3366         <m_currently_recording_lines>: New member.
3367         (lnp_state_machine::handle_set_file): Update.
3368         (noop_record_line): Remove.
3369         (dwarf_record_line_p): Add cu parameter.
3370         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3371         (lnp_state_machine::record_line)
3372         (lnp_state_machine::lnp_state_machine)
3373         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3374         (dwarf_decode_lines): Update.
3375         (dwarf2_start_subfile): Add cu parameter.
3376         (dwarf2_start_symtab, new_symbol): Update.
3377         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3378         Remove dwarf2_per_objfile parameter.
3379         (dwarf_decode_macros): Update.
3380
3381 2018-07-20  Tom Tromey  <tom@tromey.com>
3382
3383         * stabsread.c (define_symbol): Update.
3384         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3385         * dwarf2read.c (new_symbol): Update.
3386         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3387         * cp-namespace.c: Include buildsym.h.
3388         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3389         * buildsym-legacy.c (get_buildsym_compunit): New function.
3390
3391 2018-07-20  Tom Tromey  <tom@tromey.com>
3392
3393         * xcoffread.c: Include buildsym-legacy.h.
3394         * windows-nat.c: Include buildsym-legacy.h.
3395         * stabsread.c: Include buildsym-legacy.h.
3396         * mdebugread.c: Include buildsym-legacy.h.
3397         * buildsym-legacy.h: New file.
3398         * buildsym-legacy.c: New file, from buildsym.c.
3399         * go32-nat.c: Include buildsym-legacy.h.
3400         * dwarf2read.c: Include buildsym-legacy.h.
3401         * dbxread.c: Include buildsym-legacy.h.
3402         * cp-namespace.c: Include buildsym-legacy.h.
3403         * coffread.c: Include buildsym-legacy.h.
3404         * buildsym.h: Move some contents to buildsym-legacy.h.
3405         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3406         buildsym-legacy.c.
3407         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3408
3409 2018-07-20  Tom Tromey  <tom@tromey.com>
3410
3411         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3412         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3413         (buildsym_compunit::buildsym_compunit)
3414         (buildsym_compunit::~buildsym_compunit)
3415         (buildsym_compunit::get_macro_table): Define.
3416
3417 2018-07-20  Tom Tromey  <tom@tromey.com>
3418
3419         * buildsym.c (reset_symtab_globals): Remove.
3420         (buildsym_compunit::end_symtab_from_static_block): Update.
3421         (buildsym_compunit::augment_type_symtab): Update.
3422         (end_symtab_from_static_block): Call free_buildsym_compunit.
3423         (augment_type_symtab, end_symtab, end_expandable_symtab):
3424         Likewise.
3425
3426 2018-07-20  Tom Tromey  <tom@tromey.com>
3427
3428         * arch-utils.c: Do not include buildsym.h.
3429         * mipsread.c: Do not include buildsym.h.
3430         * machoread.c: Do not include buildsym.h.
3431         * elfread.c: Do not include buildsym.h.
3432
3433 2018-07-20  Tom Tromey  <tom@tromey.com>
3434
3435         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3436         initialization.
3437         (buildsym_compunit): Add new constructor.
3438         (struct buildsym_compunit) <get_last_source_file, finish_block,
3439         record_block_range, start_subfile, patch_subfile_names,
3440         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3441         set_last_source_start_addr, get_last_source_start_addr,
3442         get_local_using_directives, set_local_using_directives,
3443         get_global_using_directives, outermost_context_p,
3444         get_current_context_stack, get_context_stack_depth,
3445         get_current_subfile, get_local_symbols, get_file_symbols,
3446         get_global_symbols, record_debugformat, record_producer,
3447         push_context, pop_context, end_symtab_get_static_block,
3448         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3449         New public methods.
3450         <record_pending_block, finish_block_internal, make_blockvector,
3451         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3452         private methods.
3453         Update all users.
3454
3455 2018-05-22  Tom Tromey  <tom@tromey.com>
3456
3457         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3458         parameter.
3459         (finish_block_internal): Update.
3460
3461 2018-07-20  Tom Tromey  <tom@tromey.com>
3462
3463         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3464         parameter.
3465         (finish_block_internal): Update.
3466
3467 2018-07-20  Tom Tromey  <tom@tromey.com>
3468
3469         * buildsym.h (EXTERN): Don't define or undef.
3470         * buildsym.c (EXTERN): Don't define.
3471
3472 2018-07-20  Tom Tromey  <tom@tromey.com>
3473
3474         * buildsym.c: Remove TODO comment.
3475
3476 2018-07-20  Tom Tromey  <tom@tromey.com>
3477
3478         * coffread.c (coff_symtab_read): Update.
3479         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3480         (xcoff_new_init): Update.
3481         * mipsread.c (mipscoff_new_init): Update.
3482         * mdebugread.c (mdebug_build_psymtabs): Update.
3483         * elfread.c (elf_new_init): Update.
3484         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3485         Update.
3486         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3487         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3488         (stabsect_build_psymtabs): Update.
3489         * buildsym.h (buildsym_init): Don't declare.
3490         * buildsym.c: Update comment.
3491         (prepare_for_building): Remove.
3492         (start_symtab, restart_symtab): Update.
3493         (reset_symtab_globals): Update comment.
3494         (buildsym_init): Remove.
3495
3496 2018-07-20  Tom Tromey  <tom@tromey.com>
3497
3498         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3499         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3500         (read_enum_type, common_block_start, common_block_end)
3501         (cleanup_undefined_types_1, finish_global_stabs): Update.
3502         * mdebugread.c (psymtab_to_symtab_1): Update.
3503         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3504         (read_lexical_block_scope, new_symbol): Update.
3505         * dbxread.c (process_one_symbol): Update.
3506         * coffread.c (coff_symtab_read, process_coff_symbol)
3507         (coff_read_enum_type): Update.
3508         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3509         declare.
3510         (get_local_symbols, get_file_symbols, get_global_symbols): New
3511         functions.
3512         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3513         m_global_symbols.
3514         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3515         (~scoped_free_pendings): Update.
3516         (finish_block, prepare_for_building, reset_symtab_globals)
3517         (end_symtab_get_static_block, end_symtab_with_blockvector)
3518         (augment_type_symtab, push_context): Update.
3519         (get_local_symbols, get_file_symbols, get_global_symbols): New
3520         functions.
3521         (buildsym_init): Update.
3522
3523 2018-07-20  Tom Tromey  <tom@tromey.com>
3524
3525         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3526         (process_full_type_unit): Likewise.
3527         (dwarf2_start_symtab): Set list_in_scope.
3528
3529 2018-07-20  Tom Tromey  <tom@tromey.com>
3530
3531         * dwarf2read.c (process_psymtab_comp_unit_reader)
3532         (build_type_psymtabs_reader): Do not set list_in_scope.
3533
3534 2018-07-20  Tom Tromey  <tom@tromey.com>
3535
3536         * buildsym.c (free_pendings): Remove.
3537         (add_symbol_to_list, scoped_free_pendings)
3538         (finish_block_internal, buildsym_init): Update.
3539
3540 2018-07-20  Tom Tromey  <tom@tromey.com>
3541
3542         * xcoffread.c (read_xcoff_symtab): Update.
3543         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3544         Update.
3545         * dbxread.c (process_one_symbol): Update.
3546         * coffread.c (coff_symtab_read): Update.
3547         * buildsym.h (finish_block): Update.
3548         * buildsym.c (finish_block): Remove "listhead" argument.
3549         (end_symtab_get_static_block): Update.
3550
3551 2018-07-20  Tom Tromey  <tom@tromey.com>
3552
3553         * buildsym.h (class scoped_free_pendings): Remove constructor.
3554         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3555         method.
3556         <m_pending_block_obstack, m_pending_blocks>: New members.
3557         (pending_block_obstack, pending_blocks): Remove.
3558         (scoped_free_pendings::scoped_free_pendings): Default.
3559         (~scoped_free_pendings): Update.
3560         (free_pending_blocks): Remove.
3561         (finish_block_internal, record_pending_block, make_blockvector)
3562         (end_symtab_get_static_block, augment_type_symtab, push_context)
3563         (buildsym_init): Update.
3564
3565 2018-07-20  Tom Tromey  <tom@tromey.com>
3566
3567         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3568         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3569         members.
3570         (pending_addrmap, pending_addrmap_obstack)
3571         (pending_addrmap_interesting): Remove.
3572         (scoped_free_pendings, record_block_range, make_blockvector)
3573         (prepare_for_building, reset_symtab_globals, buildsym_init):
3574         Update.
3575
3576 2018-07-20  Tom Tromey  <tom@tromey.com>
3577
3578         * xcoffread.c (process_linenos): Update.
3579         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3580         * mdebugread.c (psymtab_to_symtab_1): Update.
3581         * dwarf2read.c (setup_type_unit_groups)
3582         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3583         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3584         * dbxread.c (process_one_symbol): Update.
3585         * coffread.c (coff_symtab_read, enter_linenos)
3586         (process_coff_symbol): Update.
3587         * buildsym.h (current_subfile): Don't declare.
3588         (get_current_subfile): Declare.
3589         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3590         member.
3591         (start_subfile, free_buildsym_compunit, push_subfile)
3592         (prepare_for_building, start_symtab): Update.
3593         (get_current_subfile): New function.
3594
3595 2018-07-20  Tom Tromey  <tom@tromey.com>
3596
3597         * coffread.c (coff_symtab_read): Update.
3598         * xcoffread.c (read_xcoff_symtab): Update.
3599         * dwarf2read.c (new_symbol): Update.
3600         (read_func_scope, read_lexical_block_scope): Update.
3601         * dbxread.c (process_one_symbol): Update.
3602         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3603         (outermost_context_p): Remove macro.
3604         (outermost_context_p, get_current_context_stack)
3605         (get_context_stack_depth): Declare.
3606         (pop_context): Return struct context_stack.
3607         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3608         member.
3609         (context_stack_size): Remove.
3610         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3611         (prepare_for_building, end_symtab_get_static_block)
3612         (augment_type_symtab, push_context): Update.
3613         (pop_context): Return struct context_stack.
3614         (outermost_context_p, get_current_context_stack)
3615         (get_context_stack_depth): New functions.
3616         (buildsym_init): Update.
3617
3618 2018-07-20  Tom Tromey  <tom@tromey.com>
3619
3620         * rust-exp.y: Now a pure parser.  Update all rules.
3621         (%union): Move earlier.
3622         (current_parser, work_obstack): Remove globals.
3623         (rust_parser, ~rust_parser): Update.
3624         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3625         lex_character, lex_number, lex_string, lex_identifier,
3626         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3627         convert_name, convert_params_to_expression,
3628         convert_ast_to_expression, ast_basic_type, ast_operation,
3629         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3630         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3631         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3632         ast_array_type, ast_slice_type, ast_reference_type,
3633         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3634         (rust_parse): Update.
3635         (rustyyerror, rustyylex): Add parser parameter.
3636         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3637         (rust_lex_stringish_test, rust_lex_test_sequence)
3638         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3639         (rust_lex_test_push_back, rust_lex_tests): Update.
3640
3641 2018-07-19  Pedro Alves  <palves@redhat.com>
3642
3643         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3644         gdb::unique_xmalloc_ptr.
3645         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3646         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3647         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3648         copy-initialization.
3649         * guile/scm-pretty-print.c (ppscm_print_children): Use
3650         gdb::unique_xmalloc_ptr instead of cleanups.
3651         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3652         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3653         gdb::unique_xmalloc_ptr.
3654         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3655         Adjust to use gdb::unique_xmalloc_ptr.
3656         * guile/scm-utils.c (extract_arg): Adjust.
3657         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3658         gdb::unique_xmalloc_ptr instead of a cleanup.
3659
3660 2018-07-19  Tom Tromey  <tom@tromey.com>
3661
3662         * utils.c (do_value_free_to_mark)
3663         (make_cleanup_value_free_to_mark): Remove.
3664         * utils.h (make_cleanup_value_free_to_mark): Remove.
3665
3666 2018-07-19  Pedro Alves  <palves@redhat.com>
3667
3668         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3669         forwarding reference.
3670
3671 2018-07-18  Pedro Alves  <palves@redhat.com>
3672
3673         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3674         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3675         cleanup.
3676
3677 2018-07-18  Pedro Alves  <palves@redhat.com>
3678
3679         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3680         exceptions.
3681         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3682         (gdbscm_wrap): New.
3683         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3684         directly instead of a cleanup.
3685         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3686         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3687         (vlscm_binop_gdbthrow): New, factored out from ...
3688         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3689         (vlscm_rich_compare): Use gdbscm_wrap.
3690         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3691         instead of a cleanup.
3692         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3693         cleanup.
3694         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3695         Use xfree directly instead of a cleanup.
3696         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3697         Adjust to use gdbscm_wrap and scoped_value_mark.
3698         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3699         (gdbscm_value_address, gdbscm_value_dereference)
3700         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3701         scoped_value_mark.
3702         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3703         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3704         scoped_value_mark.
3705         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3706         gdbscm_wrap and scoped_value_mark.
3707         (gdbscm_value_to_string): Use xfree directly instead of a
3708         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3709         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3710         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3711         scoped_value_mark.
3712         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3713         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3714         scoped_value_mark.
3715         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3716         gdbscm_wrap.
3717
3718 2018-07-18  Tom de Vries  <tdevries@suse.de>
3719
3720         * findvar.c (default_read_var_value): Also resolve dynamic type for
3721         LOC_OPTIMIZED_OUT vars.
3722
3723 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3724
3725         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3726         decoding.
3727
3728 2018-07-17  Tom Tromey  <tom@tromey.com>
3729
3730         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3731         (compute_enum_list, pascm_set_param_value_x)
3732         (gdbscm_parameter_value): Update.
3733         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3734         (gdbscm_scm_to_host_string): Update.
3735         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3736         Update.
3737         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3738         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3739         * guile/scm-string.c (gdbscm_scm_to_string): Return
3740         unique_xmalloc_ptr.
3741         (gdbscm_scm_to_host_string): Likewise.
3742
3743 2018-07-17  Tom Tromey  <tom@tromey.com>
3744
3745         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3746         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3747         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3748         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3749         unique_xmalloc_ptr.
3750
3751 2018-07-17  Tom Tromey  <tom@tromey.com>
3752
3753         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3754         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3755         Update.
3756         * guile/scm-cmd.c (cmdscm_function): Update.
3757         * guile/scm-pretty-print.c
3758         (ppscm_print_exception_unless_memory_error): Update.
3759         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3760         Return unique_xmalloc_ptr.
3761
3762 2018-07-17  Tom Tromey  <tom@tromey.com>
3763
3764         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3765         Use string_printf.
3766
3767 2018-07-17  Jim Wilson  <jimw@sifive.com>
3768
3769         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3770         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3771         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3772         unecessary braces after EF_RISCV_RVC test.  Delete call to
3773         set_gdbarch_decr_pc_after_break.
3774
3775         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3776         RISCV_LAST_FP_REGNUM + 1.
3777         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3778
3779 2018-07-17  Tom Tromey  <tom@tromey.com>
3780
3781         * configure.ac: Remove --disable-gdbcli.
3782         * configure: Rebuild.
3783         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3784         (SUBDIR_CLI_CFLAGS): Remove.
3785         (SFILES): Use SUBDIR_CLI_SRCS.
3786         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3787
3788 2018-07-17  Tom Tromey  <tom@tromey.com>
3789
3790         PR gdb/18624:
3791         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3792
3793 2018-07-16  Jim Wilson  <jimw@sifive.com>
3794
3795         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3796
3797 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3798
3799         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3800         variable.
3801         (libunwind_frame_sniffer): Likewise.
3802         (libunwind_frame_prev_register): Likewise.
3803         (libunwind_sigtramp_frame_sniffer): Likewise.
3804         * ia64-tdep.c (ia64_access_reg): Likewise.
3805         (ia64_access_rse_reg): Likewise.
3806         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3807         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3808
3809 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3810
3811         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3812
3813 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3814
3815         * remote-sim.c (gdbsim_target::close,
3816         gdbsim_target::mourn_inferior): Remove unused variables.
3817
3818 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3819
3820         * ia64-tdep.c (ktab_buf): New global.
3821         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3822         (get_kernel_table): Adjust.
3823
3824 2018-07-16  Tom Tromey  <tom@tromey.com>
3825
3826         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3827         * dwarf2read.c (using_directives, new_symbol): Use
3828         outermost_context_p.
3829         * dbxread.c (process_one_symbol): Use outermost_context_p.
3830         * coffread.c (coff_symtab_read): Use outermost_context_p.
3831
3832 2018-07-16  Tom Tromey  <tom@tromey.com>
3833
3834         * dwarf2read.c (using_directives, read_func_scope)
3835         (read_lexical_block_scope): Update.
3836         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3837         * buildsym.h (local_using_directives, global_using_directives):
3838         Don't declare.
3839         (get_local_using_directives, set_local_using_directives)
3840         (get_global_using_directives): Declare.
3841         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3842         m_global_using_directives>: New members.
3843         (finish_block_internal, prepare_for_building)
3844         (reset_symtab_globals, end_symtab_get_static_block)
3845         (push_context): Update.
3846         (get_local_using_directives, set_local_using_directives)
3847         (get_global_using_directives): New functions.
3848         (buildsym_init): Update.
3849
3850 2018-07-16  Tom Tromey  <tom@tromey.com>
3851
3852         * xcoffread.c (xcoff_initial_scan): Don't call
3853         free_pending_blocks.
3854         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3855         * buildsym.h (class scoped_free_pendings): Add constructor.
3856         (free_pending_blocks): Don't declare.
3857         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3858         (free_pending_blocks): Now static.
3859
3860 2018-07-16  Tom Tromey  <tom@tromey.com>
3861
3862         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3863         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3864         member.
3865         (struct subfile_stack): Remove.
3866         (subfile_stack): Remove.
3867         (push_subfile, pop_subfile, buildsym_init): Update.
3868
3869 2018-07-16  Tom Tromey  <tom@tromey.com>
3870
3871         * buildsym.c (push_subfile): Use gdb_assert.
3872         (pop_subfile): Use gdb_assert.
3873
3874 2018-07-16  Tom Tromey  <tom@tromey.com>
3875
3876         * buildsym.h (merge_symbol_lists): Remove.
3877         * buildsym.c (merge_symbol_lists): Remove.
3878
3879 2018-07-16  Tom Tromey  <tom@tromey.com>
3880
3881         * stabsread.c (scan_file_globals): Update comment.
3882         * stabsread.h (scan_file_globals): Move from buildsym.h.
3883         * buildsym.h (scan_file_globals): Move to stabsread.h.
3884
3885 2018-07-16  Tom Tromey  <tom@tromey.com>
3886
3887         * xcoffread.c (xcoff_new_init): Update.
3888         * mipsread.c (mipscoff_new_init): Update.
3889         * mdebugread.c (mdebug_build_psymtabs): Update.
3890         * elfread.c (elf_new_init): Update.
3891         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3892         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3893         * buildsym.h (buildsym_new_init): Don't declare.
3894         * buildsym.c (buildsym_new_init): Remove.
3895
3896 2018-07-16  Tom Tromey  <tom@tromey.com>
3897
3898         * stabsread.h (within_function): Move from buildsym.h.
3899         * stabsread.c (start_stabs): Clear within_function.
3900         * coffread.c (coff_start_symtab): Clear within_function.
3901         * buildsym.h (within_function): Move to stabsread.h.
3902         * buildsym.c (prepare_for_building): Update.
3903
3904 2018-07-16  Tom Tromey  <tom@tromey.com>
3905
3906         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3907         * dwarf2read.c (dwarf2_start_symtab): Don't set
3908         processing_gcc_compilation.
3909         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3910
3911 2018-07-16  Tom Tromey  <tom@tromey.com>
3912
3913         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3914         (next_symbol_text_func): Move from buildsym.h.
3915         * stabsread.c (hashname): Move from buildsym.c.
3916         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3917         (next_symbol_text_func, hashname): Move to stabsread.h.
3918         * buildsym.c: Don't include bcache.h
3919         (hashname): Move to stasbread.c.
3920
3921 2018-07-16  Tom Tromey  <tom@tromey.com>
3922
3923         * buildsym.h (context_stack_size): Don't declare.
3924         * buildsym.c (context_stack_size): New global.
3925
3926 2018-07-16  Tom Tromey  <tom@tromey.com>
3927
3928         * dbxread.c (processing_acc_compilation): New global.
3929         * buildsym.h (processing_acc_compilation): Don't declare.
3930
3931 2018-07-16  Tom Tromey  <tom@tromey.com>
3932
3933         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3934         * dbxread.c (read_ofile_symtab): Update.
3935         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3936         * buildsym.h (last_source_start_addr): Remove.
3937         (set_last_source_start_addr, get_last_source_start_addr):
3938         Declare.
3939         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3940         parameter.
3941         (struct buildsym_compunit) <m_last_source_start_addr>: New
3942         member.
3943         (prepare_for_building): Remove start_addr parameter.
3944         (start_symtab, restart_symtab, end_symtab_get_static_block)
3945         (end_symtab_with_blockvector): Update.
3946         (set_last_source_start_addr, get_last_source_start_addr): New
3947         functions.
3948
3949 2018-07-16  Tom Tromey  <tom@tromey.com>
3950
3951         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3952         member.
3953         (have_line_numbers): Remove.
3954         (record_line, prepare_for_building, end_symtab_get_static_block)
3955         (augment_type_symtab): Update.
3956
3957 2018-07-16  Tom Tromey  <tom@tromey.com>
3958
3959         * buildsym.c (~buildsym_compunit): Free the macro table.
3960         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3961         methods.
3962         <m_pending_macros>: New member.
3963         (pending_macros): Remove.
3964         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3965         (reset_symtab_globals, end_symtab_get_static_block)
3966         (end_symtab_with_blockvector, augment_type_symtab)
3967         (buildsym_init): Update.
3968
3969 2018-07-16  Tom Tromey  <tom@tromey.com>
3970
3971         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3972         parameter.
3973         (buildsym_compunit::set_last_source_file): New method.
3974         <m_last_source_file>: New member.
3975         (prepare_for_building): Remove "name" parameter.
3976         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3977         (last_source_file): Remove.
3978         (set_last_source_file, get_last_source_file): Update.
3979
3980 2018-07-16  Tom Tromey  <tom@tromey.com>
3981
3982         * buildsym.c (prepare_for_building): Add assert.
3983
3984 2018-07-16  Tom Tromey  <tom@tromey.com>
3985
3986         * buildsym.c (~buildsym_compunit): Update.
3987         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3988         (start_subfile, patch_subfile_names)
3989         (end_symtab_with_blockvector): Update.
3990
3991 2018-07-16  Tom Tromey  <tom@tromey.com>
3992
3993         * buildsym.c (struct buildsym_compunit): Add constructor,
3994         destructor, initializers.
3995         (start_buildsym_compunit): Remove.
3996         (free_buildsym_compunit): Use "delete".
3997         (start_symtab, restart_symtab): Use "new".
3998
3999 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4000
4001         * symfile.c (set_objfile_default_section_offset): Remove struct
4002         keyword.
4003
4004 2018-07-14  Stafford Horne  <shorne@gmail.com>
4005
4006         * (Responsible Maintainers): Add myself as or1k maintainer.
4007
4008 2018-07-13  Tom Tromey  <tom@tromey.com>
4009
4010         * symfile.c (set_objfile_default_section_offset): Use extra braces
4011         around initializer.
4012
4013 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4014
4015         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4016         non-branching basr.
4017
4018 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4019
4020         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4021         unittests/cli-utils-selftests.c
4022         * unittests/cli-utils-selftests.c: New file.
4023
4024 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4025
4026         * NEWS: Mention new commands. Mention change to 'thread apply'.
4027
4028 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4029
4030         * thread.c (thr_try_catch_cmd): New function.
4031         (thread_apply_all_command): Handle qcs flags.
4032         (thread_apply_command): Handle qcs flags.
4033         (taas_command): New function.
4034         (tfaas_command): New function.
4035         (_initialize_thread): Update to setup the new commands 'taas
4036         and 'tfaas'. Change doc string for 'thread apply'.
4037
4038 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4039
4040         * stack.c: (trailing_outermost_frame): New function, mostly
4041         extracted from backtrace_command_1.
4042         (leading_innermost_frame): New function.
4043         (backtrace_command_1): Update to call trailing_outermost_frame.
4044         (frame_apply_command_count): New function.
4045         (frame_apply_level_command): New function.
4046         (frame_apply_all_command): New function.
4047         (frame_apply_command): New function.
4048         (faas_command): New function.
4049         (frame_cmd_list): New variable.
4050         (_initialize_stack): Update to setup the new commands 'frame apply'
4051         and 'faas'.
4052
4053 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4054
4055         * cli-utils.c (number_or_range_parser::get_number): Only handle
4056         numbers or convenience var as numbers.
4057         (parse_flags): New function.
4058         (parse_flags_qcs): New function.
4059         (number_or_range_parser::finished): Ensure parsing end is detected
4060         before end of string.
4061         * cli-utils.h (parse_flags): New function.
4062         (parse_flags_qcs): New function.
4063         (number_or_range_parser): Remove m_finished bool.
4064         (number_or_range_parser::skip_range): Set m_in_range to false.
4065
4066 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4067
4068         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4069         on Windows.
4070
4071 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4072             Jan Kratochvil  <jan.kratochvil@redhat.com>
4073             Paul Fertser  <fercerpav@gmail.com>
4074             Tsutomu Seki  <sekiriki@gmail.com>
4075             Pedro Alves  <palves@redhat.com>
4076
4077         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4078         'unittests/parse-connection-spec-selftests.c'.
4079         (COMMON_SFILES): Add 'common/netstuff.c'.
4080         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4081         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4082         * common/netstuff.c: New file.
4083         * common/netstuff.h: New file.
4084         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4085         (wait_for_connect): Update comment.  New parameter
4086         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4087         Use 'sock' directly instead of 'scb->fd'.
4088         (try_connect): New function, with code from 'net_open'.
4089         (net_open): Rewrite main loop to deal with multiple
4090         sockets/addresses.  Handle IPv6-style hostnames; implement
4091         support for IPv6 connections.
4092         * unittests/parse-connection-spec-selftests.c: New file.
4093
4094 2018-07-11  Pedro Alves  <palves@redhat.com>
4095
4096         PR gdb/23377
4097         * remote.c (remote_target::remote_detach_pid): Call
4098         set_current_process.
4099
4100 2018-07-11  Pedro Alves  <palves@redhat.com>
4101
4102         * h8300-tdep.c (h8300_gdbarch_init): Remove
4103         set_gdbarch_ecoff_reg_to_regnum calls.
4104
4105 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4106
4107         PR c++/23373
4108         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4109         offsets/sizes for static members of a class/struct.
4110
4111 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4112
4113         * target-descriptions.c (tdesc_register_bitsize): Rename.
4114         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4115         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4116         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4117
4118 2018-07-10  Tom Tromey  <tom@tromey.com>
4119
4120         * breakpoint.c (moribund_locations): Now static and a
4121         std::vector.
4122         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4123         (build_bpstat_chain, update_global_location_list)
4124         (breakpoint_retire_moribund): Update.
4125         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4126         VEC.
4127
4128 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4129
4130         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4131         (riscv_register_reggroup_p): Use new function, remove unneeded
4132         parenthesis.
4133         (riscv_push_dummy_call): Extend assert to compare against xlen or
4134         flen based on register type.
4135
4136 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4137
4138         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4139
4140 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4141
4142         * remote.c (show_hardware_watchpoint_limit): New function.
4143         (show_hardware_watchpoint_length_limit): New function.
4144         (show_hardware_breakpoint_limit): New function.
4145         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4146         where appropriate, update help text.
4147
4148 2018-07-09  Tom Tromey  <tom@tromey.com>
4149
4150         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4151         (CLIBS): Don't mention NAT_CLIBS.
4152
4153 2018-07-09  Tom Tromey  <tom@tromey.com>
4154
4155         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4156         (LIBGDB_OBS, clean mostlyclean): Update.
4157         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4158
4159 2018-07-09  Tom Tromey  <tom@tromey.com>
4160
4161         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4162         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4163         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4164
4165 2018-07-09  Tom Tromey  <tom@tromey.com>
4166
4167         * Makefile.in (ALLDEPFILES): Remove exec.c.
4168         (COMMON_OBS): Remove exec.o.
4169         (COMMON_SFILES): Add exec.c.
4170
4171 2018-07-09  Tom Tromey  <tom@tromey.com>
4172
4173         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4174
4175 2018-07-09  Tom Tromey  <tom@tromey.com>
4176
4177         * Makefile.in (clean mostlyclean): Remove stamp-version.
4178         (version.c): Depend on stamp-version.
4179         (stamp-version): New rule, from version.c rule.
4180
4181 2018-07-09  Tom Tromey  <tom@tromey.com>
4182
4183         * Makefile.in (init.c): Depend on stamp-init.
4184         (stamp-init): New rule, from init.c rule.
4185         (clean mostlyclean): Remove stamp-init.
4186
4187 2018-07-09  Tom Tromey  <tom@tromey.com>
4188
4189         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4190         SUBDIR_GCC_COMPILE_SRCS.
4191
4192 2018-07-09  Tom Tromey  <tom@tromey.com>
4193
4194         * Makefile.in (init.c): Remove some unused sed rules.
4195
4196 2018-07-09  Tom Tromey  <tom@tromey.com>
4197
4198         * Makefile.in (TSOBS): Remove.
4199         (INIT_FILES): Update.
4200         (LIBGDB_OBS): Update.
4201         (COMMON_SFILES): Add inflow.c.
4202         (SFILES): Remove inflow.c.
4203
4204 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4205
4206         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4207
4208 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4209
4210         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4211         get_saveloc_name, is_signal_frame_name, step_name,
4212         init_remote_name, create_addr_space_name,
4213         destroy_addr_space_name, search_unwind_table_name,
4214         find_dyn_list_name): Constify.
4215
4216 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4217
4218         * darwin-nat.c (darwin_pthread_kill): New function.
4219         (darwin_resume_thread): Use darwin_pthread_kill.
4220
4221 2018-07-05  Tom de Vries  <tdevries@suse.de>
4222
4223         * macroexp.c (macro_buffer) <operator=>: New member function.
4224
4225 2018-07-04  Tom Tromey  <tom@tromey.com>
4226
4227         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4228
4229 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4230
4231         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4232         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4233         * maint.c: Likewise.
4234         * top.c: Likewise.
4235
4236 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4237
4238         * NEWS: Create a new section for the next release branch.
4239         Rename the section of the current branch, now that it has
4240         been cut.
4241
4242 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4243
4244         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4245         * version.in: Bump version to 8.2.50.DATE-git.
4246
4247 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4248             Pedro Alves  <palves@redhat.com>
4249
4250         * linux-nat.c (linux_init_ptrace): Rename to ...
4251         (linux_init_ptrace_procfs): ... this.  Call
4252         linux_proc_init_warnings.
4253         (linux_nat_target::post_attach)
4254         (linux_nat_target::post_startup_inferior): Adjust.
4255         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4256         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4257
4258 2018-07-04  Tom de Vries  <tdevries@suse.de>
4259
4260         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4261         check ...
4262         (read_comp_unit_head): ... here.
4263
4264 2018-07-03  Tom Tromey  <tom@tromey.com>
4265
4266         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4267         (stop_tracing, tstatus_command)
4268         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4269         (print_one_static_tracepoint_marker): Update.
4270         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4271         std::vector.
4272         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4273         VEC.
4274         (all_tracepoints, static_tracepoints_here): Return std::vector.
4275
4276 2018-07-03  Tom Tromey  <tom@tromey.com>
4277
4278         * common/ptid.c (ptid_equal): Remove.
4279         * common/ptid.h (ptid_equal): Don't declare.
4280         * ada-tasks.c: Update.
4281         * breakpoint.c: Update.
4282         * common/agent.c: Update.
4283         * corelow.c: Update.
4284         * darwin-nat-info.c: Update.
4285         * darwin-nat.c: Update.
4286         * dcache.c: Update.
4287         * dtrace-probe.c: Update.
4288         * dummy-frame.c: Update.
4289         * fbsd-nat.c: Update.
4290         * frame.c: Update.
4291         * gdbthread.h: Update.
4292         * gnu-nat.c: Update.
4293         * go32-nat.c: Update.
4294         * inf-loop.c: Update.
4295         * inf-ptrace.c: Update.
4296         * infcall.c: Update.
4297         * infcmd.c: Update.
4298         * inflow.c: Update.
4299         * infrun.c: Update.
4300         * linux-fork.c: Update.
4301         * linux-nat.c: Update.
4302         * linux-thread-db.c: Update.
4303         * mi/mi-cmd-var.c: Update.
4304         * mi/mi-interp.c: Update.
4305         * mi/mi-main.c: Update.
4306         * nto-procfs.c: Update.
4307         * ppc-linux-tdep.c: Update.
4308         * procfs.c: Update.
4309         * python/py-inferior.c: Update.
4310         * python/py-record-btrace.c: Update.
4311         * python/py-record.c: Update.
4312         * ravenscar-thread.c: Update.
4313         * regcache.c: Update.
4314         * remote-sim.c: Update.
4315         * remote.c: Update.
4316         * sol-thread.c: Update.
4317         * solib.c: Update.
4318         * target.c: Update.
4319         * tui/tui-stack.c: Update.
4320         * varobj.c: Update.
4321         * windows-nat.c: Update.
4322         * windows-tdep.c: Update.
4323
4324 2018-07-03  Tom Tromey  <tom@tromey.com>
4325
4326         * common/ptid.c (ptid_match): Remove.
4327         * common/ptid.h (ptid_match): Don't declare.
4328         * fbsd-nat.c: Update.
4329         * infcmd.c: Update.
4330         * infrun.c: Update.
4331         * linux-nat.c: Update.
4332         * record-btrace.c: Update.
4333         * regcache.c: Update.
4334         * remote.c: Update.
4335
4336 2018-07-03  Tom Tromey  <tom@tromey.com>
4337
4338         * common/ptid.c (ptid_tid_p): Remove.
4339         * common/ptid.h (ptid_tid_p): Don't declare.
4340         * sol-thread.c: Update.
4341
4342 2018-07-03  Tom Tromey  <tom@tromey.com>
4343
4344         * common/ptid.c (ptid_lwp_p): Remove.
4345         * common/ptid.h (ptid_lwp_p): Don't declare.
4346         * fbsd-nat.c: Update.
4347         * linux-nat.c: Update.
4348         * nat/linux-procfs.c: Update.
4349         * nat/x86-linux-dregs.c: Update.
4350         * sol-thread.c: Update.
4351
4352 2018-07-03  Tom Tromey  <tom@tromey.com>
4353
4354         * common/ptid.c (ptid_is_pid): Remove.
4355         * common/ptid.h (ptid_is_pid): Don't declare.
4356         * infrun.c: Update.
4357         * linux-nat.c: Update.
4358         * mi/mi-interp.c: Update.
4359         * remote.c: Update.
4360         * thread.c: Update.
4361
4362 2018-07-03  Tom Tromey  <tom@tromey.com>
4363
4364         * common/ptid.c (ptid_get_tid): Remove.
4365         * common/ptid.h (ptid_get_tid): Don't declare.
4366         * ada-tasks.c: Update.
4367         * aix-thread.c: Update.
4368         * bsd-uthread.c: Update.
4369         * darwin-nat.c: Update.
4370         * fbsd-nat.c: Update.
4371         * i386-darwin-nat.c: Update.
4372         * infrun.c: Update.
4373         * linux-tdep.c: Update.
4374         * nto-procfs.c: Update.
4375         * ppc-ravenscar-thread.c: Update.
4376         * python/py-infthread.c: Update.
4377         * ravenscar-thread.c: Update.
4378         * sol-thread.c: Update.
4379         * sparc-ravenscar-thread.c: Update.
4380         * windows-nat.c: Update.
4381
4382 2018-07-03  Tom Tromey  <tom@tromey.com>
4383
4384         * common/ptid.c (ptid_get_lwp): Remove.
4385         * common/ptid.h (ptid_get_lwp): Don't declare.
4386         * aarch64-linux-nat.c: Update.
4387         * ada-tasks.c: Update.
4388         * aix-thread.c: Update.
4389         * amd64-linux-nat.c: Update.
4390         * arm-linux-nat.c: Update.
4391         * corelow.c: Update.
4392         * fbsd-nat.c: Update.
4393         * fbsd-tdep.c: Update.
4394         * gnu-nat.c: Update.
4395         * i386-cygwin-tdep.c: Update.
4396         * i386-gnu-nat.c: Update.
4397         * i386-linux-nat.c: Update.
4398         * ia64-linux-nat.c: Update.
4399         * inf-ptrace.c: Update.
4400         * infrun.c: Update.
4401         * linux-fork.c: Update.
4402         * linux-nat.c: Update.
4403         * linux-tdep.c: Update.
4404         * linux-thread-db.c: Update.
4405         * mips-linux-nat.c: Update.
4406         * nat/aarch64-linux-hw-point.c: Update.
4407         * nat/aarch64-linux.c: Update.
4408         * nat/linux-btrace.c: Update.
4409         * nat/linux-osdata.c: Update.
4410         * nat/linux-procfs.c: Update.
4411         * nat/x86-linux-dregs.c: Update.
4412         * obsd-nat.c: Update.
4413         * ppc-fbsd-nat.c: Update.
4414         * ppc-linux-nat.c: Update.
4415         * procfs.c: Update.
4416         * python/py-infthread.c: Update.
4417         * ravenscar-thread.c: Update.
4418         * remote.c: Update.
4419         * s390-linux-nat.c: Update.
4420         * sol-thread.c: Update.
4421         * sol2-tdep.c: Update.
4422         * spu-linux-nat.c: Update.
4423         * x86-linux-nat.c: Update.
4424         * xtensa-linux-nat.c: Update.
4425
4426 2018-07-03  Tom Tromey  <tom@tromey.com>
4427
4428         * common/ptid.c (ptid_get_pid): Remove.
4429         * common/ptid.h (ptid_get_pid): Don't declare.
4430         * aarch64-linux-nat.c: Update.
4431         * ada-lang.c: Update.
4432         * aix-thread.c: Update.
4433         * alpha-bsd-nat.c: Update.
4434         * amd64-fbsd-nat.c: Update.
4435         * amd64-linux-nat.c: Update.
4436         * arm-linux-nat.c: Update.
4437         * arm-nbsd-nat.c: Update.
4438         * auxv.c: Update.
4439         * break-catch-syscall.c: Update.
4440         * breakpoint.c: Update.
4441         * bsd-uthread.c: Update.
4442         * corelow.c: Update.
4443         * ctf.c: Update.
4444         * darwin-nat.c: Update.
4445         * fbsd-nat.c: Update.
4446         * fbsd-tdep.c: Update.
4447         * gcore.c: Update.
4448         * gnu-nat.c: Update.
4449         * hppa-nbsd-nat.c: Update.
4450         * hppa-obsd-nat.c: Update.
4451         * i386-fbsd-nat.c: Update.
4452         * ia64-linux-nat.c: Update.
4453         * inf-ptrace.c: Update.
4454         * infcmd.c: Update.
4455         * inferior.c: Update.
4456         * inferior.h: Update.
4457         * inflow.c: Update.
4458         * infrun.c: Update.
4459         * linux-fork.c: Update.
4460         * linux-nat.c: Update.
4461         * linux-tdep.c: Update.
4462         * linux-thread-db.c: Update.
4463         * m68k-bsd-nat.c: Update.
4464         * mi/mi-interp.c: Update.
4465         * mi/mi-main.c: Update.
4466         * mips-linux-nat.c: Update.
4467         * mips-nbsd-nat.c: Update.
4468         * mips64-obsd-nat.c: Update.
4469         * nat/aarch64-linux-hw-point.c: Update.
4470         * nat/aarch64-linux.c: Update.
4471         * nat/linux-btrace.c: Update.
4472         * nat/linux-osdata.c: Update.
4473         * nat/linux-procfs.c: Update.
4474         * nat/x86-linux-dregs.c: Update.
4475         * nto-procfs.c: Update.
4476         * obsd-nat.c: Update.
4477         * ppc-linux-nat.c: Update.
4478         * ppc-nbsd-nat.c: Update.
4479         * ppc-obsd-nat.c: Update.
4480         * proc-service.c: Update.
4481         * procfs.c: Update.
4482         * python/py-inferior.c: Update.
4483         * python/py-infthread.c: Update.
4484         * ravenscar-thread.c: Update.
4485         * record.c: Update.
4486         * remote-sim.c: Update.
4487         * remote.c: Update.
4488         * rs6000-nat.c: Update.
4489         * s390-linux-nat.c: Update.
4490         * sh-nbsd-nat.c: Update.
4491         * sol-thread.c: Update.
4492         * sparc-nat.c: Update.
4493         * sparc64-tdep.c: Update.
4494         * spu-linux-nat.c: Update.
4495         * spu-tdep.c: Update.
4496         * target-debug.h: Update.
4497         * target.c: Update.
4498         * thread.c: Update.
4499         * tid-parse.c: Update.
4500         * tracefile-tfile.c: Update.
4501         * vax-bsd-nat.c: Update.
4502         * windows-nat.c: Update.
4503         * x86-linux-nat.c: Update.
4504         * x86-nat.c: Update.
4505
4506 2018-07-03  Tom Tromey  <tom@tromey.com>
4507
4508         * common/ptid.c (pid_to_ptid): Remove.
4509         * common/ptid.h (pid_to_ptid): Don't declare.
4510         * aix-thread.c: Update.
4511         * arm-linux-nat.c: Update.
4512         * common/ptid.c: Update.
4513         * common/ptid.h: Update.
4514         * corelow.c: Update.
4515         * ctf.c: Update.
4516         * darwin-nat.c: Update.
4517         * fbsd-nat.c: Update.
4518         * fork-child.c: Update.
4519         * gnu-nat.c: Update.
4520         * go32-nat.c: Update.
4521         * inf-ptrace.c: Update.
4522         * infcmd.c: Update.
4523         * inferior.c: Update.
4524         * infrun.c: Update.
4525         * linux-fork.c: Update.
4526         * linux-nat.c: Update.
4527         * nat/aarch64-linux-hw-point.c: Update.
4528         * nat/fork-inferior.c: Update.
4529         * nat/x86-linux-dregs.c: Update.
4530         * nto-procfs.c: Update.
4531         * obsd-nat.c: Update.
4532         * procfs.c: Update.
4533         * progspace.c: Update.
4534         * remote.c: Update.
4535         * rs6000-nat.c: Update.
4536         * s390-linux-nat.c: Update.
4537         * sol-thread.c: Update.
4538         * spu-linux-nat.c: Update.
4539         * target.c: Update.
4540         * top.c: Update.
4541         * tracefile-tfile.c: Update.
4542         * windows-nat.c: Update.
4543
4544 2018-07-03  Tom Tromey  <tom@tromey.com>
4545
4546         * common/ptid.h (ptid_build): Don't declare.
4547         * common/ptid.c (ptid_build): Remove.
4548         * aix-thread.c: Update.
4549         * bsd-kvm.c: Update.
4550         * bsd-uthread.c: Update.
4551         * common/agent.c: Update.
4552         * common/ptid.c: Update.
4553         * common/ptid.h: Update.
4554         * corelow.c: Update.
4555         * darwin-nat.c: Update.
4556         * fbsd-nat.c: Update.
4557         * gnu-nat.c: Update.
4558         * linux-fork.c: Update.
4559         * linux-nat.c: Update.
4560         * linux-thread-db.c: Update.
4561         * nat/linux-osdata.c: Update.
4562         * nat/linux-procfs.c: Update.
4563         * nto-procfs.c: Update.
4564         * obsd-nat.c: Update.
4565         * proc-service.c: Update.
4566         * procfs.c: Update.
4567         * ravenscar-thread.c: Update.
4568         * remote-sim.c: Update.
4569         * remote.c: Update.
4570         * sol-thread.c: Update.
4571         * target.c: Update.
4572         * windows-nat.c: Update.
4573
4574 2018-07-03  Tom Tromey  <tom@tromey.com>
4575
4576         * infrun.c (follow_exec): Use exit_inferior_silent.
4577         * inferior.c (exit_inferior_num_silent): Remove.
4578         * inferior.h (exit_inferior_num_silent): Don't declare.
4579
4580 2018-07-03  Tom Tromey  <tom@tromey.com>
4581
4582         PR cli/23340:
4583         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4584         inferior_ptid on error.
4585
4586 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4587             Simon Marchi  <simon.marchi@polymtl.ca>
4588
4589         PR tdep/8282
4590         * disasm.h (gdb_disassembler): Add
4591         `m_disassembler_options_holder'. member
4592         * disasm.c (get_all_disassembler_options): New function.
4593         (gdb_disassembler::gdb_disassembler): Use it.
4594         (gdb_buffered_insn_length_init_dis): Likewise.
4595         (gdb_buffered_insn_length): Adjust accordingly.
4596         (set_disassembler_options): Handle options with arguments.
4597         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4598         line if showing options with descriptions.
4599         (disassembler_options_completer): Adapt to using the
4600         `disasm_options_and_args_t' structure.
4601         * mips-tdep.c (mips_disassembler_options): New variable.
4602         (mips_disassembler_options_o32): Likewise.
4603         (mips_disassembler_options_n32): Likewise.
4604         (mips_disassembler_options_n64): Likewise.
4605         (gdb_print_insn_mips): Don't set `disassembler_options'.
4606         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4607         functions.
4608         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4609         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4610         `gdbarch_disassembler_options_implicit' and
4611         `gdbarch_valid_disassembler_options'.
4612         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4613         `disasm_options_and_args_t' structure.
4614         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4615         method.
4616         (valid_disassembler_options): Switch from `disasm_options_t' to
4617         the `disasm_options_and_args_t' structure.
4618         * NEWS: Document `set disassembler-options' support for the MIPS
4619         target.
4620         * gdbarch.h: Regenerate.
4621         * gdbarch.c: Regenerate.
4622
4623 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4624
4625         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4626
4627 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4628
4629         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4630         parameter in call to amd64_target_description.
4631         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4632         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4633         (amd64fbsd_init_abi): Likewise.
4634         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4635         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4636         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4637         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4638
4639 2018-06-29  Pedro Alves  <palves@redhat.com>
4640
4641         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4642         "segments" parameter.
4643         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4644         (_initialize_amd64_tdep): Update call to
4645         amd64_create_target_description.
4646         (amd64_target_description): Add "segments" parameter.  Adjust
4647         the implementation to use it.
4648         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4649         call to amd64_create_target_description.
4650         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4651         * gdb/arch/amd64.h (amd64_create_target_description): Add
4652         "segments" register.
4653         * gdb/arch/amd64.c (amd64_create_target_description): Add
4654         "segments" parameter.  Call create_feature_i386_64bit_segments
4655         only if SEGMENTS is true.
4656         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4657         call to amd64_create_target_description.
4658
4659 2018-06-29  Pedro Alves  <palves@redhat.com>
4660
4661         * thread.c (thread_target_id_str): New, factored out from ...
4662         (print_thread_info_1): ... here.  Use it to compute the max
4663         "Target Id" column width.
4664
4665 2018-06-29  Pedro Alves  <palves@redhat.com>
4666
4667         * remote.c (remote_target::extra_thread_info): Delete
4668         'display_buf' and 'n' locals.  from the cache, regardless of
4669         packet mechanims is in use.  Use cache for qThreadExtra and qP
4670         methods too.
4671
4672 2018-06-29  Pedro Alves  <palves@redhat.com>
4673
4674         * blockframe.c (find_pc_sect_containing_function): New function.
4675         * breakpoint.c (print_breakpoint_location): Don't call
4676         find_pc_sect_function.
4677         * linespec.c (create_sals_line_offset): Record the location's
4678         symbol in the sal.
4679         * linespec.c (convert_address_location_to_sals): Fill in sal's
4680         symbol with find_pc_sect_containing_function.
4681         * symtab.c (find_function_start_sal): Rename to ...
4682         (find_function_start_sal_1): ... this.
4683         (find_function_start_sal): Reimplement as wrapper around
4684         find_function_start_sal_1, and use
4685         find_pc_sect_containing_function to fill in the sal's symbol.
4686         (find_function_start_sal(symbol*, bool)): Adjust.
4687         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4688         comments.
4689         (find_pc_sect_containing_function): Declare.
4690
4691 2018-06-29  Pedro Alves  <palves@redhat.com>
4692
4693         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4694         true if the the location has no symbol.
4695
4696 2018-06-28  Tom Tromey  <tom@tromey.com>
4697
4698         * NEWS: Mention --enable-codesign.
4699         * silent-rules.mk (ECHO_SIGN): New variable.
4700         * configure.ac: Add --enable-codesign.
4701         * configure: Rebuild.
4702         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4703         (gdb$(EXEEXT)): Optionally invoke codesign.
4704
4705 2018-06-28  Pedro Alves  <palves@redhat.com>
4706
4707         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4708         comments.
4709         (switch_to_thread_no_regs): Adjust comment.
4710         * infcmd.c (stop_pc): Delete.
4711         (post_create_inferior, info_program_command): Replace references
4712         to stop_pc with references to thread_info->suspend.stop_pc.
4713         * inferior.h (stop_pc): Delete declaration.
4714         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4715         (handle_inferior_event_1, handle_signal_stop)
4716         (process_event_stop_test, keep_going_stepped_thread)
4717         (handle_step_into_function, handle_step_into_function_backward)
4718         (print_stop_location): Replace references to stop_pc with
4719         references to thread_info->suspend.stop_pc.
4720         (struct infcall_suspend_state) <stop_pc>: Delete field.
4721         (save_infcall_suspend_state, restore_infcall_suspend_state):
4722         Remove references to inf_stat->stop_pc.
4723         * linux-fork.c (fork_load_infrun_state): Likewise.
4724         * record-btrace.c (record_btrace_set_replay): Likewise.
4725         * record-full.c (record_full_goto_entry): Likewise.
4726         * remote.c (print_one_stopped_thread): Likewise.
4727         * target.c (target_resume): Extend comment.
4728         * thread.c (set_executing_thread): New.
4729         (set_executing): Use it.
4730         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4731         Remove references to stop_pc.
4732
4733 2018-06-28  Pedro Alves  <palves@redhat.com>
4734
4735         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4736         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4737
4738 2018-06-28  Tom Tromey  <tom@tromey.com>
4739
4740         * coffread.c (coff_symfile_finish): Update.
4741         * xcoffread.c (xcoff_symfile_finish): Update.
4742         * elfread.c (elf_symfile_finish): Update.
4743         * symfile.h (dwarf2_free_objfile): Don't declare.
4744         * dwarf2read.c (_initialize_dwarf2_read): Use
4745         register_objfile_data_with_cleanup.
4746         (dwarf2_free_objfile): Now static.  Change signature.
4747
4748 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4749
4750         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4751         option "-o" to add-symbol-file-load to add an offset to each
4752         section's load address.
4753         * symfile.c (set_objfile_default_section_offset): New function.
4754
4755 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4756
4757         * symfile.c (add_symbol_file_command): Make sure that sections
4758         with the same name are sorted in the same order.
4759
4760 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4761
4762         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4763         require the second argument.  If omitted, load sections at the
4764         addresses specified in the file.
4765
4766 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4767
4768         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4769         (_initialize_symfile): Add option "-o" to symbol-file to add an
4770         offset to each section of the symbol file.
4771
4772 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4773
4774         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4775
4776 2018-06-27  Tom Tromey  <tom@tromey.com>
4777
4778         * stack.c (_initialize_stack): Update "func" help text.
4779
4780 2018-06-27  Tom Tromey  <tom@tromey.com>
4781
4782         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4783         std::vector.
4784         (unwind_infopy_str, pyuw_create_unwind_info)
4785         (unwind_infopy_add_saved_register, pyuw_sniffer)
4786         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4787         Update.
4788         (struct saved_reg): Add constructor.
4789         <value>: Now a gdbpy_ref<>.
4790
4791 2018-06-27  Tom Tromey  <tom@tromey.com>
4792
4793         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4794
4795 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4796
4797         * gdb-gdb.py.in: Format using autopep8.
4798
4799 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4800
4801         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4802         (type_lookup_function): Recognize CORE_ADDR values.
4803
4804 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4805
4806         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4807         print tag_name.
4808
4809 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4810
4811         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4812         <__lt__>: Add.
4813
4814 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4815
4816         * gdb-gdb.py: Move to...
4817         * gdb-gdb.py.in: ... here.
4818         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4819         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4820         dependencies.
4821         (distclean): Remove gdb-gdb.py when cleaning.
4822         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4823         * configure: Re-generate.
4824
4825 2018-06-27  Pedro Alves  <palves@redhat.com>
4826
4827         * proc-service.c (get_ps_regcache): New.
4828         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4829         (ps_lsetfpregs): Use it.
4830
4831 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4832
4833         PR gdb/21695
4834         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4835         (dwarf_decode_lines_1): Adjust.
4836
4837 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4838
4839         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4840         override.
4841         <info_proc>: Likewise.
4842
4843 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4844
4845         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4846         to windows_fetch_one_register, and only handle the case of
4847         fetching one register.  Move the code that reloads the context
4848         and iterates over all registers if R is negative to...
4849         (windows_nat_target::fetch_registers): ... here.
4850         (do_windows_store_inferior_registers): Rename to
4851         windows_store_one_register, and only handle the case of storing
4852         one register.  Move the code that handles the case where r is
4853         negative to...
4854         (windows_nat_target::store_registers) ... here.
4855
4856 2018-06-26  Tom Tromey  <tom@tromey.com>
4857
4858         PR rust/22574:
4859         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4860         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4861         Update.
4862         (rust_internal_print_type): Add podata parameter.
4863         (rust_print_type): Update.
4864
4865 2018-06-26  Tom Tromey  <tom@tromey.com>
4866
4867         * typeprint.h (struct print_offset_data) <update, finish,
4868         maybe_print_hole>: New methods.
4869         <indentation>: New constant.
4870         * typeprint.c (print_offset_data::indentation): Define.
4871         (print_offset_data::maybe_print_hole, print_offset_data::update)
4872         (print_offset_data::finish): Move from c-typeprint.c and rename.
4873         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4874         (print_spaces_filtered_with_print_options): Update.
4875         (c_print_type_union_field_offset, maybe_print_hole)
4876         (c_print_type_struct_field_offset): Move to typeprint.c and
4877         rename.
4878         (c_type_print_base_struct_union): Update.
4879
4880 2018-06-25  Pedro Alves  <palves@redhat.com>
4881
4882         * gdbthread.h (thread_info_ref, delete_thread)
4883         (delete_thread_silent, first_thread_of_inferior)
4884         (any_thread_of_inferior, switch_to_thread)
4885         (enable_thread_stack_temporaries)
4886         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4887         (get_last_thread_stack_temporary)
4888         (value_in_thread_stack_temporaries, can_access_registers_thread):
4889         Spell out "struct thread_info" instead of just "thread_info".
4890         * inferior.h (notice_new_inferior): Likewise.
4891
4892 2018-06-25  Pedro Alves  <palves@redhat.com>
4893
4894         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4895         pass thread_info pointer to delete_thread.
4896         (windows_nat_target::detach): Pass inferior pointer to
4897         detach_inferior.
4898         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4899         delete_thread.
4900         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4901         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4902         and pass a thread_info pointer to delete_thread.
4903         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4904         pass thread_info pointer to delete_thread.
4905         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4906         delete_thread_silent call.
4907         * procfs.c (procfs_target::detach): Pass inferior pointer to
4908         detach_inferior.
4909         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4910         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4911         delete_thread_silent call.
4912         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4913         pass thread_info pointer to delete_thread.
4914         (windows_nat_target::detach): Pass inferior pointer to
4915         delete_inferior.
4916
4917 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4918
4919         * regcache.c (readable_regcache::read_part): Fix asserts.
4920         (reg_buffer::raw_collect_part): New function.
4921         (regcache::write_part): Fix asserts.
4922         (reg_buffer::raw_supply_part): New function.
4923         (regcache::transfer_regset_register): New helper function.
4924         (regcache::transfer_regset): Call new functions.
4925         (regcache_supply_regset): Use gdb_byte*.
4926         (regcache::supply_regset): Likewise.
4927         (regcache_collect_regset): Likewise.
4928         (regcache::collect_regset): Likewise.
4929         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4930         (reg_buffer::raw_supply_part): Likewise.
4931         (regcache::transfer_regset_register): Likewise.
4932         (regcache::transfer_regset): Use gdb_byte*.
4933
4934 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4935
4936         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4937
4938 2018-06-21  Pedro Alves  <palves@redhat.com>
4939
4940         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4941         instead of a ptid_t.  All callers adjusted.
4942         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4943         adjusted.
4944         (print_ada_task_info, display_current_task_id, task_command_1):
4945         Adjust.
4946         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4947         inferior_thread.
4948         (breakpoint_kind): Adjust.
4949         (remove_breakpoints_pid): Rename to ...
4950         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4951         pointer.  All callers adjusted.
4952         (bpstat_clear_actions): Use inferior_thread.
4953         (get_bpstat_thread): New.
4954         (bpstat_do_actions): Use it.
4955         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4956         to take a thread_info pointer.  All callers adjusted.
4957         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4958         (breakpoint_re_set_thread): Use inferior_thread.
4959         * breakpoint.h (struct inferior): Forward declare.
4960         (bpstat_stop_status): Update.
4961         (remove_breakpoints_pid): Delete.
4962         (remove_breakpoints_inf): New.
4963         * bsd-uthread.c (bsd_uthread_target::wait)
4964         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4965         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4966         (maint_btrace_packet_history_cmd)
4967         (maint_btrace_clear_packet_history_cmd): Adjust.
4968         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4969         inferior_thread.
4970         * cli/cli-interp.c: Include "inferior.h".
4971         * common/refcounted-object.h (struct
4972         refcounted_object_ref_policy): New.
4973         * compile/compile-object-load.c: Include gdbthread.h.
4974         (store_regs): Use inferior_thread.
4975         * corelow.c (core_target::close): Use current_inferior.
4976         (core_target_open): Adjust to use first_thread_of_inferior and use
4977         the current inferior.
4978         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4979         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4980         <thread>: ... this new field.  All references adjusted.
4981         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4982         Take a thread_info pointer instead of a ptid_t.
4983         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4984         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4985         thread_info pointer instead of a ptid_t.
4986         * elfread.c: Include "inferior.h".
4987         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4988         Use inferior_thread.
4989         * eval.c (evaluate_subexp): Likewise.
4990         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4991         inferior_thread.
4992         * gdb_proc_service.h (struct thread_info): Forward declare.
4993         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4994         <thread>: ... this new field.  All references adjusted.
4995         * gdbarch.h, gdbarch.c: Regenerate.
4996         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4997         'thread' parameter.  All implementations and callers adjusted.
4998         * gdbthread.h (thread_info) <set_running>: New method.
4999         (delete_thread, delete_thread_silent): Take a thread_info pointer
5000         instead of a ptid.
5001         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5002         (first_thread_of_process): Delete, replaced by ...
5003         (first_thread_of_inferior): ... this new function.  All callers
5004         adjusted.
5005         (any_live_thread_of_process): Delete, replaced by ...
5006         (any_live_thread_of_inferior): ... this new function.  All callers
5007         adjusted.
5008         (switch_to_thread, switch_to_no_thread): Declare.
5009         (is_executing): Delete.
5010         (enable_thread_stack_temporaries): Update comment.
5011         <enable_thread_stack_temporaries>: Take a thread_info pointer
5012         instead of a ptid_t.  Incref the thread.
5013         <~enable_thread_stack_temporaries>: Decref the thread.
5014         <m_ptid>: Delete
5015         <m_thr>: New.
5016         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5017         (get_last_thread_stack_temporary)
5018         (value_in_thread_stack_temporaries, can_access_registers_thread):
5019         Take a thread_info pointer instead of a ptid_t.  All callers
5020         adjusted.
5021         * infcall.c (get_call_return_value): Use inferior_thread.
5022         (run_inferior_call): Work with thread pointers instead of ptid_t.
5023         (call_function_by_hand_dummy): Work with thread pointers instead
5024         of ptid_t.  Use thread_info_ref.
5025         * infcmd.c (proceed_thread_callback): Access thread's state
5026         directly.
5027         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5028         access thread's state directly.
5029         (continue_command): Use inferior_thread.
5030         (info_program_command): Use find_thread_ptid and access thread
5031         state directly.
5032         (proceed_after_attach_callback): Use thread state directly.
5033         (notice_new_inferior): Take a thread_info pointer instead of a
5034         ptid_t.  All callers adjusted.
5035         (exit_inferior): Take an inferior pointer instead of a pid.  All
5036         callers adjusted.
5037         (exit_inferior_silent): New.
5038         (detach_inferior): Delete.
5039         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5040         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5041         (detach_inferior_command, kill_inferior_command): Use
5042         find_inferior_id instead of valid_gdb_inferior_id and
5043         gdb_inferior_id_to_pid.
5044         (inferior_command): Use inferior and thread pointers.
5045         * inferior.h (struct thread_info): Forward declare.
5046         (notice_new_inferior): Take a thread_info pointer instead of a
5047         ptid_t.  All callers adjusted.
5048         (detach_inferior): Delete declaration.
5049         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5050         instead of a pid.  All callers adjusted.
5051         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5052         (valid_gdb_inferior_id): Delete.
5053         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5054         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5055         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5056         ...
5057         <inf>: ... this new field.
5058         <step_ptid>: Delete, replaced by ...
5059         <step_thread>: ... this new field.
5060         (get_displaced_stepping_state): Take an inferior pointer instead
5061         of a pid.  All callers adjusted.
5062         (displaced_step_in_progress_any_inferior): Adjust.
5063         (displaced_step_in_progress_thread): Take a thread pointer instead
5064         of a ptid_t.  All callers adjusted.
5065         (displaced_step_in_progress, add_displaced_stepping_state): Take
5066         an inferior pointer instead of a pid.  All callers adjusted.
5067         (get_displaced_step_closure_by_addr): Adjust.
5068         (remove_displaced_stepping_state): Take an inferior pointer
5069         instead of a pid.  All callers adjusted.
5070         (displaced_step_prepare_throw, displaced_step_prepare)
5071         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5072         All callers adjusted.
5073         (start_step_over): Adjust.
5074         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5075         displaced step queue.
5076         (do_target_resume): Adjust.
5077         (fetch_inferior_event): Use inferior_thread.
5078         (context_switch, get_inferior_stop_soon): Take an
5079         execution_control_state pointer instead of a ptid_t.  All callers
5080         adjusted.
5081         (switch_to_thread_cleanup): Delete.
5082         (stop_all_threads): Use scoped_restore_current_thread.
5083         * inline-frame.c: Include "gdbthread.h".
5084         (inline_state) <inline_state>: Take a thread pointer instead of a
5085         ptid_t.  All callers adjusted.
5086         <ptid>: Delete, replaced by ...
5087         <thread>: ... this new field.
5088         (find_inline_frame_state): Take a thread pointer instead of a
5089         ptid_t.  All callers adjusted.
5090         (skip_inline_frames, step_into_inline_frame)
5091         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5092         pointer instead of a ptid_t.  All callers adjusted.
5093         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5094         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5095         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5096         pointers directly.
5097         * linux-nat.c (get_detach_signal): Likewise.
5098         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5099         (thread_db_notice_clone): Adjust.
5100         (thread_db_find_new_threads_silently)
5101         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5102         a thread pointer instead of a ptid_t.  All callers adjusted.
5103         * mi/mi-cmd-var.c: Include "inferior.h".
5104         (mi_cmd_var_update_iter): Update to use thread pointers.
5105         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5106         inferior directly.
5107         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5108         out to ...
5109         (mi_output_running): ... this new function.
5110         (mi_on_resume_1): Adjust to use it.
5111         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5112         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5113         directly.
5114         (interrupt_thread_callback): : Adjust to use thread and inferior
5115         pointers.
5116         * proc-service.c: Include "gdbthread.h".
5117         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5118         * progspace-and-thread.c: Include "inferior.h".
5119         * progspace.c: Include "inferior.h".
5120         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5121         hold a reference to an inferior_object.
5122         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5123         inferior_thread.
5124         * python/py-inferior.c (struct inferior_object): Give the type a
5125         tag name instead of a typedef.
5126         (python_on_normal_stop): No need to check if the current thread is
5127         listed.
5128         (inferior_to_inferior_object): Change return type to
5129         inferior_object.  All callers adjusted.
5130         (find_thread_object): Delete, bits factored out to ...
5131         (thread_to_thread_object): ... this new function.
5132         * python/py-infthread.c (create_thread_object): Use
5133         inferior_to_inferior_object.
5134         (thpy_is_stopped): Use thread pointer directly.
5135         (gdbpy_selected_thread): Use inferior_thread.
5136         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5137         field, replaced with ...
5138         <thread>: ... this new field.  All users adjusted.
5139         (btpy_insn_or_gap_new): Drop const.
5140         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5141         callers adjusted.
5142         * python/py-record.c: Include "gdbthread.h".
5143         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5144         a ptid_t.  All callers adjusted.
5145         (gdbpy_current_recording): Use inferior_thread.
5146         * python/py-record.h (recpy_record_object) <ptid>: Delete
5147         field, replaced with ...
5148         <thread>: ... this new field.  All users adjusted.
5149         (recpy_element_object) <ptid>: Delete
5150         field, replaced with ...
5151         <thread>: ... this new field.  All users adjusted.
5152         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5153         a ptid_t.  All callers adjusted.
5154         * python/py-threadevent.c: Include "gdbthread.h".
5155         (get_event_thread): Use thread_to_thread_object.
5156         * python/python-internal.h (struct inferior_object): Forward
5157         declare.
5158         (find_thread_object, find_inferior_object): Delete declarations.
5159         (thread_to_thread_object, inferior_to_inferior_object): New
5160         declarations.
5161         * record-btrace.c: Include "inferior.h".
5162         (require_btrace_thread): Use inferior_thread.
5163         (record_btrace_frame_sniffer)
5164         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5165         (get_thread_current_frame): Use scoped_restore_current_thread and
5166         switch_to_thread.
5167         (get_thread_current_frame): Use thread pointer directly.
5168         (record_btrace_replay_at_breakpoint): Use thread's inferior
5169         pointer directly.
5170         * record-full.c: Include "inferior.h".
5171         * regcache.c: Include "gdbthread.h".
5172         (get_thread_arch_regcache): Use the inferior's address space
5173         directly.
5174         (get_thread_regcache, registers_changed_thread): New.
5175         * regcache.h (get_thread_regcache(thread_info *thread)): New
5176         overload.
5177         (registers_changed_thread): New.
5178         (remote_target) <remote_detach_1>: Swap order of parameters.
5179         (remote_add_thread): <remote_add_thread>: Return the new thread.
5180         (get_remote_thread_info(ptid_t)): New overload.
5181         (remote_target::remote_notice_new_inferior): Use thread pointers
5182         directly.
5183         (remote_target::process_initial_stop_replies): Use
5184         thread_info::set_running.
5185         (remote_target::remote_detach_1, remote_target::detach)
5186         (extended_remote_target::detach): Adjust.
5187         * stack.c (frame_show_address): Use inferior_thread.
5188         * target-debug.h (target_debug_print_thread_info_pp): New.
5189         * target-delegates.c: Regenerate.
5190         * target.c (default_thread_address_space): Delete.
5191         (memory_xfer_partial_1): Use current_inferior.
5192         (target_detach): Use current_inferior.
5193         (target_thread_address_space): Delete.
5194         (generic_mourn_inferior): Use current_inferior.
5195         * target.h (struct target_ops) <thread_address_space>: Delete.
5196         (target_thread_address_space): Delete.
5197         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5198         pointers directly.
5199         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5200         thread pointer instead of a ptid_t.  Adjust all callers.
5201         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5202         (first_thread_of_process): Delete, replaced by ...
5203         (first_thread_of_inferior): ... this new function.  All callers
5204         adjusted.
5205         (any_thread_of_process): Rename to ...
5206         (any_thread_of_inferior): ... this, and take an inferior pointer.
5207         (any_live_thread_of_process): Rename to ...
5208         (any_live_thread_of_inferior): ... this, and take an inferior
5209         pointer.
5210         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5211         (value_in_thread_stack_temporaries)
5212         (get_last_thread_stack_temporary): Take a thread pointer instead
5213         of a ptid_t.  Adjust all callers.
5214         (thread_info::set_running): New.
5215         (validate_registers_access): Use inferior_thread.
5216         (can_access_registers_ptid): Rename to ...
5217         (can_access_registers_thread): ... this, and take a thread
5218         pointer.
5219         (print_thread_info_1): Adjust to compare thread pointers instead
5220         of ptids.
5221         (switch_to_no_thread, switch_to_thread): Make extern.
5222         (scoped_restore_current_thread::~scoped_restore_current_thread):
5223         Use m_thread pointer directly.
5224         (scoped_restore_current_thread::scoped_restore_current_thread):
5225         Use inferior_thread.
5226         (thread_command): Use thread pointer directly.
5227         (thread_num_make_value_helper): Use inferior_thread.
5228         * top.c (execute_command): Use inferior_thread.
5229         * tui/tui-interp.c: Include "inferior.h".
5230         * varobj.c (varobj_create): Use inferior_thread.
5231         (value_of_root_1): Use find_thread_global_id instead of
5232         global_thread_id_to_ptid.
5233
5234 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5235
5236         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5237         possible.
5238         (regcache::write_part): Likewise.
5239         (readable_regcache::cooked_read_part): Update comment.
5240         (readable_regcache::cooked_write_part): Likewise.
5241         * regcache.h: (readable_regcache::read_part): Likewise.
5242         (regcache::write_part): Likewise.
5243
5244 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5245             Dirk Schubert  <dirk.schubert@arm.com>
5246
5247         * aarch64-linux-nat.c (post_attach): New.
5248         (aarch64_linux_nat_target::post_attach): Override post_attach to
5249         record the number of hardware debug registers.
5250
5251 2018-06-20  Tom Tromey  <tom@tromey.com>
5252
5253         * python/py-param.c (add_setshow_generic): Make parameters const.
5254         (parmpy_init): Update.
5255
5256 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5257
5258         * regcache.h (regcache_cooked_read_ftype): Rename to...
5259         (register_read_ftype): ...this, change type to function_view.
5260         (class reg_buffer) <save>: Remove src parameter.
5261         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5262         parameter non-const in first overload.  Remove src parameter in
5263         second overload.
5264         * regcache.c (do_cooked_read): Remove.
5265         (readonly_detached_regcache::readonly_detached_regcache): Make
5266         parameter non-const, adjust call to other constructor.
5267         (reg_buffer::save): Remove src parameter.
5268         * frame.c (do_frame_register_read): Remove.
5269         (frame_save_as_regcache): Use lambda function.
5270         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5271         parameter to ppu2spu_data *.
5272         (ppu2spu_sniffer): Use lambda function.
5273
5274 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5275
5276         * record-full.c (record_full_target::insert_breakpoint): Remove
5277         "struct" keyword, add const.
5278
5279 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5280
5281         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5282         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5283         * configure.ac: Remove AC_PREREQ, add missing quoting.
5284         * gnulib/configure.ac: Modernize usage of
5285         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5286         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5287         (AUTOMAKE_VERSION): Bump to 1.15.1.
5288         * configure: Re-generate.
5289         * config.in: Re-generate.
5290         * aclocal.m4: Re-generate.
5291         * gnulib/aclocal.m4: Re-generate.
5292         * gnulib/config.in: Re-generate.
5293         * gnulib/configure: Re-generate.
5294         * gnulib/import/Makefile.in: Re-generate.
5295
5296 2018-06-19  Pedro Alves  <palves@redhat.com>
5297
5298         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5299         (lookup_minimal_symbol_by_pc_section): ... here with
5300         gdb_assert_not_reached added.
5301
5302 2018-06-19  Pedro Alves  <palves@redhat.com>
5303
5304         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5305         parameter with a block parameter.  Compare location's block symbol
5306         with the frame's block instead of addresses.
5307         (skip_inline_frames): Pass the current block instead of the
5308         frame's address.  Break out as soon as we determine the frame
5309         should not be skipped.
5310
5311 2018-06-18  Tom Tromey  <tom@tromey.com>
5312
5313         * solib-aix.c (solib_aix_get_section_offsets): Return
5314         unique_xmalloc_ptr.
5315         (solib_aix_solib_create_inferior_hook): Update.
5316
5317 2018-06-18  Tom Tromey  <tom@tromey.com>
5318
5319         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5320
5321 2018-06-18  Tom Tromey  <tom@tromey.com>
5322
5323         * solib-frv.c (frv_relocate_main_executable): Use
5324         unique_xmalloc_ptr.
5325         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5326         unique_xmalloc_ptr.
5327
5328 2018-06-18  Tom Tromey  <tom@tromey.com>
5329
5330         * objfiles.h (inhibit_section_map_updates): Update.
5331         (resume_section_map_updates, resume_section_map_updates_cleanup):
5332         Remove.
5333         * solib-svr4.c (svr4_handle_solib_event): Update.
5334         * objfiles.c (inhibit_section_map_updates): Return
5335         scoped_restore_tmpl<int>.
5336         (resume_section_map_updates, resume_section_map_updates_cleanup):
5337         Remove.
5338
5339 2018-06-18  Tom Tromey  <tom@tromey.com>
5340
5341         * valprint.h (read_string): Update.
5342         * valprint.c (read_string): Change type of "buffer".
5343         (val_print_string): Update.
5344         * python/py-value.c (valpy_string): Update.
5345         * language.h (struct language_defn) <la_get_string>: Change
5346         type of "buffer".
5347         (default_get_string, c_get_string): Update.
5348         * language.c (default_get_string): Change type of "buffer".
5349         * guile/scm-value.c (gdbscm_value_to_string): Update.
5350         * c-lang.c (c_get_string): Change type of "buffer".
5351
5352 2018-06-18  Tom Tromey  <tom@tromey.com>
5353
5354         * ser-mingw.c (struct pipe_state_destroyer): New.
5355         (pipe_state_up): New typedef.
5356         (cleanup_pipe_state): Remove.
5357         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5358
5359 2018-06-18  Tom Tromey  <tom@tromey.com>
5360
5361         * rust-lang.h (rust_yyerror): Don't declare.
5362         * rust-lang.c (rust_language_defn): Update.
5363         * rust-exp.y (yyerror): Now static.
5364         * parse.c (parse_exp_in_context_1): Update.
5365         * p-lang.h (p_yyerror): Don't declare.
5366         * p-lang.c (p_language_defn): Update.
5367         * p-exp.y (yyerror): Now static.
5368         * opencl-lang.c (opencl_language_defn): Update.
5369         * objc-lang.c (objc_language_defn): Update.
5370         * m2-lang.h (m2_yyerror): Don't declare.
5371         * m2-lang.c (m2_language_defn): Update.
5372         * m2-exp.y (yyerror): Now static.
5373         * language.h (struct language_defn) <la_error>: Remove.
5374         * language.c (unk_lang_error): Remove.
5375         (unknown_language_defn, auto_language_defn): Remove.
5376         * go-lang.h (go_yyerror): Don't declare.
5377         * go-lang.c (go_language_defn): Update.
5378         * go-exp.y (yyerror): Now static.
5379         * f-lang.h (f_yyerror): Don't declare.
5380         * f-lang.c (f_language_defn): Update.
5381         * f-exp.y (yyerror): Now static.
5382         * d-lang.h (d_yyerror): Don't declare.
5383         * d-lang.c (d_language_defn): Update.
5384         * d-exp.y (yyerror): Now static.
5385         * c-lang.h (c_yyerror): Don't declare.
5386         * c-lang.c (c_language_defn, cplus_language_defn)
5387         (asm_language_defn, minimal_language_defn): Update.
5388         * c-exp.y (yyerror): Now static.
5389         * ada-lang.h (ada_yyerror): Don't declare.
5390         * ada-lang.c (ada_language_defn): Update.
5391         * ada-exp.y (yyerror): Now static.
5392
5393 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5394
5395         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5396         (store_sveregs_to_thread): Likewise.
5397         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5398         (aarch64_linux_store_inferior_registers): Likewise.
5399         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5400         function.
5401         (aarch64_sve_regs_copy_to_regcache): Likewise.
5402         (aarch64_sve_regs_copy_from_regcache): Likewise.
5403         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5404         declaration.
5405         (aarch64_sve_regs_copy_to_regcache): Likewise.
5406         (aarch64_sve_regs_copy_from_regcache): Likewise.
5407         (sve_context): Structure from Linux headers.
5408         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5409         (SVE_SIG_ZREG_SIZE): Likewise.
5410         (SVE_SIG_PREG_SIZE): Likewise.
5411         (SVE_SIG_FFR_SIZE): Likewise.
5412         (SVE_SIG_REGS_OFFSET): Likewise.
5413         (SVE_SIG_ZREGS_OFFSET): Likewise.
5414         (SVE_SIG_ZREG_OFFSET): Likewise.
5415         (SVE_SIG_ZREGS_SIZE): Likewise.
5416         (SVE_SIG_PREGS_OFFSET): Likewise.
5417         (SVE_SIG_PREG_OFFSET): Likewise.
5418         (SVE_SIG_PREGS_SIZE): Likewise.
5419         (SVE_SIG_FFR_OFFSET): Likewise.
5420         (SVE_SIG_REGS_SIZE): Likewise.
5421         (SVE_SIG_CONTEXT_SIZE): Likewise.
5422         (SVE_PT_REGS_MASK): Likewise.
5423         (SVE_PT_REGS_FPSIMD): Likewise.
5424         (SVE_PT_REGS_SVE): Likewise.
5425         (SVE_PT_VL_INHERIT): Likewise.
5426         (SVE_PT_VL_ONEXEC): Likewise.
5427         (SVE_PT_REGS_OFFSET): Likewise.
5428         (SVE_PT_FPSIMD_OFFSET): Likewise.
5429         (SVE_PT_FPSIMD_SIZE): Likewise.
5430         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5431         (SVE_PT_SVE_PREG_SIZE): Likewise.
5432         (SVE_PT_SVE_FFR_SIZE): Likewise.
5433         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5434         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5435         (__SVE_SIG_TO_PT): Likewise.
5436         (SVE_PT_SVE_OFFSET): Likewise.
5437         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5438         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5439         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5440         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5441         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5442         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5443         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5444         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5445         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5446         (SVE_PT_SVE_SIZE): Likewise.
5447         (SVE_PT_SIZE): Likewise.
5448         (HAS_SVE_STATE): New define.
5449
5450 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5451
5452         * nat/aarch64-sve-linux-sigcontext.h: New file.
5453         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5454         new files.
5455         (SVE_VQ_MIN): Likewise.
5456         (SVE_VQ_MAX): Likewise.
5457         (SVE_VL_MIN): Likewise.
5458         (SVE_VL_MAX): Likewise.
5459         (SVE_NUM_ZREGS): Likewise.
5460         (SVE_NUM_PREGS): Likewise.
5461         (sve_vl_valid): Likewise.
5462         (struct user_sve_header): Likewise.
5463
5464 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5465             Richard Bunt <Richard.Bunt@arm.com>
5466
5467         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5468         was requested by GDB.
5469
5470 2018-06-15  Tom de Vries  <tdevries@suse.de>
5471
5472         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5473
5474 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5475
5476         * gnulib/update-gnulib.sh: Print expected versions of
5477         autoconf/aclocal.
5478
5479 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5480
5481         * arch-utils.c (default_type_align): Use type_length_units.
5482         * gdbtypes.c (type_align): Use type_length_units.
5483
5484 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5485
5486         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5487         of 'define' command.
5488
5489 2018-06-14  Tom de Vries  <tdevries@suse.de>
5490
5491         PR cli/22573
5492         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5493         get_no_prettyformat_print_options.
5494
5495 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5496
5497         * sparc-nat.h: Include target.h.
5498         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5499         <fetch_registers>: Remove this argument in function call.
5500         <store_registers>: Remove this argument in function call, remove
5501         extra semicolon.
5502         <low_forget_process>: Call sparc64_forget_process instead of
5503         sparc_forget_process.
5504
5505 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5506
5507         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5508         (procfs_target::make_corefile_notes): Adjust to new
5509         target_read_alloc return type.
5510
5511 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5512             Stephen Roberts  <stephen.roberts@arm.com>
5513
5514         PR gdb/22882
5515         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5516         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5517         Move should_notify_stop local into more inner scope.
5518
5519 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5520             Stephen Roberts  <stephen.roberts@arm.com>
5521
5522         PR gdb/22882
5523         * infrun.c (resume_1): Add call to mark_async_event_handler.
5524
5525 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5526
5527         * infrun.c (do_target_wait): Change old version of $pc printed.
5528
5529 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5530
5531         * dwarf2read.c (read_index_from_section): Rename to...
5532         (read_gdb_index_from_section): ... this, update all callers.
5533         (dwarf2_read_index): Rename to...
5534         (dwarf2_read_gdb_index): ... this, update all callers.
5535
5536 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5537
5538         * gdb/hppa-linux-nat.c
5539         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5540         hppa_linux_nat_target::fetch_registers.
5541
5542 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5543
5544         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5545         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5546         (AARCH64_DWARF_SVE_FFR): Likewise.
5547         (AARCH64_DWARF_SVE_P0): Likewise.
5548         (AARCH64_DWARF_SVE_Z0): Likewise.
5549
5550 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5551
5552         * common/common-regcache.h (raw_compare): New function.
5553         * regcache.c (regcache::raw_compare): Likewise.
5554         * regcache.h (regcache::raw_compare): New declaration.
5555
5556 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5557
5558         * common/common-regcache.h (reg_buffer_common): New structure.
5559         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5560         (reg_buffer::raw_supply): Likewise.
5561         (reg_buffer::raw_supply_integer): Likewise.
5562         (reg_buffer::raw_supply_zeroed): Likewise.
5563         (reg_buffer::raw_collect): Likewise.
5564         (reg_buffer::raw_collect_integer): Likewise.
5565         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5566         (reg_buffer::raw_supply): Likewise.
5567         (reg_buffer::raw_supply_integer): Likewise.
5568         (reg_buffer::raw_supply_zeroed): Likewise.
5569         (reg_buffer::raw_collect): Likewise.
5570         (reg_buffer::raw_collect_integer): Likewise.
5571
5572 2018-06-10  Tom Tromey  <tom@tromey.com>
5573
5574         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5575         (class remote_state) <stop_reply_queue>: Now std::vector.
5576         (remote_state::~remote_state)
5577         (remote_target::stop_reply_queue_length): Update.
5578         (struct queue_iter_param, remove_child_of_pending_fork)
5579         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5580         (check_pending_event_prevents_wildcard_vcont_callback)
5581         (remove_stop_reply_for_inferior)
5582         (remove_stop_reply_of_remote_state)
5583         (remote_notif_remove_once_on_match)
5584         (stop_reply_match_ptid_and_ws)
5585         (remote_kill_child_of_pending_fork): Remove.
5586         (remote_target::remove_new_fork_children)
5587         (remote_target::check_pending_events_prevent_wildcard_vcont)
5588         (remote_target::discard_pending_stop_replies)
5589         (remote_target::discard_pending_stop_replies_in_queue)
5590         (remote_target::remote_notif_remove_queued_reply)
5591         (remote_target::queued_stop_reply)
5592         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5593         (remote_target::wait, remote_target::kill_new_fork_children)
5594         (remote_target::async): Update.
5595
5596 2018-06-10  Tom Tromey  <tom@tromey.com>
5597
5598         * record-full.c (record_full_arch_list_cleanups): Remove.
5599         (record_full_message): Use try/catch.
5600         (record_full_wait_cleanups): Remove.
5601         (record_full_wait_1): Use try/catch.
5602         (record_full_restore): Likewise.
5603
5604 2018-06-10  Tom Tromey  <tom@tromey.com>
5605
5606         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5607         declare VEC.  Add constructor.
5608         <in_target_beneath>: Now bool.
5609         (record_full_breakpoints): Now a std::vector, static.
5610         (record_full_sync_record_breakpoints)
5611         (record_full_init_record_breakpoints)
5612         (record_full_target::insert_breakpoint)
5613         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5614
5615 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5616
5617         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5618         * serial.c (serial_interface_lookup): Remove struct keyword.
5619
5620 2018-06-10  Tom Tromey  <tom@tromey.com>
5621
5622         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5623         method.
5624         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5625         a method.
5626         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5627         method.
5628         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5629         "beneath" as a method.
5630         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5631         Use "beneath" as a method.
5632
5633 2018-06-10  Tom Tromey  <tom@tromey.com>
5634
5635         * tracefile.c (struct trace_file_writer_deleter): New.
5636         <operator()>: Rename from trace_file_writer_xfree.
5637         (trace_file_writer_up): New typedef.
5638         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5639
5640 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5641
5642         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5643         <m_registers, m_register_status>: Change type to
5644         std::unique_ptr.
5645         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5646         XCNEWVEC.
5647
5648 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5649
5650         * common/common-regcache.h (enum register_status): Add
5651         underlying type "signed char".
5652         * regcache.h (reg_buffer) <m_register_status>: Change type to
5653         register_status *.
5654         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5655         register_status instead of signed char.
5656         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5657         (reg_buffer::get_register_status): Remove cast.
5658         (readable_regcache::raw_read): Remove cast.
5659         (readable_regcache::cooked_read): Remove cast.
5660
5661 2018-06-09  Tom Tromey  <tom@tromey.com>
5662
5663         * source.c (reverse_search_command, forward_search_command): Use
5664         scoped_fd.
5665
5666 2018-06-09  Tom Tromey  <tom@tromey.com>
5667
5668         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5669         (serial_ops_list): Now static, std::vector.
5670         (serial_interface_lookup, serial_add_interface): Update.
5671
5672 2018-06-09  Tom Tromey  <tom@tromey.com>
5673
5674         * dwarf2read.c (process_cu_includes): Update.
5675         (process_full_comp_unit): Update.
5676         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5677         std::vector.
5678
5679 2018-06-08  Paul Koning  <paul_koning@dell.com>
5680
5681         PR gdb/23252
5682
5683         * python/python.c (do_start_initialization):
5684         Avoid call to internal Python API.
5685         (init__gdb_module): New function.
5686
5687 2018-06-08  Gary Benson <gbenson@redhat.com>
5688
5689         * linux-thread-db.c (valprint.h): New include.
5690         (struct check_thread_db_info): New structure.
5691         (check_thread_db_on_load, tdb_testinfo): New static globals.
5692         (check_thread_db, check_thread_db_callback): New functions.
5693         (try_thread_db_load_1): Run integrity checks if requested.
5694         (maintenance_check_libthread_db): New function.
5695         (_initialize_thread_db): Register "maint check libthread-db"
5696         and "maint set/show check-libthread-db".
5697         * NEWS: Mention the above new commands.
5698
5699 2018-06-08  Tom Tromey  <tom@tromey.com>
5700
5701         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5702         now a method.
5703
5704 2018-06-08  Tom Tromey  <tom@tromey.com>
5705
5706         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5707
5708 2018-06-08  Tom Tromey  <tom@tromey.com>
5709
5710         * common/btrace-common.h (struct btrace_data): Add constructor,
5711         destructor, move assignment operator.
5712         <empty, clear, fini>: New methods.
5713         <format>: Initialize.
5714         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5715         (btrace_data_empty): Don't declare.
5716         * common/btrace-common.c (btrace_data_init): Remove.
5717         (btrace_data::fini): Rename from btrace_data_fini.
5718         (btrace_data::empty): Rename from btrace_data_empty.
5719         (btrace_data::clear): Rename from btrace_data_clear.  Return
5720         bool.
5721         * btrace.h (make_cleanup_btrace_data): Don't declare.
5722         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5723         (parse_xml_btrace): Update.
5724         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5725         (maint_btrace_clear_packet_history_cmd): Update.
5726
5727 2018-06-07  Pedro Alves  <palves@redhat.com>
5728
5729         * target.h (target_ops) <beneath>: Now a method.  All references
5730         updated.
5731         (class target_stack): New.
5732         * target.c (g_target_stack): New.
5733         (g_current_top_target): Delete.
5734         (current_top_target): Get the top target out of g_target_stack.
5735         (target_stack::push, target_stack::unpush): New.
5736         (push_target, unpush_target): Reimplement.
5737         (target_is_pushed): Reimplement in terms of g_target_stack.
5738         (target_ops::beneath, target_stack::find_beneath): New.
5739
5740 2018-06-07  Pedro Alves  <palves@redhat.com>
5741
5742         * target.h (find_target_beneath): Delete declaration.
5743         * target.c (find_target_beneath): Delete definition.
5744         * aix-thread.c: All callers of find_target_beneath adjusted to
5745         call target_ops::beneath instead.
5746         * bsd-uthread.c: Likewise.
5747         * linux-thread-db.c: Likewise.
5748         * ravenscar-thread.c: Likewise.
5749         * sol-thread.c: Likewise.
5750         * spu-multiarch.c: Likewise.
5751
5752 2018-06-07  Pedro Alves  <palves@redhat.com>
5753
5754         * target.h (target_ops) <beneath>: Now a method.  All references
5755         updated.
5756         (target_ops) <m_beneath>: New.
5757         * target.c (target_ops::beneath): New.
5758         * corelow.c: Adjust all references to target_ops::beneath.
5759         * linux-thread-db.c: Likewise.
5760         * make-target-delegates: Likewise.
5761         * record-btrace.c: Likewise.
5762         * record-full.c: Likewise.
5763         * remote.c: Likewise.
5764         * target.c: Likewise.
5765         * target-delegates.c: Regenerate.
5766
5767 2018-06-07  Pedro Alves  <palves@redhat.com>
5768
5769         * target.h (target_stack): Delete.
5770         (current_top_target): Declare function.
5771         * target.c (target_stack): Delete.
5772         (g_current_top_target): New.
5773         (current_top_target): New function.
5774         * auxv.c: Use current_top_target instead of target_stack
5775         throughout.
5776         * avr-tdep.c: Likewise.
5777         * breakpoint.c: Likewise.
5778         * corefile.c: Likewise.
5779         * elfread.c: Likewise.
5780         * eval.c: Likewise.
5781         * exceptions.c: Likewise.
5782         * frame.c: Likewise.
5783         * gdbarch-selftests.c: Likewise.
5784         * gnu-v3-abi.c: Likewise.
5785         * ia64-tdep.c: Likewise.
5786         * ia64-vms-tdep.c: Likewise.
5787         * infcall.c: Likewise.
5788         * infcmd.c: Likewise.
5789         * infrun.c: Likewise.
5790         * linespec.c: Likewise.
5791         * linux-tdep.c: Likewise.
5792         * minsyms.c: Likewise.
5793         * ppc-linux-nat.c: Likewise.
5794         * ppc-linux-tdep.c: Likewise.
5795         * procfs.c: Likewise.
5796         * regcache.c: Likewise.
5797         * remote.c: Likewise.
5798         * rs6000-tdep.c: Likewise.
5799         * s390-linux-nat.c: Likewise.
5800         * s390-tdep.c: Likewise.
5801         * solib-aix.c: Likewise.
5802         * solib-darwin.c: Likewise.
5803         * solib-dsbt.c: Likewise.
5804         * solib-spu.c: Likewise.
5805         * solib-svr4.c: Likewise.
5806         * solib-target.c: Likewise.
5807         * sparc-tdep.c: Likewise.
5808         * sparc64-tdep.c: Likewise.
5809         * spu-tdep.c: Likewise.
5810         * symfile.c: Likewise.
5811         * symtab.c: Likewise.
5812         * target-descriptions.c: Likewise.
5813         * target-memory.c: Likewise.
5814         * target.c: Likewise.
5815         * target.h: Likewise.
5816         * tracefile-tfile.c: Likewise.
5817         * tracepoint.c: Likewise.
5818         * valops.c: Likewise.
5819         * valprint.c: Likewise.
5820         * value.c: Likewise.
5821         * windows-tdep.c: Likewise.
5822         * mi/mi-main.c: Likewise.
5823
5824 2018-06-07  Tom Tromey  <tom@tromey.com>
5825
5826         * valprint.h (build_address_symbolic): Declare.
5827         * printcmd.c (print_address_symbolic): Update.
5828         (build_address_symbolic): Change "name" and "filename" to
5829         std::string.
5830         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5831         Update.
5832         * defs.h (build_address_symbolic): Remove declaration.
5833
5834 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5835
5836         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5837         (aarch64_vnv_type): Add function.
5838         (aarch64_pseudo_register_name): Add V regs for SVE.
5839         (aarch64_pseudo_register_type): Likewise.
5840         (aarch64_pseudo_register_reggroup_p): Likewise.
5841         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5842         (aarch64_pseudo_read_value): Add V regs for SVE.
5843         (aarch64_pseudo_write_2): Use V0 offset for SVE
5844         (aarch64_pseudo_write): Add V regs for SVE.
5845         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5846
5847 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5848
5849         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5850         (sve_vl_from_vq): Likewise.
5851
5852 2018-06-05  Tom Tromey  <tom@tromey.com>
5853
5854         * cli/cli-cmds.c (show_version): Update.
5855         * top.c (print_gdb_version): Add "interactive" parameter.
5856         Update.
5857         * main.c (captured_main_1): Update.
5858         * top.h (print_gdb_version): Add "interactive" parameter and a
5859         comment.
5860
5861 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5862
5863         * common/enum-flags.h: Add trailing semicolon to example in
5864         comment.
5865
5866 2018-06-05  Tom Tromey  <tom@tromey.com>
5867
5868         PR cli/12326:
5869         * NEWS: Add entry about pager.
5870         * utils.c (pagination_disabled_for_command): New global.
5871         (prompt_for_continue): Allow "c" response to prompt.
5872         (reinitialize_more_filter): Clear
5873         pagination_disabled_for_command.
5874         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5875
5876 2018-06-04  Tom Tromey  <tom@tromey.com>
5877
5878         * ada-lang.h (ada_lookup_symbol_list): Update.
5879         * ada-lang.c (resolve_subexp): Update.
5880         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5881         parameter.
5882         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5883         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5884         results parameter to std::vector.
5885         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5886         Update.
5887         * ada-exp.y (block_lookup): Update.
5888         (select_possible_type_sym): Change type of syms.  Remove nsyms
5889         parameter.
5890         (write_var_or_type, write_name_assoc): Update.
5891
5892 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5893
5894         * windows-nat.c (windows_nat_target::xfer_partial): Return
5895         TARGET_XFER_E_IO if we need to delegate to the target beneath
5896         but BENEATH is NULL.
5897
5898 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5899
5900         * Makefile.in (config.status): Add configure.nat as a
5901         dependency.
5902
5903 2018-06-04  Tom Tromey  <tom@tromey.com>
5904
5905         * cp-name-parser.y (cpname_state): Add method declarations.
5906         (HANDLE_QUAL): Update.
5907         (cpname_state::d_grab, cpname_state::fill_comp)
5908         (cpname_state::make_operator, cpname_state::make_dtor)
5909         (cpname_state::make_builtin_type, cpname_state::make_name)
5910         (cpname_state::d_qualify, cpname_state::d_int_type)
5911         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5912         (%union): Move earlier.
5913
5914 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5915
5916         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5917
5918 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5919
5920         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5921         (aarch64_pseudo_write_1): Likewise.
5922         (aarch64_pseudo_read_value): Use helper.
5923         (aarch64_pseudo_write): Likewise.
5924
5925 2018-06-04  Pedro Alves  <palves@redhat.com>
5926
5927         * darwin-nat.c (darwin_ops): Delete.
5928         (darwin_attach_pid): Use get_native_target.
5929
5930 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5931
5932         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5933         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5934
5935 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5936
5937         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5938         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5939         (aarch64_gdbarch_init): Check for SVE.
5940         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5941
5942 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5943
5944         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5945         * aarch64-tdep.h (aarch64_read_description): Likewise.
5946         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5947         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5948         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5949         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5950         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5951
5952 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5953
5954         * value.c (value_fetch_lazy_bitfield): New.
5955         (value_fetch_lazy_memory): New.
5956         (value_fetch_lazy_register): New.
5957         (value_fetch_lazy): Factor out to smaller functions.
5958
5959 2018-06-01  Tom Tromey  <tom@tromey.com>
5960
5961         * cp-name-parser.y (backslashable, represented): Now const.
5962
5963 2018-06-01  Tom Tromey  <tom@tromey.com>
5964
5965         * cp-name-parser.y: Include parser-defs.h.
5966         (parser_fprintf): Remove declaration.
5967
5968 2018-06-01  Tom Tromey  <tom@tromey.com>
5969
5970         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5971         %parse-param.
5972         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5973         (global_result): Remove globals.
5974         (struct cpname_state): New.
5975         (yyparse): Don't declare.
5976         (yylex, yyerror): Move declarations after %union.
5977         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5978         (make_name): Add state parameter.
5979         Update all callers.
5980         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5981         parameter.
5982         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5983         Update.
5984         (yylex): Add lvalp, state parameters.
5985         (yyerror): Add state parameter.
5986         (cp_demangled_name_to_comp): Update.
5987
5988 2018-06-01  Tom Tromey  <tom@tromey.com>
5989
5990         * cp-name-parser.y (parser_fprintf): Declare.
5991         (GDB_YY_REMAP_PREFIX): Define.
5992         Include yy-remap.h.  Don't redefine yy* identifiers.
5993
5994 2018-06-01  Tom Tromey  <tom@tromey.com>
5995
5996         * python/py-type.c (typy_legacy_template_argument): Update.
5997         * cp-support.h (cp_demangled_name_to_comp): Update.
5998         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5999         parameter to be a "std::string *".
6000         (main): Update.
6001
6002 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6003
6004         * ada-lex.l: Include "diagnostics.h" instead of
6005         "common/diagnostics.h".
6006         * unittests/environ-selftests.c: Likewise.
6007         * common/diagnostics.h: Moved to ../include.
6008
6009 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6010
6011         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6012         to language_mode_manual while calling breakpoint_re_set_one.
6013
6014 2018-06-01  Tom Tromey  <tom@tromey.com>
6015
6016         * valops.c (value_cast_structs, destructor_name_p): Update.
6017         * symtab.c (gdb_mangle_name): Update.
6018         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6019         Update.
6020         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6021         (pascal_object_print_value_fields, pascal_object_print_value):
6022         Update.
6023         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6024         * linespec.c (find_methods): Update.
6025         * gdbtypes.h (type_name_no_tag): Remove.
6026         (type_name_or_error): Rename from type_name_no_tag_or_error.
6027         * gdbtypes.c (type_name_no_tag): Remove.
6028         (type_name_or_error): Rename from type_name_no_tag_or_error.
6029         (lookup_struct_elt_type, check_typedef): Update.
6030         * expprint.c (print_subexp_standard): Update.
6031         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6032         * d-namespace.c (d_lookup_nested_symbol): Update.
6033         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6034         (cp_print_class_member): Update.
6035         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6036         * completer.c (add_struct_fields): Update.
6037         * c-typeprint.c (cp_type_print_derivation_info)
6038         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6039         Update.
6040         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6041         (ada_prefer_type, ada_is_exception_sym): Update.
6042
6043 2018-06-01  Tom Tromey  <tom@tromey.com>
6044
6045         * valops.c (enum_constant_from_type, value_namespace_elt)
6046         (value_maybe_namespace_elt): Update.
6047         * valarith.c (find_size_for_pointer_math): Update.
6048         * target-descriptions.c (make_gdb_type): Update.
6049         * symmisc.c (print_symbol): Update.
6050         * stabsread.c (define_symbol, read_type)
6051         (complain_about_struct_wipeout, add_undefined_type)
6052         (cleanup_undefined_types_1): Update.
6053         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6054         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6055         (rust_internal_print_type, rust_composite_type)
6056         (rust_evaluate_funcall, rust_evaluate_subexp)
6057         (rust_inclusive_range_type_p): Update.
6058         * python/py-type.c (typy_get_tag): Update.
6059         * p-typeprint.c (pascal_type_print_base): Update.
6060         * mdebugread.c (parse_symbol, parse_type): Update.
6061         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6062         Update.
6063         * guile/scm-type.c (gdbscm_type_tag): Update.
6064         * go-lang.c (sixg_string_p): Update.
6065         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6066         Update.
6067         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6068         (TYPE_TAG_NAME): Remove.
6069         * gdbtypes.c (type_name_no_tag): Simplify.
6070         (check_typedef, check_types_equal, recursive_dump_type)
6071         (copy_type_recursive, arch_composite_type): Update.
6072         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6073         in summary mode when needed.
6074         * eval.c (evaluate_funcall): Update.
6075         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6076         (process_structure_scope, read_enumeration_type)
6077         (read_namespace_type, read_module_type, determine_prefix): Update.
6078         * cp-support.c (inspect_type): Update.
6079         * coffread.c (process_coff_symbol, decode_base_type): Update.
6080         * c-varobj.c (c_is_path_expr_parent): Update.
6081         * c-typeprint.c (c_type_print_base_struct_union): Update.
6082         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6083         summary when using C language.
6084         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6085         (gen_maybe_namespace_elt): Update.
6086         * ada-lang.c (ada_type_name): Simplify.
6087         (empty_record, ada_template_to_fixed_record_type_1)
6088         (template_to_static_fixed_type)
6089         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6090
6091 2018-06-01  Tom Tromey  <tom@tromey.com>
6092
6093         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6094         c_print_type.
6095         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6096         (c_print_type): Update.
6097         (c_print_type): New overload.
6098         (c_type_print_varspec_prefix, c_type_print_args)
6099         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6100         (c_type_print_base_struct_union, c_type_print_base_1)
6101         (cp_type_print_method_args): Add "language" parameter.
6102         (c_type_print_base): Update.
6103         * c-lang.h (c_print_type): Add new overload.
6104
6105 2018-06-01  Tom Tromey  <tom@tromey.com>
6106
6107         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6108         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6109
6110 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6111
6112         * aarch64-tdep.c (aarch64_sve_register_names): New const
6113         var.
6114         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6115         (AARCH64_SVE_Z_REGS_NUM): New define.
6116         (AARCH64_SVE_P_REGS_NUM): Likewise.
6117         (AARCH64_SVE_NUM_REGS): Likewise.
6118
6119 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6120
6121         * nat/linux-ptrace.h [__alpha__]
6122         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6123         definitions.
6124
6125 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6126
6127         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6128         the endianness selected.
6129         * NEWS: Document `set endian auto' mode operation update.
6130
6131 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6132
6133         * Makefile.in: Add new header.
6134         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6135         (sve_vl_from_vg): Likewise.
6136         (sve_vq_from_vl): Likewise.
6137         (sve_vl_from_vq): Likewise.
6138         (sve_vq_from_vg): Likewise.
6139         (sve_vg_from_vq): Likewise.
6140         * configure.nat: Add new c file.
6141         * nat/aarch64-sve-linux-ptrace.c: New file.
6142         * nat/aarch64-sve-linux-ptrace.h: New file.
6143
6144 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6145
6146         * aarch64-linux-nat.c (aarch64_linux_read_description):
6147         Add parmeter zero.
6148         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6149         Likewise.
6150         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6151         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6152         (aarch64_gdbarch_init): Add parmeter zero.
6153         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6154         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6155         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6156         parmeter.
6157         * doc/gdb.texinfo: Describe SVE feature
6158         * features/aarch64-sve.c: New file.
6159
6160 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6161
6162         PR gdb/23210
6163         * gdbarch.sh (significant_addr_bit): Default to zero when
6164         not set by target architecture.
6165         * gdbarch.c: Re-generated.
6166         * utils.c (address_significant): Update.
6167
6168 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6169
6170         * stack.c (func_command): Remove trailing newline in call to error.
6171
6172 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6173
6174         * regcache.h (regcache_raw_collect): Remove, update callers to
6175         use regcache::raw_collect.
6176         * regcache.c (regcache_raw_collect): Remove.
6177
6178 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6179
6180         * regcache.h (regcache_raw_supply): Remove, update callers to
6181         use detached_regcache::raw_supply.
6182         * regcache.c (regcache_raw_supply): Remove.
6183
6184 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6185
6186         * regcache.h (regcache_cooked_write_part): Remove, update
6187         callers to use regcache::cooked_write_part.
6188         * regcache.c (regcache_cooked_write_part): Remove.
6189
6190 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6191
6192         * regcache.h (regcache_cooked_read_part): Remove, update callers
6193         to use readable_regcache::cooked_read_part.
6194         * regcache.c (regcache_cooked_read_part): Remove.
6195
6196 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6197
6198         * regcache.h (regcache_cooked_read_value): Remove, update
6199         callers to use readable_regcache::cooked_read_value.
6200         * regcache.c (regcache_cooked_read_value): Remove.
6201
6202 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6203
6204         * regcache.h (regcache_cooked_write): Remove, update callers to
6205         use regcache::cooked_write.
6206         * regcache.c (regcache_cooked_write): Remove.
6207
6208 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6209
6210         * regcache.h (regcache_invalidate): Remove, update callers to
6211         use detached_regcache::invalidate instead.
6212         * regcache.c (regcache_invalidate): Remove.
6213
6214 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6215
6216         * regcache.h (regcache_raw_write_part): Remove, update callers
6217         to use regcache::raw_write_part instead.
6218         * regcache.c (regcache_raw_write_part): Remove.
6219
6220 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6221
6222         * regcache.h (regcache_raw_read_part): Remove, update callers to
6223         use readable_regcache::raw_read_part instead.
6224         * regcache.c (regcache_raw_read_part): Remove.
6225
6226 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6227
6228         * regcache.h (regcache_cooked_read): Remove, update callers to
6229         use readable_regcache::cooked_read instead.
6230         * regcache.c (regcache_cooked_read): Remove.
6231
6232 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6233
6234         * regcache.h (regcache_raw_write): Remove, update callers to use
6235         regcache::raw_write instead.
6236         * regcache.c (regcache_raw_write): Remove.
6237
6238 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6239
6240         * regcache.h (regcache_raw_read): Remove, update callers to use
6241         readable_regcache::raw_read instead.
6242         * regcache.c (regcache_raw_read): Remove.
6243
6244 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6245
6246         * regcache.h (regcache_raw_update): Remove, update callers to
6247         use readable_regcache::raw_update instead.
6248         * regcache.c (regcache_raw_update): Remove.
6249
6250 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6251
6252         * regcache.h (regcache_register_status): Remove, update callers
6253         to use reg_buffer::get_register_status directly instead.
6254         * regcache.c (regcache_register_status): Remove.
6255
6256 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6257
6258         * regcache.h (regcache_get_ptid): Remove, update all callers to
6259         call regcache::ptid instead.
6260         * regcache.c (regcache_get_ptid): Remove.
6261
6262 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6263
6264         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6265
6266 2018-05-30  Pedro Alves  <palves@redhat.com>
6267
6268         * common/common-exceptions.h (exception_rethrow): Use
6269         ATTRIBUTE_NORETURN.
6270
6271 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6272
6273         * breakpoint.c (print_solib_event, check_status_catch_solib):
6274         Remove struct keyword in range-based for loops.
6275         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6276         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6277         Likewise.
6278         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6279         Likewise.
6280         * symfile.c (addr_info_make_relative): Likewise.
6281         * thread.c (value_in_thread_stack_temporaries): Likewise.
6282
6283 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6284
6285         PR gdb/16841
6286         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6287         aggregate type to get its real type before accessing it.
6288
6289 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6290
6291         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6292         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6293         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6294         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6295         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6296         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6297         * printcmd.c (info_address_command): Likewise.
6298
6299 2018-05-29  Tom Tromey  <tom@tromey.com>
6300
6301         * windows-nat.c (handle_exception): Update fall-through comment.
6302
6303 2018-05-29  Tom Tromey  <tom@tromey.com>
6304
6305         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6306         (struct program_space) <added_solibs>: Now a std::vector.
6307         * breakpoint.c (print_solib_event): Update.
6308         (check_status_catch_solib): Update.
6309         * progspace.c (clear_program_space_solib_cache): Update.
6310         * solib.c (update_solib_list): Update.
6311
6312 2018-05-29  Tom Tromey  <tom@tromey.com>
6313
6314         * python/py-type.c (typy_richcompare): Update.
6315         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6316         * gdbtypes.h (types_deeply_equal): Return bool.
6317         (types_equal): Likewise.
6318         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6319         declare VEC.
6320         (check_types_equal): Change worklist to std::vector.  Return
6321         bool.
6322         (struct type_equality_entry): Add constructor.
6323         (compare_maybe_null_strings): Return bool.
6324         (check_types_worklist): Return bool.  Change worklist to
6325         std::vector.
6326         (types_deeply_equal): Use std::vector.
6327         (types_equal): Return bool.
6328         (compare_maybe_null_strings): Simplify.
6329
6330 2018-05-29  Tom Tromey  <tom@tromey.com>
6331
6332         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6333
6334 2018-05-29  Tom Tromey  <tom@tromey.com>
6335
6336         * objc-lang.h: Don't include cp-support.h.
6337         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6338         declare VEC.
6339
6340 2018-05-27  Tom Tromey  <tom@tromey.com>
6341
6342         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6343
6344 2018-05-25  Tom Tromey  <tom@tromey.com>
6345
6346         * value.c (value::location): Initialize.
6347
6348 2018-05-25  Tom Tromey  <tom@tromey.com>
6349
6350         * dbxread.c (init_bincl_list): Remove.
6351         (bincl_list): Now a std::vector.
6352         (bincls_allocated, next_bincl): Remove.
6353         (free_bincl_list, do_free_bincl_list_cleanup)
6354         (make_cleanup_free_bincl_list): Remove.
6355         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6356         unique_xmalloc_ptr.
6357         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6358         (struct header_file_location): Add constructor.
6359         (add_bincl_to_list): Remove.
6360
6361 2018-05-25  Tom Tromey  <tom@tromey.com>
6362
6363         * tui/tui.c (tui_enable): Update.
6364         * mi/mi-interp.c (mi_interp::init): Update.
6365         * interps.h (class interp) <name>: New method.
6366         <m_name>: Rename from name.
6367         (~scoped_restore_interp): Update.
6368         * interps.c (interp::interp): Update.
6369         (interp_add, interp_set, interp_lookup_existing)
6370         (current_interp_named_p): Update.
6371
6372 2018-05-25  Tom Tromey  <tom@tromey.com>
6373
6374         * interps.c (interp_name): Remove.
6375         * mi/mi-interp.c (mi_interp::init): Update.
6376         * interps.h (interp_name): Remove.
6377         (~scoped_restore_interp): Update.
6378         * tui/tui.c (tui_enable): Update.
6379
6380 2018-05-25  Tom Tromey  <tom@tromey.com>
6381
6382         * utils.c (fputs_maybe_filtered): Update.
6383         * linespec.c (decode_line_full): Update.
6384         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6385         (mi_print_breakpoint_for_event, mi_solib_loaded)
6386         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6387         (mi_user_selected_context_changed): Update.
6388         * mi/mi-main.c (mi_execute_command): Update.
6389         * cli/cli-script.c (execute_control_command): Update.
6390         * python/python.c (execute_gdb_command): Update.
6391         * solib.c (info_sharedlibrary_command): Update.
6392         * interps.c (interp_ui_out): Remove.
6393         * interps.h (interp_ui_out): Remove.
6394
6395 2018-05-25  Tom Tromey  <tom@tromey.com>
6396
6397         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6398         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6399         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6400
6401 2018-05-25  Tom Tromey  <tom@tromey.com>
6402
6403         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6404         * interps.c (interp_exec): Use scoped_restore.
6405
6406 2018-05-25  Tom Tromey  <tom@tromey.com>
6407
6408         * remote.c (remote_target::remote_file_get): Use
6409         gdb::byte_vector.
6410         (remote_target::remote_file_put): Likewise.
6411
6412 2018-05-25  Tom Tromey  <tom@tromey.com>
6413
6414         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6415         a std::string.
6416         (get_pe_section_index, add_pe_exported_sym): Update.
6417         (read_pe_exported_syms): Use gdb::def_vector.
6418
6419 2018-05-25  Tom Tromey  <tom@tromey.com>
6420
6421         * frame.c (remove_prev_frame): Remove.
6422         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6423
6424 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6425
6426         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6427         Remove prototypes.
6428         * mips-linux-nat.c (supply_fpregset): Always call
6429         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6430         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6431         `mips_fill_fpregset'.
6432         * mips-linux-tdep.c (mips_supply_fpregset)
6433         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6434         (mips_fill_fpregset_wrapper): Remove functions.
6435         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6436         (mips_linux_fpregset): Remove variable.
6437         (mips_linux_iterate_over_regset_sections): Use
6438         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6439         (mips_linux_o32_sigframe_init): Remove comment.
6440
6441 2018-05-25  Pedro Alves  <palves@redhat.com>
6442
6443         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6444         (struct readahead_cache, struct packet_reg, struct
6445         remote_arch_state, class remote_state): Move higher up in the
6446         file.
6447         (remote_target::m_remote_state): Now an object instead of a pointer.
6448         (remote_target::get_remote_state): Adjust.
6449
6450 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6451
6452         * stack.c (select_and_print_frame): Delete.
6453         (struct function_bounds): Move struct within function.
6454         (func_command): Most content moved into new function
6455         find_frame_for_function, use new function, print result, add
6456         function comment.
6457         (find_frame_for_function): New function, now returns a result.
6458
6459 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6460
6461         * stack.c (iterate_over_block_arg_vars): Fix comment.
6462         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6463
6464 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6465
6466         PR gdb/23203
6467         * frame.c
6468         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6469         Define.
6470         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6471         Define.
6472         * frame.h (class scoped_restore_selected_frame): New class.
6473         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6474         of any exception, use scoped_restore_selected_frame to restore the
6475         frame instead.
6476
6477 2018-05-24  Pedro Alves  <palves@redhat.com>
6478
6479         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6480         override.
6481
6482 2018-05-23  Tom Tromey  <tom@tromey.com>
6483
6484         * complaints.c (struct complaints): Remove.
6485         (symfile_complaint_book): Remove.
6486         (series): New global.
6487         (complaint_internal): Update.
6488         (clear_complaints): Update.
6489
6490 2018-05-23  Tom Tromey  <tom@tromey.com>
6491
6492         * complaints.c (counters): New global.
6493         (struct complain): Remove.
6494         (struct complaints) <root>: Remove.
6495         (complaint_sentinel): Remove.
6496         (symfile_complaint_book): Update.
6497         (find_complaint) Remove.
6498         (complaint_internal, clear_complaints): Update.
6499
6500 2018-05-23  Tom Tromey  <tom@tromey.com>
6501
6502         * complaints.c (struct complain) <file, line>: Remove.
6503         (find_complaint): Remove file, line parameters.
6504         (complaint_internal): Update.
6505
6506 2018-05-23  Tom Tromey  <tom@tromey.com>
6507
6508         * complaints.c (vcomplaint): Remove.
6509         (complaint_internal) Merge in contents of vcomplaint.
6510
6511 2018-05-23  Tom Tromey  <tom@tromey.com>
6512
6513         * complaints.c (struct complaints) <explanation>: Remove.
6514         (symfile_explanations): Remove.
6515         (symfile_complaint_book): Update.
6516         (vcomplaint): Update.
6517         (struct explanation): Remove.
6518
6519 2018-05-23  Tom Tromey  <tom@tromey.com>
6520
6521         * complaints.c (symfile_complaints): Remove.
6522         (complaint_internal): Remove "complaints" parameter.
6523         (clear_complaints, vcomplaint): Remove "c" parameter.
6524         (get_complaints): Remove.
6525         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6526         (dwarf2_debug_line_missing_file_complaint)
6527         (dwarf2_debug_line_missing_end_sequence_complaint)
6528         (dwarf2_complex_location_expr_complaint)
6529         (dwarf2_const_value_length_mismatch_complaint)
6530         (dwarf2_section_buffer_overflow_complaint)
6531         (dwarf2_macro_malformed_definition_complaint)
6532         (dwarf2_invalid_attrib_class_complaint)
6533         (create_addrmap_from_index, dw2_symtab_iter_next)
6534         (dw2_expand_marked_cus)
6535         (dw2_debug_names_iterator::find_vec_in_debug_names)
6536         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6537         (create_debug_type_hash_table, init_cutu_and_read_dies)
6538         (partial_die_parent_scope, add_partial_enumeration)
6539         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6540         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6541         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6542         (create_cus_hash_table, create_dwp_hash_table)
6543         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6544         (dwarf2_rnglists_process, dwarf2_ranges_process)
6545         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6546         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6547         (handle_struct_member_die, process_structure_scope)
6548         (read_array_type, read_common_block, read_module_type)
6549         (read_tag_pointer_type, read_typedef, read_base_type)
6550         (read_subrange_type, load_partial_dies, partial_die_info::read)
6551         (partial_die_info::read, partial_die_info::read)
6552         (partial_die_info::read, read_checked_initial_length_and_offset)
6553         (dwarf2_string_attr, read_formatted_entries)
6554         (dwarf_decode_line_header)
6555         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6556         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6557         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6558         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6559         (get_signatured_type, get_DW_AT_signature_type)
6560         (decode_locdesc, file_file_name, consume_improper_spaces)
6561         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6562         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6563         (dwarf2_symbol_mark_computed, set_die_type)
6564         (read_attribute_value): Update.
6565         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6566         Update.
6567         * dbxread.c (unknown_symtype_complaint)
6568         (lbrac_mismatch_complaint, repeated_header_complaint)
6569         (set_namestring, function_outside_compilation_unit_complaint)
6570         (read_dbx_symtab, process_one_symbol): Update.
6571         * gdbtypes.c (stub_noname_complaint): Update.
6572         * windows-nat.c (handle_unload_dll): Update.
6573         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6574         (decode_base_type): Update.
6575         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6576         (eb_complaint, record_include_begin, record_include_end)
6577         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6578         (process_xcoff_symbol, read_symbol)
6579         (function_outside_compilation_unit_complaint)
6580         (scan_xcoff_symtab): Update.
6581         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6582         * buildsym.c (finish_block_internal, make_blockvector)
6583         (end_symtab_get_static_block, augment_type_symtab): Update.
6584         * dtrace-probe.c (dtrace_process_dof)
6585         (dtrace_static_probe_ops::get_probes): Update.
6586         * complaints.h (struct complaint): Don't declare.
6587         (symfile_complaints): Remove.
6588         (complaint_internal): Remove "complaints" parameter.
6589         (complaint): Likewise.
6590         (clear_complaints): Likewise.
6591         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6592         (reread_symbols): Update.
6593         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6594         (dwarf2_frame_cache, decode_frame_entry): Update.
6595         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6596         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6597         (info_selectors_command): Update.
6598         * macrotab.c (macro_include, check_for_redefinition)
6599         (macro_undef): Update.
6600         * objfiles.c (filter_overlapping_sections): Update.
6601         * stabsread.c (invalid_cpp_abbrev_complaint)
6602         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6603         (define_symbol, error_type, read_type, rs6000_builtin_type)
6604         (stabs_method_name_from_physname, read_member_functions)
6605         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6606         (attach_fields_to_type, complain_about_struct_wipeout)
6607         (read_range_type, read_args, common_block_start)
6608         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6609         Update.
6610         * mdebugread.c (index_complaint, unknown_ext_complaint)
6611         (basic_type_complaint, bad_tag_guess_complaint)
6612         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6613         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6614         (parse_procedure, parse_lines)
6615         (function_outside_compilation_unit_complaint)
6616         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6617         (bad_tag_guess_complaint, reg_value_complaint): Update.
6618         * cp-support.c (demangled_name_complaint): Update.
6619         * macroscope.c (sal_macro_scope): Update.
6620         * dwarf-index-write.c (class debug_names): Update.
6621
6622 2018-05-23  Tom Tromey  <tom@tromey.com>
6623
6624         * complaints.c (clear_complaints): Remove "noisy" parameter.
6625         * complaints.h (clear_complaints): Update.
6626         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6627         (reread_symbols): Update.
6628
6629 2018-05-23  Tom Tromey  <tom@tromey.com>
6630
6631         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6632         SUBSEQUENT_MESSAGE.
6633         (vcomplaint, clear_complaints): Update.
6634         (symfile_explanations): Remove some messages.
6635
6636 2018-05-23  Tom Tromey  <tom@tromey.com>
6637
6638         * complaints.c (internal_complaint): Remove.
6639         * complaints.h (internal_complaint): Remove.
6640
6641 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6642
6643         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6644
6645 2018-05-22  Pedro Alves  <palves@redhat.com>
6646
6647         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6648         (remote_fileio_badfd, remote_fileio_return_errno)
6649         (remote_fileio_return_success, remote_fileio_func_open)
6650         (remote_fileio_func_open, remote_fileio_func_close)
6651         (remote_fileio_func_read, remote_fileio_func_write)
6652         (remote_fileio_func_lseek, remote_fileio_func_rename)
6653         (remote_fileio_func_unlink, remote_fileio_func_stat)
6654         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6655         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6656         remote_target parameter.
6657         (remote_fio_func_map) <func>: Add remote_target parameter.
6658         (do_remote_fileio_request, remote_fileio_request):
6659         * remote-fileio.h (remote_fileio_request):
6660         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6661         remote_target parameter.
6662         (remote_notif_process, handle_notification): Adjust to pass down
6663         the remote.
6664         (remote_notif_state_allocate): Add remote_target parameter.  Save
6665         it.
6666         * remote-notif.h (struct remote_target): Forward declare.
6667         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6668         remote_target parameter.
6669         (struct remote_notif_state) <remote>: New field.
6670         (remote_notif_ack, remote_notif_parse): Add remote_target
6671         parameter.
6672         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6673         remote_target parameter.
6674         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6675         (threads_listing_context, rmt_thread_action, protocol_feature)
6676         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6677         (packet_result, struct threads_listing_context, remote_state):
6678         Move definitions and declarations higher up.
6679         (remote_target) <~remote_target>: Declare.
6680         (remote_download_command_source, remote_file_put, remote_file_get)
6681         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6682         (remote_hostio_pread_vFile, remote_hostio_send_command)
6683         (remote_hostio_set_filesystem, remote_hostio_open)
6684         (remote_hostio_close, remote_hostio_unlink, remote_state)
6685         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6686         (get_memory_write_packet_size, get_memory_read_packet_size)
6687         (append_pending_thread_resumptions, remote_detach_1)
6688         (append_resumption, remote_resume_with_vcont)
6689         (add_current_inferior_and_thread, wait_ns, wait_as)
6690         (process_stop_reply, remote_notice_new_inferior)
6691         (process_initial_stop_replies, remote_add_thread)
6692         (btrace_sync_conf, remote_btrace_maybe_reopen)
6693         (remove_new_fork_children, kill_new_fork_children)
6694         (discard_pending_stop_replies, stop_reply_queue_length)
6695         (check_pending_events_prevent_wildcard_vcont)
6696         (discard_pending_stop_replies_in_queue, stop_reply)
6697         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6698         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6699         (remote_interrupt_as, remote_interrupt_ns)
6700         (remote_get_noisy_reply, remote_query_attached)
6701         (remote_add_inferior, remote_current_thread, get_current_thread)
6702         (set_thread, set_general_thread, set_continue_thread)
6703         (set_general_process, write_ptid)
6704         (remote_unpack_thread_info_response, remote_get_threadinfo)
6705         (parse_threadlist_response, remote_get_threadlist)
6706         (remote_threadlist_iterator, remote_get_threads_with_ql)
6707         (remote_get_threads_with_qxfer)
6708         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6709         (get_offsets, remote_check_symbols, remote_supported_packet)
6710         (remote_query_supported, remote_packet_size)
6711         (remote_serial_quit_handler, remote_detach_pid)
6712         (remote_vcont_probe, remote_resume_with_hc)
6713         (send_interrupt_sequence, interrupt_query)
6714         (remote_notif_get_pending_events, fetch_register_using_p)
6715         (send_g_packet, process_g_packet, fetch_registers_using_g)
6716         (store_register_using_P, store_registers_using_G)
6717         (set_remote_traceframe, check_binary_download)
6718         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6719         (remote_xfer_live_readonly_partial, remote_read_bytes)
6720         (remote_send_printf, remote_flash_write, readchar)
6721         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6722         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6723         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6724         (extended_remote_disable_randomization, extended_remote_run)
6725         (send_environment_packet, extended_remote_environment_support)
6726         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6727         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6728         (packet_command): Now methods of ...
6729         (remote_target): ... this class.
6730         (m_remote_state) <remote_target>: New field.
6731         (struct remote_state) <stop_reply_queue,
6732         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6733         fields.
6734         (remote_state::remote_state): Allocate stop_reply_queue.
6735         (remote_state): Delete global.
6736         (get_remote_state_raw): Delete.
6737         (remote_target::get_remote_state): Allocate m_remote_state on
6738         demand.
6739         (get_current_remote_target): New.
6740         (remote_ops, extended_remote_ops): Delete.
6741         (wait_forever_enabled_p, remote_async_inferior_event_token):
6742         Delete, moved to struct remote_state.
6743         (remote_target::close): Delete self.  Destruction bits split to
6744         ...
6745         (remote_target::~remote_target): ... this.
6746         (show_memory_packet_size): Adjust to use
6747         get_current_remote_target.
6748         (struct protocol_feature) <func>: Add remote_target parameter.
6749         All callers adjusted.
6750         (curr_quit_handler_target): New.
6751         (remote_serial_quit_handler): Reimplement.
6752         (remote_target::open_1): Adjust to use get_current_remote_target.
6753         Heap-allocate remote_target/extended_remote_target instances.
6754         (vcont_builder::vcont_builder): Add remote_target parameter, and
6755         save it in m_remote.  All callers adjusted.
6756         (vcont_builder::m_remote): New field.
6757         (vcont_builder::restart, vcont_builder::flush)
6758         (vcont_builder::push_action): Use it.
6759         (remote_target::commit_resume): Use it.
6760         (struct queue_iter_param) <remote>: New field.
6761         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6762         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6763         (check_pending_event_prevents_wildcard_vcont_callback)
6764         (remote_target::check_pending_events_prevent_wildcard_vcont)
6765         (remote_target::discard_pending_stop_replies)
6766         (remote_target::discard_pending_stop_replies_in_queue)
6767         (remote_target::remote_notif_remove_queued_reply): Fill in
6768         'remote' field.
6769         (remote_notif_get_pending_events): New.
6770         (remote_target::readchar, remote_target::remote_serial_write):
6771         Save/restore curr_quit_handler_target.
6772         (putpkt): New.
6773         (kill_new_fork_children): Fill in 'remote' field.
6774         (packet_command): Use get_current_remote_target, defer to
6775         remote_target method of same name.
6776         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6777         parameter, and save it in m_remote.  All callers adjusted.
6778         (scoped_remote_fd::release): Use m_remote.
6779         (scoped_remote_fd::m_remote): New field.
6780         (remote_file_put, remote_file_get, remote_file_delete): Use
6781         get_current_remote_target, defer to remote_target method of same
6782         name.
6783         (remote_btrace_reset): Add remote_state paremeter.  Update all
6784         callers.
6785         (remote_async_inferior_event_handler). Pass down 'data'.
6786         (remote_new_objfile): Use get_current_remote_target.
6787         (remote_target::vcont_r_supported): New.
6788         (set_range_stepping): Use get_current_remote_target and
6789         remote_target::vcont_r_supported.
6790         (_initialize_remote): Don't allocate 'remote_state' and
6791         'stop_reply_queue' globals.
6792         * remote.h (struct remote_target): Forward declare.
6793         (getpkt, putpkt, remote_notif_get_pending_events): Add
6794         'remote_target' parameter.
6795
6796 2018-05-22  Pedro Alves  <palves@redhat.com>
6797
6798         * remote.c (vcont_builder): Now a class.  Make all data members
6799         private.
6800         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6801         Declare methods.
6802         (vcont_builder_restart): Rename to ...
6803         (vcont_builder::restart): ... this.
6804         (vcont_builder_flush): Rename to ...
6805         (vcont_builder::flush): ... this.
6806         (vcont_builder_push_action): Rename to ...
6807         (vcont_builder::push_action): ... this.
6808         (remote_target::commit_resume): Adjust.
6809
6810 2018-05-22  Pedro Alves  <palves@redhat.com>
6811
6812         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6813         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6814         (get_fixed_memory_packet_size): New.
6815         (get_memory_packet_size): Use it.
6816         (set_memory_packet_size): Don't override the config size with
6817         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6818         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6819         Don't refer to get_memory_packet_size if not connected to a remote
6820         target.  Show "(default)" if configured size is 0.
6821
6822 2018-05-22  Pedro Alves  <palves@redhat.com>
6823
6824         * remote.c (remote_target::mourn_inferior): Move
6825         discard_pending_stop_replies call here from ...
6826         (_initialize_remote): ... here.
6827
6828 2018-05-22  Pedro Alves  <palves@redhat.com>
6829
6830         * remote.c (compare_section_command): Remove set_general_process
6831         call.
6832
6833 2018-05-22  Pedro Alves  <palves@redhat.com>
6834
6835         * remote.c (struct packet_reg, struct remote_arch_state):
6836         Move higher up in the file.
6837         (remote_state) <m_arch_states>: Store remote_arch_state values
6838         instead of remote_arch_state pointers.
6839         (remote_state::get_remote_arch_state): Adjust.
6840
6841 2018-05-22  Pedro Alves  <palves@redhat.com>
6842
6843         * remote.c: Include <unordered_map>.
6844         (remote_state): Now a class.
6845         (remote_state) <get_remote_arch_state>: Declare method.
6846         <get_remote_arch_state>: New field.
6847         (remote_arch_state) <remote_arch_state>: Declare ctor.
6848         <regs>: Now a unique_ptr.
6849         (remote_gdbarch_data_handle): Delete.
6850         (get_remote_arch_state): Delete.
6851         (remote_state::get_remote_arch_state): New.
6852         (get_remote_state): Adjust to call remote_state's
6853         get_remote_arch_state method.
6854         (init_remote_state): Delete, bits factored out to ...
6855         (remote_arch_state::remote_arch_state): ... this new method.
6856         (get_remote_packet_size, get_memory_packet_size)
6857         (process_g_packet, remote_target::fetch_registers)
6858         (remote_target::prepare_to_store, store_registers_using_G)
6859         (remote_target::store_registers, remote_target::get_trace_status):
6860         Adjust to call remote_state's method.
6861         (_initialize_remote): Remove reference to
6862         remote_gdbarch_data_handle.
6863
6864 2018-05-22  Pedro Alves  <palves@redhat.com>
6865
6866         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6867         pread>: New method declarations.
6868         (remote_target::open_1): Adjust.
6869         (readahead_cache_invalidate): Rename to ...
6870         (readahead_cache::invalidate): ... this, and adjust to be a class
6871         method.
6872         (readahead_cache_invalidate_fd): Rename to ...
6873         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6874         class method.
6875         (remote_hostio_pwrite): Adjust.
6876         (remote_hostio_pread_from_cache): Rename to ...
6877         (readahead_cache::pread): ... this, and adjust to be a class
6878         method.
6879         (remote_hostio_close): Adjust.
6880
6881 2018-05-22  Pedro Alves  <palves@redhat.com>
6882
6883         * remote.c (remote_hostio_close_cleanup): Delete.
6884         (class scoped_remote_fd): New.
6885         (remote_file_put, remote_file_get): Use it.
6886
6887 2018-05-22  Pedro Alves  <palves@redhat.com>
6888
6889         (struct vCont_action_support): Use bool and initialize all fields.
6890         (struct readahead_cache): Initialize all fields.
6891         (remote_state): Use bool and initialize all fields.
6892         (remote_state::remote_state, remote_state::~remote_state): New.
6893         (new_remote_state): Delete.
6894         (_initialize_remote): Use new to allocate remote_state.
6895
6896 2018-05-22  Pedro Alves  <palves@redhat.com>
6897             張俊芝  <zjz@zjz.name>
6898
6899         PR gdb/22973
6900         * c-exp.y: Include "c-support.h".
6901         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6902         of tolower.  Use c_ident_is_alpha to scan names.
6903         * c-lang.c: Include "c-support.h".
6904         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6905         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6906         * c-support.h: New file, with bits factored out from ...
6907         * cp-name-parser.y: ... this file.
6908         Include "c-support.h".
6909         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6910         c-support.h and renamed.
6911         (symbol_end, yylex): Adjust.
6912
6913 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6914
6915         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6916         parameter type to CORE_ADDR.
6917         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6918         parameter type in declaration to CORE_ADDR.
6919         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6920         target_auxv_search to get AT_HWCAP and use the result to get the
6921         target description.
6922         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6923         to CORE_ADDR. Remove the cast of the return value to unsigned
6924         long. Fix error predicate of target_auxv_search.
6925         (ppc_linux_nat_target::read_description): Change the type of the
6926         hwcap variable to CORE_ADDR.
6927
6928 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6929
6930         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6931         if the size of fpscr is larger than 32 bits.
6932
6933 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6934
6935         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6936         (ppc32_linux_vsxregmap): New global.
6937         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6938         regcache_supply_regset, and regcache_collect_regset.
6939         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6940         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6941         (fetch_vsx_register, store_vsx_register): Remove.
6942         (fetch_vsx_registers): Add regno parameter. Get regset using
6943         ppc_linux_vsxregset. Use regset to supply registers.
6944         (store_vsx_registers): Add regno parameter. Get regset using
6945         ppc_linux_vsxregset. Use regset to collect registers.
6946         (fetch_register): Call fetch_vsx_registers instead of
6947         fetch_vsx_register.
6948         (store_register): Call store_vsx_registers instead of
6949         store_vsx_register.
6950         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6951         new regno parameter.
6952         (store_ppc_registers): Call store_vsx_registers with -1 for the
6953         new regno parameter.
6954         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6955         (ppc_collect_vsxregset): Remove.
6956
6957 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6958
6959         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6960         offset fields.
6961         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6962         for vector register offset fields.
6963         (ppc64_fbsd_reg_offsets): Likewise.
6964         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6965         to vector register offset fields.
6966         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6967         to vector register offset fields.
6968         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6969         vector register offset fields.
6970         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6971         initializers for vector register offset fields.
6972         (rs6000_aix64_reg_offsets): Likewise.
6973         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6974         (ppc_supply_vrregset): Remove.
6975         (ppc_collect_vrregset): Remove.
6976         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6977         (ppc_linux_vrregset) : New function.
6978         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6979         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6980         (ppc32_linux_vrregset): Remove.
6981         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6982         and use result instead of ppc32_linux_vrregset.
6983         (ppc32_linux_reg_offsets): Remove initializers for vector register
6984         offset fields.
6985         (ppc64_linux_reg_offsets): Likewise.
6986         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6987         * ppc-linux-nat.c: Include regset.h.
6988         (gdb_vrregset_t): Adjust comment to account for little-endian
6989         mode.
6990         (supply_vrregset, fill_vrregset): Remove.
6991         (fetch_altivec_register, store_altivec_register): Remove.
6992         (fetch_altivec_registers): Add regno parameter. Get regset using
6993         ppc_linux_vrregset. Use regset to supply registers.
6994         (store_altivec_registers): Add regno parameter. Get regset using
6995         ppc_linux_vrregset. Use regset to collect registers.
6996         (fetch_register): Call fetch_altivec_registers instead of
6997         fetch_altivec_register.
6998         (store_register): Call store_altivec_registers instead of
6999         store_altivec_register.
7000         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7001         the new regno parameter.
7002         (store_ppc_registers): Call store_altivec_registers with -1 for
7003         the new regno parameter.
7004
7005 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7006
7007         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7008         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7009         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7010         (gdb_vrregset_t): Change array type size to
7011         PPC_LINUX_SIZEOF_VRREGSET.
7012         (gdb_vsxregset_t): Change array type size to
7013         PPC_LINUX_SIZEOF_VSXREGSET.
7014         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7015         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7016         PPC_LINUX_SIZEOF_VSXREGSET.
7017
7018 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7019
7020         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7021         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7022         nat/ppc-linux.c.
7023         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7024         ppc_linux_target_wordsize with tid.
7025         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7026         wordsize with tid.
7027         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7028         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7029         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7030         tid parameter. Remove static specifier.
7031         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7032         (ppc_linux_target_wordsize): New declaration.
7033
7034 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7035
7036         * arch/ppc-linux-common.c: New file.
7037         * arch/ppc-linux-common.h: New file.
7038         * arch/ppc-linux-tdesc.h: New file.
7039         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7040         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7041         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7042         arch/ppc-linux-tdesc.h.
7043         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7044         arch/ppc-linux-tdesc.h.
7045         (ppc_linux_nat_target::read_description): Remove target
7046         description matching code. Fill a ppc_linux_features struct and
7047         call ppc_linux_match_description with it. Move comment about ISA
7048         2.05 to ppc-linux-common.c.
7049         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7050         arch/ppc-linux-tdesc.h.
7051         (ppc_linux_core_read_description): Remove target description
7052         matching code. Fill a ppc_linux_features struct and call
7053         ppc_linux_match_description with it.
7054         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7055         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7056         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7057         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7058         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7059         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7060         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7061         (tdesc_powerpc_e500l): Remove.
7062
7063 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7064
7065         * ada-lang.c (catch_assert_command): Pass empty string instead
7066         of NULL for excep_string argument.
7067
7068 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7069
7070         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7071         the width of the requested register exceeds the width of the
7072         `ptrace' data type.
7073
7074 2018-05-21  Tom Tromey  <tom@tromey.com>
7075
7076         * printcmd.c (output_command): Remove.
7077         (output_command_const): Rename to output_command.
7078         * valprint.h (output_command): Rename from output_command_const.
7079         * tracepoint.c (trace_dump_actions): Call output_command.
7080
7081 2018-05-21  Tom Tromey  <tom@tromey.com>
7082
7083         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7084         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7085         * ada-lang.h (create_ada_exception_catchpoint): Update.
7086         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7087         std::string.
7088         (create_excep_cond_exprs, ~ada_catchpoint)
7089         (should_stop_exception, print_one_exception)
7090         (print_mention_exception, print_recreate_exception): Update.
7091         (ada_get_next_arg): Remove.
7092         (catch_ada_exception_command_split): Use std::string.  Change type
7093         of "excep_string", "cond_string".
7094         (catch_ada_exception_command): Update.
7095         (create_ada_exception_catchpoint): Change type of excep_string.
7096         (ada_exception_sal): Remove excep_string parameter.
7097         (~ada_catchpoint): Remove.
7098
7099 2018-05-21  Tom Tromey  <tom@tromey.com>
7100
7101         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7102         cleanup.
7103
7104 2018-05-21  Tom Tromey  <tom@tromey.com>
7105
7106         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7107         Return unique_xmalloc_ptr.
7108         (print_it_exception): Update.
7109
7110 2018-05-21  Tom Tromey  <tom@tromey.com>
7111
7112         * tracepoint.c (trace_dump_actions): Use std::string.
7113
7114 2018-05-21  Tom Tromey  <tom@tromey.com>
7115
7116         * symfile.c (reread_symbols): Use std::string for original_name.
7117
7118 2018-05-21  Tom Tromey  <tom@tromey.com>
7119
7120         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7121         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7122         constructor.
7123
7124 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7125
7126         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7127         instance to...
7128         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7129         * objfiles.c (get_objfile_bfd_data): Allocate
7130         objfile_per_bfd_storage with obstack_new when allocating on
7131         obstack.
7132
7133 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7134
7135         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7136         OBSTACK_ZALLOC.
7137         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7138         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7139         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7140         (add_pending): Likewise.
7141         (parse_symbol): Likewise.
7142         (parse_partial_symbols): Likewise.
7143         (psymtab_to_symtab_1): Likewise.
7144         (new_psymtab): Likewise.
7145         (elfmdebug_build_psymtabs): Likewise.
7146         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7147         * objfiles.c (get_objfile_bfd_data): Likewise.
7148         (objfile_register_static_link): Likewise.
7149         * psymtab.c (allocate_psymtab): Likewise.
7150         * stabsread.c (read_member_functions): Likewise.
7151         * xcoffread.c (xcoff_end_psymtab): Likewise.
7152
7153 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7154
7155         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7156         compiler supports std::is_trivially_constructible.
7157         * common/poison.h: Include obstack.h.
7158         (IsMallocable): Define to is_trivially_constructible if the
7159         compiler supports it, define to true_type otherwise.
7160         (xobnew): New.
7161         (XOBNEW): Redefine.
7162         (xobnewvec): New.
7163         (XOBNEWVEC): Redefine.
7164         * gdb_obstack.h (obstack_zalloc): New.
7165         (OBSTACK_ZALLOC): Redefine.
7166         (obstack_calloc): New.
7167         (OBSTACK_CALLOC): Redefine.
7168         (obstack_new): New.
7169         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7170         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7171         gdbarch.c.
7172         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7173         obstack_calloc/obstack_zalloc.
7174         (gdbarch_obstack_zalloc): Remove.
7175         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7176
7177 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7178
7179         * stack.c (backtrace_command_1): Remove useless variable int i.
7180
7181 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7182
7183         * stack.c (print_frame_info): Fix comment.
7184
7185 2018-05-18  Tom Tromey  <tom@tromey.com>
7186
7187         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7188         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7189         (~dwarf2_per_objfile): Update
7190         (dwarf2_get_dwz_file): Use new.
7191         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7192         unique_ptr.
7193
7194 2018-05-18  Tom Tromey  <tom@tromey.com>
7195
7196         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7197         unique_ptr.
7198         * dwarf2read.c (struct dwp_file): Add constructor and
7199         initializers.
7200         (open_and_init_dwp_file): Return a unique_ptr.
7201         (dwarf2_per_objfile, create_dwp_hash_table)
7202         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7203         (lookup_dwo_unit_in_dwp): Update.
7204         (open_and_init_dwp_file, get_dwp_file): Update.
7205
7206 2018-05-18  Tom Tromey  <tom@tromey.com>
7207
7208         * dwarf2read.c (dwarf2_per_objfile): Update.
7209         (struct mapped_index): Add initializers.
7210         (dwarf2_read_index): Use new.
7211         (dw2_symtab_iter_init): Update.
7212         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7213         unique_ptr.
7214
7215 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7216
7217         * dwarf2read.c (mapped_index) <total_size>: Remove.
7218
7219 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7220
7221         * unittests/format_pieces-selftests.c (test_format_specifier):
7222         Add ARI comments.
7223
7224 2018-05-18  Tom Tromey  <tom@tromey.com>
7225
7226         * c-typeprint.c (maybe_print_hole): New function.
7227         (c_print_type_struct_field_offset): Update.
7228         (c_type_print_base_struct_union): Call maybe_print_hole.
7229
7230 2018-05-17  Keith Seitz  <keiths@redhat.com>
7231
7232         * breakpoint.c (build_bpstat_chain): New function, moved from
7233         bpstat_stop_status.
7234         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7235         If no stop chain is passed, call build_bpstat_chain to build it.
7236         * breakpoint.h (build_bpstat_chain): Declare.
7237         (bpstat_stop_status): Move documentation here from breakpoint.c.
7238         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7239         build the stop chain and pass it to skip_inline_frames.
7240         Pass this stop chain to bpstat_stop_status.
7241         * inline-frame.c: Include breakpoint.h.
7242         (stopped_by_user_bp_inline_frame): New function.
7243         (skip_inline_frames): Add parameter `stop_chain'.
7244         Move documention to inline-frame.h.
7245         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7246         whether the frame should be elided.
7247         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7248         Add moved documentation and update for new parameter.
7249
7250 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7251
7252         PR cli/14975
7253         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7254         unittests/format_pieces-selftests.c.
7255         * common/format.h (format_piece) <operator==>: New.
7256         (format_pieces) <operator[]>: Remove.
7257         * common/format.c (format_pieces::format_pieces): Handle \e.
7258         * unittests/format_pieces-selftests.c: New.
7259
7260 2018-05-17  Tom Tromey  <tom@tromey.com>
7261
7262         PR symtab/23010:
7263         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7264         (dw2_instantiate_symtab): Add skip_partial parameter.
7265         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7266         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7267         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7268         (dw2_expand_symtabs_matching_one)
7269         (dw2_find_pc_sect_compunit_symtab)
7270         (dw2_debug_names_lookup_symbol)
7271         (dw2_debug_names_expand_symtabs_for_function): Update.
7272         (init_cutu_and_read_dies): Add skip_partial parameter.
7273         (process_psymtab_comp_unit, build_type_psymtabs_1)
7274         (process_skeletonless_type_unit, load_partial_comp_unit)
7275         (psymtab_to_symtab_1): Update.
7276         (load_full_comp_unit): Add skip_partial parameter.
7277         (process_imported_unit_die, dwarf2_read_addr_index)
7278         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7279         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7280         (read_signatured_type): Update.
7281
7282 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7283
7284         * value.c (release_value): Remove unused variable.
7285         (record_latest_value): Likewise.
7286         (access_value_history): Likewise.
7287         (preserve_values): Likewise.
7288
7289 2018-05-17  Tom Tromey  <tom@tromey.com>
7290
7291         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7292         Initialize.
7293
7294 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7295
7296         PR gdb/22286
7297         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7298         Also handle registers whose width is not a multiple of
7299         PTRACE_TYPE_RET.
7300         (linux_nat_trad_target::store_register): Likewise.
7301
7302 2018-05-16  Tom Tromey  <tom@tromey.com>
7303
7304         * gdbcore.h (core_bfd): Redefine.
7305         * corelow.c (core_target::close): Update.
7306         (core_target_open): Update.
7307         * progspace.h (struct program_space) <cbfd>: Now a
7308         gdb_bfd_ref_ptr.
7309
7310 2018-05-16  Tom Tromey  <tom@tromey.com>
7311
7312         PR cli/19551:
7313         * symfile-add-flags.h (enum symfile_add_flags)
7314         <SYMFILE_NOT_FILENAME>: New constant.
7315         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7316         objfile name from BFD.
7317         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7318         * minidebug.c (find_separate_debug_file_in_section): Put
7319         ".gnu_debugdata" into BFD's file name.
7320
7321 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7322
7323         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7324         Remove.
7325
7326 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7327
7328         PR binutils/21446
7329         * aarch64-tdep.c (aarch64_analyze_prologue,
7330         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7331         Indicate not interested in errors.
7332
7333 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7334
7335         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7336         Supply the MIPS_ZERO_REGNUM register.
7337
7338 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7339
7340         * mips-tdep.c (mask_address_var): Make variable static.
7341
7342 2018-05-14  Tom Tromey  <tom@tromey.com>
7343
7344         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7345
7346 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7347
7348         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7349         FXSAVE_ADDR for the mxcsr register.
7350
7351 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7352
7353         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7354
7355 2018-05-11  Pedro Alves  <palves@redhat.com>
7356
7357         * corelow.c (core_target) <core_target>: No longer inline.
7358         Initialize m_core_gdbarch, m_core_vec and build the section table
7359         here.
7360         <~core_target>: New.
7361         <core_gdbarch, get_core_register_section>: New methods.
7362         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7363         factored out from ...
7364         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7365         (core_ops): Delete.
7366         (sniff_core_bfd): Add gdbarch parameter.
7367         (core_close): Delete, merged into ...
7368         (core_target::close): ... here.  Delete self.
7369         (core_close_cleanup): Delete.
7370         (core_target_open): Allocate a core_target on the heap.  Use a
7371         unique_ptr instead of a cleanup.  Bits moved into the core_target
7372         ctor.  Adjust to use core_target methods instead of globals.
7373         (get_core_register_section): Rename to ...
7374         (core_target::get_core_register_section): ... this and adjust.
7375         (struct get_core_registers_cb_data): New.
7376         (get_core_registers_cb): Use it.  Use bool.
7377         (core_target::fetch_registers, core_target::files_info)
7378         (core_target::xfer_partial, core_target::read_description)
7379         (core_target::pid_to, core_target::thread_name): Adjust to
7380         reference class fields instead of globals.
7381         * target.h (struct target_ops_deleter, target_ops_up): New.
7382
7383 2018-05-11  Pedro Alves  <palves@redhat.com>
7384
7385         * corefile.c (core_file_command): Move to corelow.c.
7386         * corelow.c (the_core_target): Delete.
7387         (core_file_command): Moved from corefile.c.  Check exec_bfd
7388         instead of the_core_target.  Use target_detach instead of calling
7389         into the_core_target directly.
7390         (maybe_say_no_core_file_now): New.
7391         (core_target::detach): Use it.
7392         (_initialize_corelow): Remove references to the_core_target.
7393         * gdbcore.h (the_core_target): Delete.
7394
7395 2018-05-11  Tom Tromey  <tromey@redhat.com>
7396             Pedro Alves  <palves@redhat.com>
7397
7398         * corefile.c (core_bfd): Remove.
7399         * gdbcore.h (core_bfd): Now a macro.
7400         * progspace.h (struct program_space) <cbfd>: New field.
7401
7402 2018-05-11  Tom Tromey  <tom@tromey.com>
7403
7404         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7405         gdb::def_vector.
7406
7407 2018-05-10  Tom Tromey  <tom@tromey.com>
7408
7409         * configure: Rebuild.
7410         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7411
7412 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7413
7414         PR server/23158:
7415         * regformats/regdat.sh: Adjust script, following the addition
7416         of the new expedite_regs parameter to init_target_desc.
7417
7418 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7419     
7420         PR gdb/23127
7421         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7422         set_gdbarch_significant_addr_bit.
7423         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7424         set_gdbarch_significant_addr_bit.
7425         * utils.c (address_significant): Update to sign extend addr.
7426
7427 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7428
7429         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7430         (xtensa_linux_init_abi): Limit tdep->num_regs by
7431         tdep->num_nopriv_regs.
7432         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7433         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7434         not initialized.
7435
7436 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7437
7438         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7439
7440 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7441
7442         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7443         (I387_MXCSR_INIT_VAL): New constant.
7444         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7445         buffer if it was supplied by the inferior.
7446         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7447         (i387_xsave_get_clear_bv): New function.
7448         (i387_supply_xsave): Only read x87 control registers from the
7449         xsave buffer if the feature is enabled, and the state will have
7450         been written, otherwise, provide a suitable default.
7451         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7452         including x87 control registers.  Update control registers if they
7453         have changed from the default value, and mark features as enabled
7454         as required.
7455         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7456
7457 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7458
7459         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7460
7461 2018-05-07  Tom Tromey  <tom@tromey.com>
7462
7463         * configure: Rebuild.
7464         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7465
7466 2018-05-07  Tom Tromey  <tom@tromey.com>
7467
7468         PR tdep/20362:
7469         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7470         bit.  Use correct value for VDIV.
7471
7472 2018-05-04  Tom Tromey  <tom@tromey.com>
7473
7474         * configure: Rebuild.
7475         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7476
7477 2018-05-04  Tom Tromey  <tom@tromey.com>
7478
7479         * linux-record.c (record_linux_system_call) <case
7480         RECORD_SYS_RECVFROM>: Add "break".
7481
7482 2018-05-04  Tom Tromey  <tom@tromey.com>
7483
7484         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7485         Add missing "break".
7486         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7487         Add missing "break".
7488
7489 2018-05-04  Tom Tromey  <tom@tromey.com>
7490
7491         * rs6000-tdep.c (ppc_process_record_op4)
7492         (ppc_process_record_op63): Add fall-through comment.
7493
7494 2018-05-04  Tom Tromey  <tom@tromey.com>
7495
7496         * i386-tdep.c (i386_process_record): Add fall-through comment.
7497
7498 2018-05-04  Tom Tromey  <tom@tromey.com>
7499
7500         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7501         comment.
7502
7503 2018-05-04  Tom Tromey  <tom@tromey.com>
7504
7505         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7506         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7507         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7508         comment.
7509         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7510         comment.
7511         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7512         comment.
7513
7514 2018-05-04  Tom Tromey  <tom@tromey.com>
7515
7516         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7517
7518 2018-05-04  Tom Tromey  <tom@tromey.com>
7519
7520         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7521         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7522         * symfile.c (section_is_mapped): Fix fall-through comment.
7523         * stabsread.c (define_symbol, read_member_functions): Fix
7524         fall-through comment.
7525         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7526         comment.
7527         * remote.c (remote_wait_as): Fix fall-through comment.
7528         * p-exp.y (yylex): Fix fall-through comment.
7529         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7530         comment.
7531         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7532         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7533         * jv-exp.y (yylex): Fix fall-through comment.
7534         * go-exp.y (lex_one_token): Fix fall-through comment.
7535         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7536         fall-through comment.
7537         * f-exp.y (yylex): Fix fall-through comment.
7538         * dwarf2read.c (process_die): Fix fall-through comments.
7539         * dbxread.c (process_one_symbol): Fix fall-through comment.
7540         * d-exp.y (lex_one_token): Fix fall-through comment.
7541         * cp-name-parser.y (yylex): Fix fall-through comment.
7542         * coffread.c (coff_symtab_read): Fix fall-through comment.
7543         * c-exp.y (lex_one_token): Fix fall-through comment.
7544         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7545         comment.
7546         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7547         comment.
7548
7549 2018-05-04  Tom Tromey  <tom@tromey.com>
7550
7551         PR python/22730:
7552         * NEWS: Mention gdb.execute change.
7553         * gdbcmd.h (execute_control_command): Don't declare.
7554         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7555         execute_control_commands, execute_control_commands_to_string.
7556         * cli/cli-script.h (execute_control_commands)
7557         (execute_control_commands_to_string): Declare.
7558         (execute_control_command): Add from_tty parameter.
7559         * cli/cli-script.c (execute_control_commands)
7560         (execute_control_commands_to_string): New functions.
7561         (execute_user_command): Use execute_control_commands.
7562         (execute_control_command_1): Add "from_tty" parameter.  Update.
7563         (execute_control_command): Likewise.
7564
7565 2018-05-04  Tom Tromey  <tom@tromey.com>
7566
7567         PR python/22731:
7568         * NEWS: Mention that breakpoint commands are writable.
7569         * python/py-breakpoint.c (bppy_set_commands): New function.
7570         (breakpoint_object_getset) <"commands">: Use it.
7571
7572 2018-05-04  Tom Tromey  <tom@tromey.com>
7573
7574         * tracepoint.c (actions_command): Update.
7575         * mi/mi-cmd-break.c (mi_command_line_array)
7576         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7577         (mi_read_next_line): Remove.
7578         (mi_cmd_break_commands): Update.
7579         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7580         function_view.
7581         * cli/cli-script.c (get_command_line): Update.
7582         (process_next_line): Use function_view.  Constify.
7583         (recurse_read_control_structure, read_command_lines)
7584         (read_command_lines_1): Change argument types to function_view.
7585         (do_define_command, document_command): Update.
7586         * breakpoint.h (check_tracepoint_command): Don't declare.
7587         * breakpoint.c (check_tracepoint_command): Remove.
7588         (commands_command_1, create_tracepoint_from_upload): Update.
7589
7590 2018-05-04  Tom Tromey  <tom@tromey.com>
7591
7592         PR gdb/11750:
7593         * cli/cli-script.h (enum command_control_type) <define_control>:
7594         New constant.
7595         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7596         (build_command_line, execute_control_command_1)
7597         (process_next_line): Likewise.
7598         (do_define_command): New function, extracted from define_command.
7599         (define_command): Use it.
7600
7601 2018-05-04  Tom Tromey  <tom@tromey.com>
7602
7603         * tracepoint.c (actions_command): Update.
7604         * cli/cli-script.h (read_command_lines): Update.
7605         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7606         (MAX_TMPBUF): Remove define.
7607         (define_command): Use string_printf.
7608         (document_command): Likewise.
7609         * breakpoint.c (commands_command_1): Update.
7610
7611 2018-05-04  Tom Tromey  <tom@tromey.com>
7612
7613         * top.c (execute_command): Update.
7614         * cli/cli-script.h (print_command_lines): Now varargs.
7615         * cli/cli-script.c (print_command_lines): Now varargs.
7616         (execute_control_command_1) <case while_control, case if_control>:
7617         Update.
7618
7619 2018-05-04  Tom Tromey  <tom@tromey.com>
7620
7621         * tracepoint.c (all_tracepoint_actions): Rename from
7622         all_tracepoint_actions_and_cleanup.  Change return type.
7623         (actions_command, encode_actions_1, encode_actions)
7624         (trace_dump_actions, tdump_command): Update.
7625         * remote.c (remote_download_command_source): Update.
7626         * python/python.c (gdbpy_eval_from_control_command)
7627         (python_command, python_interactive_command): Update.
7628         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7629         * guile/guile.c (guile_command)
7630         (gdbscm_eval_from_control_command, guile_command): Update.
7631         * compile/compile.c (compile_code_command)
7632         (compile_print_command, compile_to_object): Update.
7633         * cli/cli-script.h (struct command_lines_deleter): New.
7634         (counted_command_line): New typedef.
7635         (struct command_line): Add constructor, destructor.
7636         <body_list>: Remove.
7637         <body_list_0, body_list_1>: New members.
7638         (command_line_up): Remove typedef.
7639         (read_command_lines, read_command_lines_1, get_command_line):
7640         Update.
7641         (copy_command_lines): Don't declare.
7642         * cli/cli-script.c (build_command_line): Use "new".
7643         (get_command_line): Return counted_command_line.
7644         (print_command_lines, execute_user_command)
7645         (execute_control_command_1, while_command, if_command): Update.
7646         (realloc_body_list): Remove.
7647         (process_next_line, recurse_read_control_structure): Update.
7648         (read_command_lines, read_command_lines_1): Return counted_command_line.
7649         (free_command_lines): Use "delete".
7650         (copy_command_lines): Remove.
7651         (define_command, document_command, show_user_1): Update.
7652         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7653         a counted_command_line.
7654         * breakpoint.h (counted_command_line): Remove typedef.
7655         (breakpoint_set_commands): Update.
7656         * breakpoint.c (check_no_tracepoint_commands)
7657         (validate_commands_for_breakpoint): Update.
7658         (breakpoint_set_commands): Change commands to be a
7659         counted_command_line.
7660         (commands_command_1, update_dprintf_command_list)
7661         (create_tracepoint_from_upload): Update.
7662
7663 2018-05-04  Tom Tromey  <tom@tromey.com>
7664
7665         * cli/cli-decode.h (cmd_list_element): New constructor.
7666         (~cmd_list_element): New destructor.
7667         (struct cmd_list_element): Add initializers.
7668         * cli/cli-decode.c (do_add_cmd): Use "new".
7669         (delete_cmd): Use "delete".
7670
7671 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7672             Pedro Alves <palves@redhat.com>
7673
7674         PR breakpoints/19806 and support for PR external/20207.
7675         * NEWS: Mention Aarch64 watchpoint improvements.
7676         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7677         watchpoints and PR external/20207 watchpoints.
7678         * nat/aarch64-linux-hw-point.c
7679         (kernel_supports_any_contiguous_range): New.
7680         (aarch64_watchpoint_offset): New.
7681         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7682         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7683         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7684         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7685         next_addr_orig_p.  Support PR external/20207 watchpoints.
7686         (aarch64_downgrade_regs): New.
7687         (aarch64_dr_state_insert_one_point): New parameters offset and
7688         addr_orig.
7689         (aarch64_dr_state_remove_one_point): Likewise.
7690         (aarch64_handle_breakpoint): Update caller.
7691         (aarch64_handle_aligned_watchpoint): Likewise.
7692         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7693         aligned_offset.
7694         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7695         aarch64_downgrade_regs.
7696         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7697         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7698         (DR_CONTROL_MASK): ... this.
7699         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7700         (unsigned int aarch64_watchpoint_offset): New prototype.
7701         (aarch64_linux_set_debug_regs): Remove const from state.
7702         * utils.c (align_up, align_down): Move to ...
7703         * common/common-utils.c (align_up, align_down): ... here.
7704         * utils.h (align_up, align_down): Move to ...
7705         * common/common-utils.h (align_up, align_down): ... here.
7706
7707 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7708
7709         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7710         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7711         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7712         Re-implement to match the ABI as summarized in GCC's
7713         gcc/config/sparc/sparc.c.  All callers updated.
7714         (sparc32_store_arguments): Remove assertion.
7715
7716 2018-05-04  Tom Tromey  <tom@tromey.com>
7717
7718         * printcmd.c: Don't include tui.h.
7719         (decode_format): Use skip_spaces.
7720
7721 2018-05-04  Tom Tromey  <tom@tromey.com>
7722
7723         PR gdb/22619:
7724         * printcmd.c (last_count): New global.
7725         (x_command): Use saved count when repeating.
7726
7727 2018-05-04  Tom Tromey  <tom@tromey.com>
7728
7729         * nto-procfs.c (do_closedir_cleanup): Remove.
7730         (procfs_pidlist): Use gdb_dir_up.
7731         * procfs.c (do_closedir_cleanup): Remove.
7732         (proc_update_threads): Use gdb_dir_up.
7733         * common/filestuff.h (struct gdb_dir_deleter): New.
7734         (gdb_dir_up): New typedef.
7735
7736 2018-05-04  Tom Tromey  <tom@tromey.com>
7737
7738         * ada-lang.c (print_mention_exception): Use std::string.
7739
7740 2018-05-04  Tom Tromey  <tom@tromey.com>
7741
7742         * ada-lang.c (create_excep_cond_exprs): Update.
7743         (ada_exception_catchpoint_cond_string): Use std::string.
7744
7745 2018-05-04  Tom Tromey  <tom@tromey.com>
7746
7747         * ada-lang.c (xget_renaming_scope): Return std::string.
7748         (old_renaming_is_invisible): Update.
7749
7750 2018-05-04  Tom Tromey  <tom@tromey.com>
7751
7752         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7753         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7754
7755 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7756
7757         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7758
7759 2018-05-04  Tom Tromey  <tom@tromey.com>
7760
7761         * remote.c (remote_query_supported_append): Change type.
7762         (remote_check_symbols): Update.
7763
7764 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7765
7766         PR gdb/11420
7767         * configure.ac: Prepend libpython.
7768         * python/python-config.py: Likewise.
7769         * configure: Regenerate.
7770
7771 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7772
7773         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7774
7775 2018-05-03  Pedro Alves  <palves@redhat.com>
7776
7777         * s390-linux-nat.c
7778         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7779         override.  Write 'true' instead of '1'.
7780         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7781         declaration.
7782
7783 2018-05-02  Pedro Alves  <palves@redhat.com>
7784
7785         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7786         add_inf_child_target.
7787         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7788         add_inf_child_target.
7789         * aix-thread.c (aix_thread_target_info): New.
7790         (aix_thread_target) <shortname, longname, doc>: Delete.
7791         <info>: New.
7792         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7793         add_inf_child_target.
7794         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7795         add_inf_child_target.
7796         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7797         add_inf_child_target.
7798         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7799         add_inf_child_target.
7800         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7801         add_inf_child_target.
7802         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7803         add_inf_child_target.
7804         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7805         add_inf_child_target.
7806         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7807         add_inf_child_target.
7808         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7809         add_inf_child_target.
7810         * bfd-target.c (target_bfd_target_info): New.
7811         (target_bfd) <shortname, longname, doc>: Delete.
7812         <info>: New.
7813         * bsd-kvm.c (bsd_kvm_target_info): New.
7814         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7815         <info>: New.
7816         (bsd_kvm_target::open): Rename to ...
7817         (bsd_kvm_target_open): ... this.  Adjust.
7818         * bsd-uthread.c (bsd_uthread_target_info): New.
7819         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7820         <info>: New.
7821         * corefile.c (core_file_command): Adjust.
7822         * corelow.c (core_target_info): New.
7823         (core_target) <shortname, longname, doc>: Delete.
7824         <info>: New.
7825         (core_target::open): Rename to ...
7826         (core_target_open): ... this.  Adjust.
7827         * ctf.c (ctf_target_info): New.
7828         (ctf_target) <shortname, longname, doc>: Delete.
7829         <info>: New.
7830         (ctf_target::open): Rename to ...
7831         (ctf_target_open): ... this.
7832         (_initialize_ctf): Adjust.
7833         * exec.c (exec_target_info): New.
7834         (exec_target) <shortname, longname, doc>: Delete.
7835         <info>: New.
7836         (exec_target::open): Rename to ...
7837         (exec_target_open): ... this.
7838         * gdbcore.h (core_target_open): Declare.
7839         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7840         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7841         add_inf_child_target.
7842         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7843         add_inf_child_target.
7844         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7845         add_inf_child_target.
7846         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7847         add_inf_child_target.
7848         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7849         add_inf_child_target.
7850         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7851         add_inf_child_target.
7852         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7853         add_inf_child_target.
7854         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7855         add_inf_child_target.
7856         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7857         add_inf_child_target.
7858         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7859         add_inf_child_target.
7860         * inf-child.c (inf_child_target_info): New.
7861         (inf_child_target::info): New.
7862         (inf_child_open_target): Remove 'target' parameter.  Use
7863         get_native_target instead.
7864         (inf_child_target::open): Delete.
7865         (add_inf_child_target): New.
7866         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7867         Delete.
7868         <info>: New.
7869         (add_inf_child_target): Declare.
7870         (inf_child_open_target): Declare.
7871         * linux-thread-db.c (thread_db_target_info): New.
7872         (thread_db_target) <shortname, longname, doc>: Delete.
7873         <info>: New.
7874         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7875         add_inf_child_target.
7876         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7877         add_inf_child_target.
7878         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7879         add_inf_child_target.
7880         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7881         add_inf_child_target.
7882         * make-target-delegates (print_class): Adjust.
7883         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7884         add_inf_child_target.
7885         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7886         add_inf_child_target.
7887         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7888         add_inf_child_target.
7889         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7890         add_inf_child_target.
7891         * nto-procfs.c (nto_native_target_info): New.
7892         (nto_procfs_target_native) <shortname, longname, doc>:
7893         Delete.
7894         <info>: New.
7895         (nto_procfs_target_info): New.
7896         (nto_procfs_target_procfs) <shortname, longname, doc>:
7897         Delete.
7898         <info>: New.
7899         (init_procfs_targets): Adjust.
7900         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7901         add_inf_child_target.
7902         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7903         add_inf_child_target.
7904         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7905         add_inf_child_target.
7906         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7907         add_inf_child_target.
7908         * ravenscar-thread.c (ravenscar_target_info): New.
7909         (ravenscar_thread_target) <shortname, longname, doc>:
7910         Delete.
7911         <info>: New.
7912         * record-btrace.c (record_btrace_target_info):
7913         (record_btrace_target) <shortname, longname, doc>: Delete.
7914         <info>: New.
7915         (record_btrace_target::open): Rename to ...
7916         (record_btrace_target_open): ... this.  Adjust.
7917         * record-full.c (record_longname, record_doc): New.
7918         (record_full_base_target) <shortname, longname, doc>: Delete.
7919         <info>: New.
7920         (record_full_target_info): New.
7921         (record_full_target): <shortname>: Delete.
7922         <info>: New.
7923         (record_full_core_open_1, record_full_open_1): Update comments.
7924         (record_full_base_target::open): Rename to ...
7925         (record_full_open): ... this.
7926         (cmd_record_full_restore): Update.
7927         (_initialize_record_full): Update.
7928         * remote-sim.c (remote_sim_target_info): New.
7929         (gdbsim_target) <shortname, longname, doc>: Delete.
7930         <info>: New.
7931         (gdbsim_target::open): Rename to ...
7932         (gdbsim_target_open): ... this.
7933         (_initialize_remote_sim): Adjust.
7934         * remote.c (remote_doc): New.
7935         (remote_target_info): New.
7936         (remote_target) <shortname, longname, doc>: Delete.
7937         <info>: New.
7938         (extended_remote_target_info): New.
7939         (extended_remote_target) <shortname, longname, doc>: Delete.
7940         <info>: New.
7941         (remote_target::open_1): Make static.  Adjust.
7942         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7943         * s390-linux-nat.c (_initialize_s390_nat): Use
7944         add_inf_child_target.
7945         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7946         add_inf_child_target.
7947         * sol-thread.c (thread_db_target_info): New.
7948         (sol_thread_target) <shortname, longname, doc>: Delete.
7949         <info>: New.
7950         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7951         add_inf_child_target.
7952         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7953         add_inf_child_target.
7954         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7955         add_inf_child_target.
7956         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7957         add_inf_child_target.
7958         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7959         add_inf_child_target.
7960         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7961         add_inf_child_target.
7962         * spu-linux-nat.c (_initialize_spu_nat): Use
7963         add_inf_child_target.
7964         * spu-multiarch.c (spu_multiarch_target_info): New.
7965         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7966         <info>: New.
7967         * target-delegates.c: Regenerate.
7968         * target.c: Include <unordered_map>.
7969         (target_ops_p): Delete.
7970         (DEF_VEC_P(target_ops_p)): Delete.
7971         (target_factories): New.
7972         (test_target_info): New.
7973         (test_target_ops::info): New.
7974         (open_target): Adjust to use target_factories.
7975         (add_target_with_completer): Rename to ...
7976         (add_target): ... this.  Change prototype.  Register target_info
7977         and open callback in target_factories.  Register target_info in
7978         command context instead of target_ops.
7979         (add_target): Delete old implementation.
7980         (add_deprecated_target_alias): Change prototype.  Adjust.
7981         (the_native_target): New.
7982         (set_native_target, get_native_target): New.
7983         (find_default_run_target): Use the_native_target.
7984         (find_attach_target, find_run_target): Simplify.
7985         (target_ops::open): Delete.
7986         (dummy_target_info): New.
7987         (dummy_target::shortname, dummy_target::longname)
7988         (dummy_target::doc): Delete.
7989         (dummy_target::info): New.
7990         (debug_target::shortname, debug_target::longname)
7991         (debug_target::doc): Delete.
7992         (debug_target::info): New.
7993         * target.h (struct target_info): New.
7994         (target_ops::~target_ops): Add comment.
7995         (target_ops::info): New.
7996         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7997         longer virtual.  Implement in terms of target_info.
7998         (set_native_target, get_native_target): Declare.
7999         (target_open_ftype): New.
8000         (add_target, add_target_with_completer)
8001         (add_deprecated_target_alias): Change prototype.
8002         (test_target) <shortname, longname, doc>: Delete.
8003         <info>: New.
8004         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8005         add_inf_child_target.
8006         * tracefile-tfile.c (tfile_target_info): New.
8007         (tfile_target) <shortname, longname, doc>: Delete.
8008         <info>: New.
8009         (tfile_target::open): Rename to ...
8010         (tfile_target_open): ... this.
8011         (_initialize_tracefile_tfile): Adjust.
8012         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8013         add_inf_child_target.
8014         * windows-nat.c (_initialize_windows_nat): Use
8015         add_inf_child_target.
8016         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8017         add_inf_child_target.
8018
8019 2018-05-02  Pedro Alves  <palves@redhat.com>
8020
8021         * linux-nat.h (linux_nat_target) <low_new_thread,
8022         low_delete_thread, low_new_fork, low_forget_process,
8023         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8024         New virtual methods.
8025         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8026         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8027         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8028         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8029         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8030         Delete.
8031         * linux-fork.c (delete_fork): Adjust to call low method.
8032         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8033         (linux_nat_new_fork, linux_nat_forget_process_hook)
8034         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8035         (linux_nat_status_is_event):
8036         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8037         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8038         to call low method.
8039         (sigtrap_is_event): Rename to ...
8040         (linux_nat_target::low_status_is_event): ... this.
8041         (linux_nat_set_status_is_event): Delete.
8042         (save_stop_reason, linux_nat_wait_1)
8043         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8044         low methods.
8045         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8046         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8047         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8048         (linux_nat_set_prepare_to_resume): Delete.
8049         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8050         low virtual methods.
8051         * amd64-linux-nat.c: Likewise.
8052         * arm-linux-nat.c: Likewise.
8053         * i386-linux-nat.c: Likewise.
8054         * ia64-linux-nat.c: Likewise.
8055         * mips-linux-nat.c: Likewise.
8056         * ppc-linux-nat.c: Likewise.
8057         * s390-linux-nat.c: Likewise.
8058         * sparc64-linux-nat.c: Likewise.
8059         * x86-linux-nat.c: Likewise.
8060         * x86-linux-nat.h: Include "nat/x86-linux.h".
8061         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8062         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8063         Override methods.
8064
8065 2018-05-02  Pedro Alves  <palves@redhat.com>
8066
8067         * target.h (target_ops)
8068         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8069         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8070         stopped_by_watchpoint, have_continuable_watchpoint,
8071         stopped_data_address, watchpoint_addr_within_range,
8072         can_accel_watchpoint_condition, can_run, thread_alive,
8073         has_all_memory, has_memory, has_stack, has_registers,
8074         has_execution, can_async_p, is_async_p, supports_non_stop,
8075         always_non_stop_p, can_execute_reverse, supports_multi_process,
8076         supports_enable_disable_tracepoint,
8077         supports_disable_randomization, supports_string_tracing,
8078         supports_evaluation_of_breakpoint_conditions,
8079         can_run_breakpoint_commands, filesystem_is_local,
8080         can_download_tracepoint, get_trace_state_variable_value,
8081         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8082         record_is_replaying, record_will_replay,
8083         augmented_libraries_svr4_read>: Adjust to return bool.
8084         * aarch64-linux-nat.c: All implementations adjusted.
8085         * aix-thread.c: All implementations adjusted.
8086         * arm-linux-nat.c: All implementations adjusted.
8087         * breakpoint.c: All implementations adjusted.
8088         * bsd-kvm.c: All implementations adjusted.
8089         * bsd-uthread.c: All implementations adjusted.
8090         * corelow.c: All implementations adjusted.
8091         * ctf.c: All implementations adjusted.
8092         * darwin-nat.c: All implementations adjusted.
8093         * darwin-nat.h: All implementations adjusted.
8094         * exec.c: All implementations adjusted.
8095         * fbsd-nat.c: All implementations adjusted.
8096         * fbsd-nat.h: All implementations adjusted.
8097         * gnu-nat.c: All implementations adjusted.
8098         * gnu-nat.h: All implementations adjusted.
8099         * go32-nat.c: All implementations adjusted.
8100         * ia64-linux-nat.c: All implementations adjusted.
8101         * inf-child.c: All implementations adjusted.
8102         * inf-child.h: All implementations adjusted.
8103         * inf-ptrace.c: All implementations adjusted.
8104         * inf-ptrace.h: All implementations adjusted.
8105         * linux-nat.c: All implementations adjusted.
8106         * linux-nat.h: All implementations adjusted.
8107         * mips-linux-nat.c: All implementations adjusted.
8108         * nto-procfs.c: All implementations adjusted.
8109         * ppc-linux-nat.c: All implementations adjusted.
8110         * procfs.c: All implementations adjusted.
8111         * ravenscar-thread.c: All implementations adjusted.
8112         * record-btrace.c: All implementations adjusted.
8113         * record-full.c: All implementations adjusted.
8114         * remote-sim.c: All implementations adjusted.
8115         * remote.c: All implementations adjusted.
8116         * s390-linux-nat.c: All implementations adjusted.
8117         * sol-thread.c: All implementations adjusted.
8118         * spu-multiarch.c: All implementations adjusted.
8119         * target-delegates.c: All implementations adjusted.
8120         * target.c: All implementations adjusted.
8121         * target.h: All implementations adjusted.
8122         * tracefile-tfile.c: All implementations adjusted.
8123         * tracefile.c: All implementations adjusted.
8124         * tracefile.h: All implementations adjusted.
8125         * windows-nat.c: All implementations adjusted.
8126         * x86-linux-nat.h: All implementations adjusted.
8127         * x86-nat.h: All implementations adjusted.
8128
8129 2018-05-02  Pedro Alves  <palves@redhat.com>
8130
8131         * make-target-delegates (scan_target_h): Don't trim lines here.
8132         Replace sequences of tabs and/or whitespace with a single
8133         whitespace.
8134         (top level, parsing methods): Trim each line before processing it
8135         here.
8136
8137 2018-05-02  Pedro Alves  <palves@redhat.com>
8138             John Baldwin  <jhb@freebsd.org>
8139
8140         * target.h (enum strata) <debug_stratum>: New.
8141         (struct target_ops) <all delegation methods>: Replace by C++
8142         virtual methods, and drop "to_" prefix.  All references updated
8143         throughout.
8144         <to_shortname, to_longname, to_doc, to_data,
8145         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8146         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8147         virtual methods.  All references updated throughout.
8148         <can_attach, supports_terminal_ours, can_create_inferior,
8149         get_thread_control_capabilities, attach_no_wait>: New
8150         virtual methods.
8151         <insert_breakpoint, remove_breakpoint>: Now
8152         TARGET_DEFAULT_NORETURN methods.
8153         <info_proc>: Now returns bool.
8154         <to_magic>: Delete.
8155         (OPS_MAGIC): Delete.
8156         (current_target): Delete.  All references replaced by references
8157         to ...
8158         (target_stack): ... this.  New.
8159         (target_shortname, target_longname): Adjust.
8160         (target_can_run): Now a function declaration.
8161         (default_child_has_all_memory, default_child_has_memory)
8162         (default_child_has_stack, default_child_has_registers)
8163         (default_child_has_execution): Remove target_ops parameter.
8164         (complete_target_initialization): Delete.
8165         (memory_breakpoint_target): New template class.
8166         (test_target_ops): Refactor as a C++ class with virtual methods.
8167         * make-target-delegates (NAME_PART): Tighten.
8168         (POINTER_PART, CP_SYMBOL): New.
8169         (SIMPLE_RETURN_PART): Reimplement.
8170         (VEC_RETURN_PART): Expect less.
8171         (RETURN_PART, VIRTUAL_PART): New.
8172         (METHOD): Adjust to C++ virtual methods.
8173         (scan_target_h): Remove reference to C99.
8174         (dname): Output "target_ops::" prefix.
8175         (write_function_header): Adjust to output a C++ class method.
8176         (write_declaration): New.
8177         (write_delegator): Adjust to output a C++ class method.
8178         (tdname): Output "dummy_target::" prefix.
8179         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8180         method.
8181         (tdefault_names, debug_names): Delete.
8182         (return_types, tdefaults, styles, argtypes_array): New.
8183         (top level): All methods are delegators.
8184         (print_class): New.
8185         (top level): Print dummy_target and debug_target classes.
8186         * target-delegates.c: Regenerate.
8187         * target-debug.h (target_debug_print_enum_info_proc_what)
8188         (target_debug_print_thread_control_capabilities)
8189         (target_debug_print_thread_info_p): New.
8190         * target.c (dummy_target): Delete.
8191         (the_dummy_target, the_debug_target): New.
8192         (target_stack): Now extern.
8193         (set_targetdebug): Push/unpush debug target.
8194         (default_child_has_all_memory, default_child_has_memory)
8195         (default_child_has_stack, default_child_has_registers)
8196         (default_child_has_execution): Remove target_ops parameter.
8197         (complete_target_initialization): Delete.
8198         (add_target_with_completer): No longer call
8199         complete_target_initialization.
8200         (target_supports_terminal_ours): Use regular delegation.
8201         (update_current_target): Delete.
8202         (push_target): No longer check magic number.  Don't call
8203         update_current_target.
8204         (unpush_target): Don't call update_current_target.
8205         (target_is_pushed): No longer check magic number.
8206         (target_require_runnable): Skip for all stratums over
8207         process_stratum.
8208         (target_ops::info_proc): New.
8209         (target_info_proc): Use find_target_at and
8210         find_default_run_target.
8211         (target_supports_disable_randomization): Use regular delegation.
8212         (target_get_osdata): Use find_target_at.
8213         (target_ops::open, target_ops::close, target_ops::can_attach)
8214         (target_ops::attach, target_ops::can_create_inferior)
8215         (target_ops::create_inferior, target_ops::can_run)
8216         (target_can_run): New.
8217         (default_fileio_target): Use regular delegation.
8218         (target_ops::fileio_open, target_ops::fileio_pwrite)
8219         (target_ops::fileio_pread, target_ops::fileio_fstat)
8220         (target_ops::fileio_close, target_ops::fileio_unlink)
8221         (target_ops::fileio_readlink): New.
8222         (target_fileio_open_1, target_fileio_unlink)
8223         (target_fileio_readlink): Always call the target method.  Handle
8224         FILEIO_ENOSYS.
8225         (return_zero, return_zero_has_execution): Delete.
8226         (init_dummy_target): Delete.
8227         (dummy_target::dummy_target, dummy_target::shortname)
8228         (dummy_target::longname, dummy_target::doc)
8229         (debug_target::debug_target, debug_target::shortname)
8230         (debug_target::longname, debug_target::doc): New.
8231         (target_supports_delete_record): Use regular delegation.
8232         (setup_target_debug): Delete.
8233         (maintenance_print_target_stack): Skip debug_stratum.
8234         (initialize_targets): Instantiate the_dummy_target and
8235         the_debug_target.
8236         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8237         use target_stack.
8238         (target_auxv_search, fprint_target_auxv): Adjust.
8239         (info_auxv_command): Adjust to use target_stack.
8240         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8241         * exceptions.c (print_flush): Handle a NULL target_stack.
8242         * regcache.c (target_ops_no_register): Refactor as class with
8243         virtual methods.
8244
8245         * exec.c (exec_target): New class.
8246         (exec_ops): Now an exec_target.
8247         (exec_open, exec_close_1, exec_get_section_table)
8248         (exec_xfer_partial, exec_files_info, exec_has_memory)
8249         (exec_make_note_section): Refactor as exec_target methods.
8250         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8251         Delete.
8252         (exec_target::find_memory_regions): New.
8253         (_initialize_exec): Don't call init_exec_ops.
8254         * gdbcore.h (exec_file_clear): Delete.
8255
8256         * corefile.c (core_target): Delete.
8257         (core_file_command): Adjust.
8258         * corelow.c (core_target): New class.
8259         (the_core_target): New.
8260         (core_close): Remove target_ops parameter.
8261         (core_close_cleanup): Adjust.
8262         (core_target::close): New.
8263         (core_open, core_detach, get_core_registers, core_files_info)
8264         (core_xfer_partial, core_thread_alive, core_read_description)
8265         (core_pid_to_str, core_thread_name, core_has_memory)
8266         (core_has_stack, core_has_registers, core_info_proc): Rework as
8267         core_target methods.
8268         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8269         (_initialize_corelow): Initialize the_core_target.
8270         * gdbcore.h (core_target): Delete.
8271         (the_core_target): New.
8272
8273         * ctf.c: (ctf_target): New class.
8274         (ctf_ops): Now a ctf_target.
8275         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8276         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8277         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8278         methods.
8279         (init_ctf_ops): Delete.
8280         (_initialize_ctf): Don't call it.
8281         * tracefile-tfile.c (tfile_target): New class.
8282         (tfile_ops): Now a tfile_target.
8283         (tfile_open, tfile_close, tfile_files_info)
8284         (tfile_get_tracepoint_status, tfile_trace_find)
8285         (tfile_fetch_registers, tfile_xfer_partial)
8286         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8287         Refactor as tfile_target methods.
8288         (tfile_xfer_partial_features): Remove target_ops parameter.
8289         (init_tfile_ops): Delete.
8290         (_initialize_tracefile_tfile): Don't call it.
8291         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8292         (tracefile_has_stack, tracefile_has_registers)
8293         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8294         tracefile_target methods.
8295         (init_tracefile_ops): Delete.
8296         (tracefile_target::tracefile_target): New.
8297         * tracefile.h: Include "target.h".
8298         (tracefile_target): New class.
8299         (init_tracefile_ops): Delete.
8300
8301         * spu-multiarch.c (spu_multiarch_target): New class.
8302         (spu_ops): Now a spu_multiarch_target.
8303         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8304         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8305         (spu_search_memory, spu_mourn_inferior): Refactor as
8306         spu_multiarch_target methods.
8307         (init_spu_ops): Delete.
8308         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8309         complete_target_initialization.
8310
8311         * ravenscar-thread.c (ravenscar_thread_target): New class.
8312         (ravenscar_ops): Now a ravenscar_thread_target.
8313         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8314         (ravenscar_thread_alive, ravenscar_pid_to_str)
8315         (ravenscar_fetch_registers, ravenscar_store_registers)
8316         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8317         (ravenscar_stopped_by_hw_breakpoint)
8318         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8319         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8320         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8321         methods.
8322         (init_ravenscar_thread_ops): Delete.
8323         (_initialize_ravenscar): Remove references to
8324         init_ravenscar_thread_ops and complete_target_initialization.
8325
8326         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8327         (bsd_uthread_target): New class.
8328         (bsd_uthread_ops): Now a bsd_uthread_target.
8329         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8330         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8331         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8332         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8333         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8334         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8335         (bsd_uthread_target): Delete function.
8336         (_initialize_bsd_uthread): Remove reference to
8337         complete_target_initialization.
8338
8339         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8340         (target_bfd): ... this new class.
8341         (target_bfd_xfer_partial, target_bfd_get_section_table)
8342         (target_bfd_close): Refactor as target_bfd methods.
8343         (target_bfd::~target_bfd): New.
8344         (target_bfd_reopen): Adjust.
8345         (target_bfd::close): New.
8346
8347         * record-btrace.c (record_btrace_target): New class.
8348         (record_btrace_ops): Now a record_btrace_target.
8349         (record_btrace_open, record_btrace_stop_recording)
8350         (record_btrace_disconnect, record_btrace_close)
8351         (record_btrace_async, record_btrace_info)
8352         (record_btrace_insn_history, record_btrace_insn_history_range)
8353         (record_btrace_insn_history_from, record_btrace_call_history)
8354         (record_btrace_call_history_range)
8355         (record_btrace_call_history_from, record_btrace_record_method)
8356         (record_btrace_is_replaying, record_btrace_will_replay)
8357         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8358         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8359         (record_btrace_store_registers, record_btrace_prepare_to_store)
8360         (record_btrace_to_get_unwinder)
8361         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8362         (record_btrace_commit_resume, record_btrace_wait)
8363         (record_btrace_stop, record_btrace_can_execute_reverse)
8364         (record_btrace_stopped_by_sw_breakpoint)
8365         (record_btrace_supports_stopped_by_sw_breakpoint)
8366         (record_btrace_stopped_by_hw_breakpoint)
8367         (record_btrace_supports_stopped_by_hw_breakpoint)
8368         (record_btrace_update_thread_list, record_btrace_thread_alive)
8369         (record_btrace_goto_begin, record_btrace_goto_end)
8370         (record_btrace_goto, record_btrace_stop_replaying_all)
8371         (record_btrace_execution_direction)
8372         (record_btrace_prepare_to_generate_core)
8373         (record_btrace_done_generating_core): Refactor as
8374         record_btrace_target methods.
8375         (init_record_btrace_ops): Delete.
8376         (_initialize_record_btrace): Remove reference to
8377         init_record_btrace_ops.
8378         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8379         the execution_direction global.
8380         (record_full_base_target, record_full_target)
8381         (record_full_core_target): New classes.
8382         (record_full_ops): Now a record_full_target.
8383         (record_full_core_ops): Now a record_full_core_target.
8384         (record_full_target::detach, record_full_target::disconnect)
8385         (record_full_core_target::disconnect)
8386         (record_full_target::mourn_inferior, record_full_target::kill):
8387         New.
8388         (record_full_open, record_full_close, record_full_async): Refactor
8389         as methods of the record_full_base_target class.
8390         (record_full_resume, record_full_commit_resume): Refactor
8391         as methods of the record_full_target class.
8392         (record_full_wait, record_full_stopped_by_watchpoint)
8393         (record_full_stopped_data_address)
8394         (record_full_stopped_by_sw_breakpoint)
8395         (record_full_supports_stopped_by_sw_breakpoint)
8396         (record_full_stopped_by_hw_breakpoint)
8397         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8398         methods of the record_full_base_target class.
8399         (record_full_store_registers, record_full_xfer_partial)
8400         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8401         Refactor as methods of the record_full_target class.
8402         (record_full_can_execute_reverse, record_full_get_bookmark)
8403         (record_full_goto_bookmark, record_full_execution_direction)
8404         (record_full_record_method, record_full_info, record_full_delete)
8405         (record_full_is_replaying, record_full_will_replay)
8406         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8407         (record_full_stop_replaying): Refactor as methods of the
8408         record_full_base_target class.
8409         (record_full_core_resume, record_full_core_kill)
8410         (record_full_core_fetch_registers)
8411         (record_full_core_prepare_to_store)
8412         (record_full_core_store_registers, record_full_core_xfer_partial)
8413         (record_full_core_insert_breakpoint)
8414         (record_full_core_remove_breakpoint)
8415         (record_full_core_has_execution): Refactor
8416         as methods of the record_full_core_target class.
8417         (record_full_base_target::supports_delete_record): New.
8418         (init_record_full_ops): Delete.
8419         (init_record_full_core_ops): Delete.
8420         (record_full_save): Refactor as method of the
8421         record_full_base_target class.
8422         (_initialize_record_full): Remove references to
8423         init_record_full_ops and init_record_full_core_ops.
8424
8425         * remote.c (remote_target, extended_remote_target): New classes.
8426         (remote_ops): Now a remote_target.
8427         (extended_remote_ops): Now an extended_remote_target.
8428         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8429         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8430         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8431         (remote_pass_signals, remote_set_syscall_catchpoint)
8432         (remote_program_signals, )
8433         (remote_thread_always_alive): Remove target_ops parameter.
8434         (remote_thread_alive, remote_thread_name)
8435         (remote_update_thread_list, remote_threads_extra_info)
8436         (remote_static_tracepoint_marker_at)
8437         (remote_static_tracepoint_markers_by_strid)
8438         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8439         (remote_open): Refactor as methods of remote_target.
8440         (extended_remote_open, extended_remote_detach)
8441         (extended_remote_attach, extended_remote_post_attach):
8442         (extended_remote_supports_disable_randomization)
8443         (extended_remote_create_inferior): : Refactor as method of
8444         extended_remote_target.
8445         (remote_set_permissions, remote_open_1, remote_detach)
8446         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8447         (remote_resume, remote_commit_resume, remote_stop)
8448         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8449         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8450         (remote_prepare_to_store, remote_store_registers)
8451         (remote_flash_erase, remote_flash_done, remote_files_info)
8452         (remote_kill, remote_mourn, remote_insert_breakpoint)
8453         (remote_remove_breakpoint, remote_insert_watchpoint)
8454         (remote_watchpoint_addr_within_range)
8455         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8456         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8457         (remote_supports_stopped_by_sw_breakpoint)
8458         (remote_stopped_by_hw_breakpoint)
8459         (remote_supports_stopped_by_hw_breakpoint)
8460         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8461         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8462         (remote_verify_memory): Refactor as methods of remote_target.
8463         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8464         parameter.
8465         (remote_xfer_partial, remote_get_memory_xfer_limit)
8466         (remote_search_memory, remote_rcmd, remote_memory_map)
8467         (remote_pid_to_str, remote_get_thread_local_address)
8468         (remote_get_tib_address, remote_read_description): Refactor as
8469         methods of remote_target.
8470         (remote_target::fileio_open, remote_target::fileio_pwrite)
8471         (remote_target::fileio_pread, remote_target::fileio_close): New.
8472         (remote_hostio_readlink, remote_hostio_fstat)
8473         (remote_filesystem_is_local, remote_can_execute_reverse)
8474         (remote_supports_non_stop, remote_supports_disable_randomization)
8475         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8476         (remote_supports_enable_disable_tracepoint)
8477         (remote_supports_string_tracing)
8478         (remote_can_run_breakpoint_commands, remote_trace_init)
8479         (remote_download_tracepoint, remote_can_download_tracepoint)
8480         (remote_download_trace_state_variable, remote_enable_tracepoint)
8481         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8482         (remote_trace_start, remote_get_trace_status)
8483         (remote_get_tracepoint_status, remote_trace_stop)
8484         (remote_trace_find, remote_get_trace_state_variable_value)
8485         (remote_save_trace_data, remote_get_raw_trace_data)
8486         (remote_set_disconnected_tracing, remote_core_of_thread)
8487         (remote_set_circular_trace_buffer, remote_traceframe_info)
8488         (remote_get_min_fast_tracepoint_insn_len)
8489         (remote_set_trace_buffer_size, remote_set_trace_notes)
8490         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8491         (remote_disable_btrace, remote_teardown_btrace)
8492         (remote_read_btrace, remote_btrace_conf)
8493         (remote_augmented_libraries_svr4_read, remote_load)
8494         (remote_pid_to_exec_file, remote_can_do_single_step)
8495         (remote_execution_direction, remote_thread_handle_to_thread_info):
8496         Refactor as methods of remote_target.
8497         (init_remote_ops, init_extended_remote_ops): Delete.
8498         (remote_can_async_p, remote_is_async_p, remote_async)
8499         (remote_thread_events, remote_upload_tracepoints)
8500         (remote_upload_trace_state_variables): Refactor as methods of
8501         remote_target.
8502         (_initialize_remote): Remove references to init_remote_ops and
8503         init_extended_remote_ops.
8504
8505         * remote-sim.c (gdbsim_target): New class.
8506         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8507         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8508         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8509         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8510         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8511         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8512         Refactor as methods of gdbsim_target.
8513         (gdbsim_ops): Now a gdbsim_target.
8514         (init_gdbsim_ops): Delete.
8515         (gdbsim_cntrl_c): Adjust.
8516         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8517
8518         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8519         (the_amd64_linux_nat_target): New.
8520         (amd64_linux_fetch_inferior_registers)
8521         (amd64_linux_store_inferior_registers): Refactor as methods of
8522         amd64_linux_nat_target.
8523         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8524         * i386-linux-nat.c: Don't include "linux-nat.h".
8525         (i386_linux_nat_target): New class.
8526         (the_i386_linux_nat_target): New.
8527         (i386_linux_fetch_inferior_registers)
8528         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8529         as methods of i386_linux_nat_target.
8530         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8531         * inf-child.c (inf_child_ops): Delete.
8532         (inf_child_fetch_inferior_registers)
8533         (inf_child_store_inferior_registers): Delete.
8534         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8535         methods of inf_child_target.
8536         (inf_child_target::supports_terminal_ours)
8537         (inf_child_target::terminal_init)
8538         (inf_child_target::terminal_inferior)
8539         (inf_child_target::terminal_ours_for_output)
8540         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8541         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8542         New.
8543         (inf_child_open, inf_child_disconnect, inf_child_close)
8544         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8545         (inf_child_post_startup_inferior, inf_child_can_run)
8546         (inf_child_pid_to_exec_file): Refactor as methods of
8547         inf_child_target.
8548         (inf_child_follow_fork): Delete.
8549         (inf_child_target::can_create_inferior)
8550         (inf_child_target::can_attach): New.
8551         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8552         (inf_child_target::has_stack, inf_child_target::has_registers)
8553         (inf_child_target::has_execution): New.
8554         (inf_child_fileio_open, inf_child_fileio_pwrite)
8555         (inf_child_fileio_pread, inf_child_fileio_fstat)
8556         (inf_child_fileio_close, inf_child_fileio_unlink)
8557         (inf_child_fileio_readlink, inf_child_use_agent)
8558         (inf_child_can_use_agent): Refactor as methods of
8559         inf_child_target.
8560         (return_zero, inf_child_target): Delete.
8561         (inf_child_target::inf_child_target): New.
8562         * inf-child.h: Include "target.h".
8563         (inf_child_target): Delete function prototype.
8564         (inf_child_target): New class.
8565         (inf_child_open_target, inf_child_mourn_inferior)
8566         (inf_child_maybe_unpush_target): Delete.
8567         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8568         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8569         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8570         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8571         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8572         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8573         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8574         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8575         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8576         methods of inf_ptrace_target.
8577         (inf_ptrace_target): Delete function.
8578         * inf-ptrace.h: Include "inf-child.h".
8579         (inf_ptrace_target): Delete function declaration.
8580         (inf_ptrace_target): New class.
8581         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8582         * linux-nat.c (linux_target): New.
8583         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8584         (linux_nat_target::~linux_nat_target): New.
8585         (linux_child_post_attach, linux_child_post_startup_inferior)
8586         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8587         (linux_child_remove_fork_catchpoint)
8588         (linux_child_insert_vfork_catchpoint)
8589         (linux_child_remove_vfork_catchpoint)
8590         (linux_child_insert_exec_catchpoint)
8591         (linux_child_remove_exec_catchpoint)
8592         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8593         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8594         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8595         (linux_nat_stopped_data_address)
8596         (linux_nat_stopped_by_sw_breakpoint)
8597         (linux_nat_supports_stopped_by_sw_breakpoint)
8598         (linux_nat_stopped_by_hw_breakpoint)
8599         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8600         (linux_nat_kill, linux_nat_mourn_inferior)
8601         (linux_nat_xfer_partial, linux_nat_thread_alive)
8602         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8603         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8604         (linux_child_static_tracepoint_markers_by_strid)
8605         (linux_nat_is_async_p, linux_nat_can_async_p)
8606         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8607         (linux_nat_supports_multi_process)
8608         (linux_nat_supports_disable_randomization, linux_nat_async)
8609         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8610         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8611         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8612         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8613         methods of linux_nat_target.
8614         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8615         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8616         parameter.
8617         (check_stopped_by_watchpoint): Adjust.
8618         (linux_xfer_partial): Delete.
8619         (linux_target_install_ops, linux_target, linux_nat_add_target):
8620         Delete.
8621         (linux_nat_target::linux_nat_target): New.
8622         * linux-nat.h: Include "inf-ptrace.h".
8623         (linux_nat_target): New.
8624         (linux_target, linux_target_install_ops, linux_nat_add_target):
8625         Delete function declarations.
8626         (linux_target): Declare global.
8627         * linux-thread-db.c (thread_db_target): New.
8628         (thread_db_target::thread_db_target): New.
8629         (thread_db_ops): Delete.
8630         (the_thread_db_target): New.
8631         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8632         (thread_db_update_thread_list, thread_db_pid_to_str)
8633         (thread_db_extra_thread_info)
8634         (thread_db_thread_handle_to_thread_info)
8635         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8636         (thread_db_resume): Refactor as methods of thread_db_target.
8637         (init_thread_db_ops): Delete.
8638         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8639         * x86-linux-nat.c: Don't include "linux-nat.h".
8640         (super_post_startup_inferior): Delete.
8641         (x86_linux_nat_target::~x86_linux_nat_target): New.
8642         (x86_linux_child_post_startup_inferior)
8643         (x86_linux_read_description, x86_linux_enable_btrace)
8644         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8645         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8646         methods of x86_linux_nat_target.
8647         (x86_linux_create_target): Delete.  Bits folded ...
8648         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8649         pointer.
8650         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8651         (x86_linux_nat_target): New class.
8652         (x86_linux_create_target): Delete.
8653         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8654         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8655         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8656         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8657         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8658         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8659         make extern.
8660         (x86_use_watchpoints): Delete.
8661         * x86-nat.h: Include "breakpoint.h" and "target.h".
8662         (x86_use_watchpoints): Delete.
8663         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8664         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8665         (x86_insert_watchpoint, x86_remove_watchpoint)
8666         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8667         (x86_stopped_by_hw_breakpoint): New declarations.
8668         (x86_nat_target): New template class.
8669
8670         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8671         (the_ppc_linux_nat_target): New.
8672         (ppc_linux_fetch_inferior_registers)
8673         (ppc_linux_can_use_hw_breakpoint)
8674         (ppc_linux_region_ok_for_hw_watchpoint)
8675         (ppc_linux_ranged_break_num_registers)
8676         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8677         (ppc_linux_insert_mask_watchpoint)
8678         (ppc_linux_remove_mask_watchpoint)
8679         (ppc_linux_can_accel_watchpoint_condition)
8680         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8681         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8682         (ppc_linux_watchpoint_addr_within_range)
8683         (ppc_linux_masked_watch_num_registers)
8684         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8685         (ppc_linux_read_description): Refactor as methods of
8686         ppc_linux_nat_target.
8687         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8688
8689         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8690         (procfs_target): New class.
8691         (the_procfs_target): New.
8692         (procfs_target): Delete function.
8693         (procfs_auxv_parse, procfs_attach, procfs_detach)
8694         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8695         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8696         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8697         (procfs_create_inferior, procfs_update_thread_list)
8698         (procfs_thread_alive, procfs_pid_to_str)
8699         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8700         (procfs_stopped_data_address, procfs_insert_watchpoint)
8701         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8702         (proc_find_memory_regions, procfs_info_proc)
8703         (procfs_make_note_section): Refactor as methods of procfs_target.
8704         (_initialize_procfs): Adjust.
8705         * sol-thread.c (sol_thread_target): New class.
8706         (sol_thread_ops): Now a sol_thread_target.
8707         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8708         (sol_thread_fetch_registers, sol_thread_store_registers)
8709         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8710         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8711         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8712         (init_sol_thread_ops): Delete.
8713         (_initialize_sol_thread): Adjust.  Remove references to
8714         init_sol_thread_ops and complete_target_initialization.
8715
8716         * windows-nat.c (windows_nat_target): New class.
8717         (windows_fetch_inferior_registers)
8718         (windows_store_inferior_registers, windows_resume, windows_wait)
8719         (windows_attach, windows_detach, windows_pid_to_exec_file)
8720         (windows_files_info, windows_create_inferior)
8721         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8722         (windows_close, windows_pid_to_str, windows_xfer_partial)
8723         (windows_get_tib_address, windows_get_ada_task_ptid)
8724         (windows_thread_name, windows_thread_alive): Refactor as
8725         windows_nat_target methods.
8726         (do_initial_windows_stuff): Adjust.
8727         (windows_target): Delete function.
8728         (_initialize_windows_nat): Adjust.
8729
8730         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8731         (darwin_mourn_inferior, darwin_kill_inferior)
8732         (darwin_create_inferior, darwin_attach, darwin_detach)
8733         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8734         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8735         (darwin_supports_multi_process): Refactor as darwin_nat_target
8736         methods.
8737         (darwin_resume_to, darwin_files_info): Delete.
8738         (_initialize_darwin_inferior): Rename to ...
8739         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8740         * darwin-nat.h: Include "inf-child.h".
8741         (darwin_nat_target): New class.
8742         (darwin_complete_target): Delete.
8743         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8744         (darwin_target): New.
8745         (i386_darwin_fetch_inferior_registers)
8746         (i386_darwin_store_inferior_registers): Refactor as methods of
8747         darwin_nat_target.
8748         (darwin_complete_target): Delete, with ...
8749         (_initialize_i386_darwin_nat): ... bits factored out here.
8750
8751         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8752         (the_alpha_linux_nat_target): New.
8753         (alpha_linux_register_u_offset): Refactor as
8754         alpha_linux_nat_target method.
8755         (_initialize_alpha_linux_nat): Adjust.
8756         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8757         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8758         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8759         methods of linux_nat_trad_target.
8760         (linux_trad_target): Delete.
8761         * linux-nat-trad.h (linux_trad_target): Delete function.
8762         (linux_nat_trad_target): New class.
8763         * mips-linux-nat.c (mips_linux_nat_target): New class.
8764         (super_fetch_registers, super_store_registers, super_close):
8765         Delete.
8766         (the_mips_linux_nat_target): New.
8767         (mips64_linux_regsets_fetch_registers)
8768         (mips64_linux_regsets_store_registers)
8769         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8770         (mips_linux_register_u_offset, mips_linux_read_description)
8771         (mips_linux_can_use_hw_breakpoint)
8772         (mips_linux_stopped_by_watchpoint)
8773         (mips_linux_stopped_data_address)
8774         (mips_linux_region_ok_for_hw_watchpoint)
8775         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8776         (mips_linux_close): Refactor as methods of mips_linux_nat.
8777         (_initialize_mips_linux_nat): Adjust to C++ification.
8778
8779         * aix-thread.c (aix_thread_target): New class.
8780         (aix_thread_ops): Now an aix_thread_target.
8781         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8782         (aix_thread_fetch_registers, aix_thread_store_registers)
8783         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8784         (aix_thread_thread_alive, aix_thread_pid_to_str)
8785         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8786         Refactor as methods of aix_thread_target.
8787         (init_aix_thread_ops): Delete.
8788         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8789         and complete_target_initialization.
8790         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8791         (rs6000_nat_target): New class.
8792         (the_rs6000_nat_target): New.
8793         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8794         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8795         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8796         (super_create_inferior): Delete.
8797         (_initialize_rs6000_nat): Adjust to C++ification.
8798
8799         * arm-linux-nat.c (arm_linux_nat_target): New class.
8800         (the_arm_linux_nat_target): New.
8801         (arm_linux_fetch_inferior_registers)
8802         (arm_linux_store_inferior_registers, arm_linux_read_description)
8803         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8804         (arm_linux_remove_hw_breakpoint)
8805         (arm_linux_region_ok_for_hw_watchpoint)
8806         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8807         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8808         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8809         arm_linux_nat_target.
8810         (_initialize_arm_linux_nat): Adjust to C++ification.
8811
8812         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8813         (the_aarch64_linux_nat_target): New.
8814         (aarch64_linux_fetch_inferior_registers)
8815         (aarch64_linux_store_inferior_registers)
8816         (aarch64_linux_child_post_startup_inferior)
8817         (aarch64_linux_read_description)
8818         (aarch64_linux_can_use_hw_breakpoint)
8819         (aarch64_linux_insert_hw_breakpoint)
8820         (aarch64_linux_remove_hw_breakpoint)
8821         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8822         (aarch64_linux_region_ok_for_hw_watchpoint)
8823         (aarch64_linux_stopped_data_address)
8824         (aarch64_linux_stopped_by_watchpoint)
8825         (aarch64_linux_watchpoint_addr_within_range)
8826         (aarch64_linux_can_do_single_step): Refactor as methods of
8827         aarch64_linux_nat_target.
8828         (super_post_startup_inferior): Delete.
8829         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8830
8831         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8832         (the_hppa_linux_nat_target): New.
8833         (hppa_linux_fetch_inferior_registers)
8834         (hppa_linux_store_inferior_registers): Refactor as methods of
8835         hppa_linux_nat_target.
8836         (_initialize_hppa_linux_nat): Adjust to C++ification.
8837
8838         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8839         (the_ia64_linux_nat_target): New.
8840         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8841         (ia64_linux_stopped_data_address)
8842         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8843         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8844         ia64_linux_nat_target methods.
8845         (super_xfer_partial): Delete.
8846         (_initialize_ia64_linux_nat): Adjust to C++ification.
8847
8848         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8849         (the_m32r_linux_nat_target): New.
8850         (m32r_linux_fetch_inferior_registers)
8851         (m32r_linux_store_inferior_registers): Refactor as
8852         m32r_linux_nat_target methods.
8853         (_initialize_m32r_linux_nat): Adjust to C++ification.
8854
8855         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8856         (the_m68k_linux_nat_target): New.
8857         (m68k_linux_fetch_inferior_registers)
8858         (m68k_linux_store_inferior_registers): Refactor as
8859         m68k_linux_nat_target methods.
8860         (_initialize_m68k_linux_nat): Adjust to C++ification.
8861
8862         * s390-linux-nat.c (s390_linux_nat_target): New class.
8863         (the_s390_linux_nat_target): New.
8864         (s390_linux_fetch_inferior_registers)
8865         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8866         (s390_insert_watchpoint, s390_remove_watchpoint)
8867         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8868         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8869         (s390_auxv_parse, s390_read_description): Refactor as methods of
8870         s390_linux_nat_target.
8871         (_initialize_s390_nat): Adjust to C++ification.
8872
8873         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8874         (the_sparc_linux_nat_target): New.
8875         (_initialize_sparc_linux_nat): Adjust to C++ification.
8876         * sparc-nat.c (sparc_fetch_inferior_registers)
8877         (sparc_store_inferior_registers): Remove target_ops parameter.
8878         * sparc-nat.h (sparc_fetch_inferior_registers)
8879         (sparc_store_inferior_registers): Remove target_ops parameter.
8880         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8881         (the_sparc64_linux_nat_target): New.
8882         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8883
8884         * spu-linux-nat.c (spu_linux_nat_target): New class.
8885         (the_spu_linux_nat_target): New.
8886         (spu_child_post_startup_inferior, spu_child_post_attach)
8887         (spu_child_wait, spu_fetch_inferior_registers)
8888         (spu_store_inferior_registers, spu_xfer_partial)
8889         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8890         methods.
8891         (_initialize_spu_nat): Adjust to C++ification.
8892
8893         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8894         (the_tilegx_linux_nat_target): New.
8895         (fetch_inferior_registers, store_inferior_registers):
8896         Refactor as methods.
8897         (_initialize_tile_linux_nat): Adjust to C++ification.
8898
8899         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8900         (the_xtensa_linux_nat_target): New.
8901         (xtensa_linux_fetch_inferior_registers)
8902         (xtensa_linux_store_inferior_registers): Refactor as
8903         xtensa_linux_nat_target methods.
8904         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8905
8906         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8907         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8908         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8909         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8910         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8911         (fbsd_stopped_by_sw_breakpoint)
8912         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8913         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8914         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8915         (fbsd_post_startup_inferior, fbsd_post_attach)
8916         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8917         (fbsd_set_syscall_catchpoint)
8918         (super_xfer_partial, super_resume, super_wait)
8919         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8920         (fbsd_handle_debug_trap): Remove target_ops parameter.
8921         (fbsd_nat_add_target): Delete.
8922         * fbsd-nat.h: Include "inf-ptrace.h".
8923         (fbsd_nat_add_target): Delete.
8924         (USE_SIGTRAP_SIGINFO): Define.
8925         (fbsd_nat_target): New class.
8926
8927         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8928         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8929         (amd64bsd_target): Delete.
8930         * amd64-bsd-nat.h: New file.
8931         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8932         "x86-bsd-nat.h".
8933         (amd64_fbsd_nat_target): New class.
8934         (the_amd64_fbsd_nat_target): New.
8935         (amd64fbsd_read_description): Refactor as method of
8936         amd64_fbsd_nat_target.
8937         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8938         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8939         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8940         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8941         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8942         (i386bsd_target): Delete.
8943         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8944         (i386bsd_fetch_inferior_registers)
8945         (i386bsd_store_inferior_registers): Declare.
8946         (i386_bsd_nat_target): New class.
8947         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8948         (the_i386_fbsd_nat_target): New.
8949         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8950         i386_fbsd_nat_target methods.
8951         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8952         (_initialize_i386fbsd_nat): Adjust to C++ification.
8953         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8954         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8955         (_initialize_x86_bsd_nat): Adjust to C++ification.
8956         * x86-bsd-nat.h: Include "x86-nat.h".
8957         (x86bsd_target): Delete declaration.
8958         (x86bsd_nat_target): New class.
8959
8960         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8961         (the_aarch64_fbsd_nat_target): New.
8962         (aarch64_fbsd_fetch_inferior_registers)
8963         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8964         aarch64_fbsd_nat_target.
8965         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8966         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8967         (the_alpha_bsd_nat_target): New.
8968         (alphabsd_fetch_inferior_registers)
8969         (alphabsd_store_inferior_registers): Refactor as
8970         alpha_bsd_nat_target methods.
8971         (_initialize_alphabsd_nat): Refactor as methods of
8972         alpha_bsd_nat_target.
8973         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8974         (the_amd64_nbsd_nat_target): New.
8975         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8976         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8977         (the_amd64_obsd_nat_target): New.
8978         (_initialize_amd64obsd_nat): Adjust to C++ification.
8979         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8980         (the_arm_fbsd_nat_target): New.
8981         (arm_fbsd_fetch_inferior_registers)
8982         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8983         (_initialize_arm_fbsd_nat): Refactor as methods of
8984         arm_fbsd_nat_target.
8985         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8986         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8987         (the_arm_netbsd_nat_target): New.
8988         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8989         arm_netbsd_nat_target.
8990         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8991         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8992         (the_hppa_nbsd_nat_target): New.
8993         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8994         hppa_nbsd_nat_target methods.
8995         (_initialize_hppanbsd_nat): Adjust to C++ification.
8996         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8997         (the_hppa_obsd_nat_target): New.
8998         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8999         methods of hppa_obsd_nat_target.
9000         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9001         add_target.
9002         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9003         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9004         add_target.
9005         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9006         (_initialize_i386obsd_nat): Use add_target.
9007         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9008         (the_m68k_bsd_nat_target): New.
9009         (m68kbsd_fetch_inferior_registers)
9010         (m68kbsd_store_inferior_registers): Refactor as methods of
9011         m68k_bsd_nat_target.
9012         (_initialize_m68kbsd_nat): Adjust to C++ification.
9013         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9014         (the_mips_fbsd_nat_target): New.
9015         (mips_fbsd_fetch_inferior_registers)
9016         (mips_fbsd_store_inferior_registers): Refactor as methods of
9017         mips_fbsd_nat_target.
9018         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9019         add_target.
9020         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9021         (the_mips_nbsd_nat_target): New.
9022         (mipsnbsd_fetch_inferior_registers)
9023         (mipsnbsd_store_inferior_registers): Refactor as methods of
9024         mips_nbsd_nat_target.
9025         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9026         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9027         (the_mips64_obsd_nat_target): New.
9028         (mips64obsd_fetch_inferior_registers)
9029         (mips64obsd_store_inferior_registers): Refactor as methods of
9030         mips64_obsd_nat_target.
9031         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9032         add_target.
9033         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9034         nbsd_nat_target.
9035         * nbsd-nat.h: Include "inf-ptrace.h".
9036         (nbsd_nat_target): New class.
9037         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9038         (obsd_wait): Refactor as methods of obsd_nat_target.
9039         (obsd_add_target): Delete.
9040         * obsd-nat.h: Include "inf-ptrace.h".
9041         (obsd_nat_target): New class.
9042         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9043         (the_ppc_fbsd_nat_target): New.
9044         (ppcfbsd_fetch_inferior_registers)
9045         (ppcfbsd_store_inferior_registers): Refactor as methods of
9046         ppc_fbsd_nat_target.
9047         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9048         add_target.
9049         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9050         (the_ppc_nbsd_nat_target): New.
9051         (ppcnbsd_fetch_inferior_registers)
9052         (ppcnbsd_store_inferior_registers): Refactor as methods of
9053         ppc_nbsd_nat_target.
9054         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9055         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9056         (the_ppc_obsd_nat_target): New.
9057         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9058         methods of ppc_obsd_nat_target.
9059         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9060         add_target.
9061         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9062         (the_sh_nbsd_nat_target): New.
9063         (shnbsd_fetch_inferior_registers)
9064         (shnbsd_store_inferior_registers): Refactor as methods of
9065         sh_nbsd_nat_target.
9066         (_initialize_shnbsd_nat): Adjust to C++ification.
9067         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9068         (inf_ptrace_xfer_partial): Delete.
9069         (sparc_xfer_partial, sparc_target): Delete.
9070         * sparc-nat.h (sparc_fetch_inferior_registers)
9071         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9072         (sparc_target): Delete function declaration.
9073         (sparc_target): New template class.
9074         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9075         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9076         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9077         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9078         add_target.
9079         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9080         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9081         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9082         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9083         add_target.
9084         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9085         (the_vax_bsd_nat_target): New.
9086         (vaxbsd_fetch_inferior_registers)
9087         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9088         methods.
9089         (_initialize_vaxbsd_nat): Adjust to C++ification.
9090
9091         * bsd-kvm.c (bsd_kvm_target): New class.
9092         (bsd_kvm_ops): Now a bsd_kvm_target.
9093         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9094         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9095         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9096         bsd_kvm_target.
9097         (bsd_kvm_return_one): Delete.
9098         (bsd_kvm_add_target): Adjust to C++ification.
9099
9100         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9101         (nto_procfs_target_procfs): New classes.
9102         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9103         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9104         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9105         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9106         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9107         (procfs_remove_hw_breakpoint, procfs_resume)
9108         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9109         (procfs_kill_inferior, procfs_store_registers)
9110         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9111         as methods of nto_procfs_target.
9112         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9113         (nto_native_ops): Delete.
9114         (procfs_open, procfs_native_open): Delete.
9115         (nto_native_ops): Now an nto_procfs_target_native.
9116         (init_procfs_targets): Adjust to C++ification.
9117         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9118         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9119         Refactor as methods of nto_procfs_target.
9120
9121         * go32-nat.c (go32_nat_target): New class.
9122         (the_go32_nat_target): New.
9123         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9124         (go32_store_registers, go32_xfer_partial, go32_files_info)
9125         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9126         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9127         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9128         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9129         (go32_target): Delete.
9130         (_initialize_go32_nat): Adjust to C++ification.
9131
9132         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9133         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9134         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9135         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9136         gnu_nat_target.
9137         (gnu_target): Delete.
9138         * gnu-nat.h (gnu_target): Delete.
9139         (gnu_nat_target): New class.
9140         * i386-gnu-nat.c (gnu_base_target): New.
9141         (i386_gnu_nat_target): New class.
9142         (the_i386_gnu_nat_target): New.
9143         (_initialize_i386gnu_nat): Adjust to C++ification.
9144
9145 2018-05-02  Pedro Alves  <palves@redhat.com>
9146
9147         * bfd-target.c (target_bfd_xclose): Rename to ...
9148         (target_bfd_close): ... this.
9149         (target_bfd_reopen): Adjust.
9150         * target.c (target_close): Remove references to to_xclose.
9151         * target.h (target_ops::to_xclose): Delete.
9152         (target_ops::to_close): Update comments.
9153
9154 2018-05-02  Pedro Alves  <palves@redhat.com>
9155
9156         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9157         "linux-nat.h".
9158         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9159         * inf-ptrace.c (inf_ptrace_register_u_offset)
9160         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9161         (inf_ptrace_store_register, inf_ptrace_store_registers)
9162         (inf_ptrace_trad_target): Move to ...
9163         * linux-nat-trad.c: ... this new file.
9164         * linux-nat-trad.h: New file.
9165         * linux-nat.c (linux_target_install_ops): Make extern.
9166         (linux_trad_target): Delete.
9167         * linux-nat.h (linux_trad_target): Delete declaration.
9168         (linux_target_install_ops): Declare.
9169         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9170         "linux-nat.h".
9171
9172 2018-05-02  Pedro Alves  <palves@redhat.com>
9173
9174         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9175         procfs_target/add_target here.
9176         * procfs.c (procfs_target): Make static.
9177         (_initialize_procfs): Call add_target here.
9178         * procfs.h (struct target_ops): Remove forward declaration.
9179         (procfs_target): Remove declaration.
9180         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9181
9182 2018-05-02  Pedro Alves  <palves@redhat.com>
9183
9184         * procfs.c (procfs_stopped_by_watchpoint)
9185         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9186         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9187         Forward declare.
9188         (procfs_use_watchpoints): Delete, move contents...
9189         (procfs_target): ... here.
9190         * procfs.h (procfs_use_watchpoints): Delete declaration.
9191         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9192         procfs_use_watchpoints.
9193         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9194         procfs_use_watchpoints.
9195
9196 2018-05-02  Tom Tromey  <tom@tromey.com>
9197
9198         PR python/20084:
9199         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9200         and var_zuinteger_unlimited.
9201         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9202         and PARAM_ZUINTEGER_UNLIMITED.
9203         (set_parameter_value): Handle var_zuinteger and
9204         var_zuinteger_unlimited.
9205         (add_setshow_generic): Likewise.
9206         (parmpy_init): Likewise.
9207
9208 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9209
9210         PR rust/23124
9211         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9212         pointer is not null before dereferencing it.
9213
9214 2018-04-30  Tom Tromey  <tom@tromey.com>
9215
9216         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9217         is_mi_like_p.
9218
9219 2018-04-30  Tom Tromey  <tom@tromey.com>
9220
9221         * breakpoint.c (mention): Remove use of is_mi_like_p.
9222         (print_mention_ranged_breakpoint): Likewise.
9223         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9224         of is_mi_like_p.
9225
9226 2018-04-30  Tom Tromey  <tom@tromey.com>
9227
9228         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9229
9230 2018-04-30  Tom Tromey  <tom@tromey.com>
9231
9232         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9233         (info_spu_event_command): Remove some uses of is_mi_like_p.
9234
9235 2018-04-30  Tom Tromey  <tom@tromey.com>
9236
9237         * python/py-framefilter.c (py_print_single_arg)
9238         (enumerate_locals, py_print_args, py_print_frame): Remove some
9239         uses of is_mi_like_p.
9240
9241 2018-04-30  Tom Tromey  <tom@tromey.com>
9242
9243         * ui-out.c: Update.
9244         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9245         * ui-out.h (ui_out::is_mi_like_p): Now const.
9246         (ui_out::do_is_mi_like_p): Now const.
9247         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9248
9249 2018-04-30  Tom Tromey  <tom@tromey.com>
9250
9251         * varobj.c (varobj_set_visualizer): Use new_reference.
9252         * python/python.c (gdbpy_decode_line): Use new_reference.
9253         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9254         new_reference.
9255
9256 2018-04-30  Tom Tromey  <tom@tromey.com>
9257
9258         * varobj.c (install_new_value): Use new_reference.
9259         * value.h (value_incref): Return void.  Swap intro comment with
9260         value_decref.
9261         * value.c (set_value_parent): Use new_reference.
9262         (value_incref): Return void.  Update intro comment.
9263         (release_value): Use new_reference.
9264         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9265
9266 2018-04-30  Tom Tromey  <tom@tromey.com>
9267
9268         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9269         * gdb_bfd.h (new_bfd_ref): Remove.
9270         (gdb_bfd_open): Update comment.
9271         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9272         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9273         (gdb_bfd_fdopenr): Use new_reference.
9274         * exec.c (exec_file_attach): Use new_reference.
9275
9276 2018-04-30  Tom Tromey  <tom@tromey.com>
9277
9278         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9279         method.
9280
9281 2018-04-30  Tom Tromey  <tom@tromey.com>
9282
9283         * jit.c (jit_read_code_entry): Use type_align.
9284         * i386-tdep.c (i386_gdbarch_init): Don't call
9285         set_gdbarch_long_long_align_bit.
9286         * gdbarch.sh: Remove long_long_align_bit.
9287         * gdbarch.c, gdbarch.h: Rebuild.
9288         * arc-tdep.c (arc_type_align): New function.
9289         (arc_gdbarch_init): Use arc_type_align.  Don't call
9290         set_gdbarch_long_long_align_bit.
9291
9292 2018-04-30  Tom Tromey  <tom@tromey.com>
9293
9294         * rust-lang.c (rust_type_alignment): Remove.
9295         (rust_composite_type): Use type_align.
9296
9297 2018-04-30  Tom Tromey  <tom@tromey.com>
9298
9299         * NEWS: Mention Type.align.
9300         * python/py-type.c (typy_get_alignof): New function.
9301         (type_object_getset): Add "alignof".
9302
9303 2018-04-30  Tom Tromey  <tom@tromey.com>
9304
9305         PR exp/17095:
9306         * NEWS: Update.
9307         * std-operator.def (UNOP_ALIGNOF): New operator.
9308         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9309         New.
9310         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9311         * c-lang.c (c_op_print_tab): Add alignof.
9312         * c-exp.y (ALIGNOF): New token.
9313         (exp): Add "ALIGNOF" production.
9314         (ident_tokens): Add _Alignof and alignof.
9315
9316 2018-04-30  Tom Tromey  <tom@tromey.com>
9317
9318         * i386-tdep.c (i386_type_align): New function.
9319         (i386_gdbarch_init): Update.
9320         * gdbarch.sh (type_align): New method.
9321         * gdbarch.c, gdbarch.h: Rebuild.
9322         * arch-utils.h (default_type_align): Declare.
9323         * arch-utils.c (default_type_align): New function.
9324         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9325         (struct type) <align_log2>: New field.
9326         <instance_flags>: Now a bitfield.
9327         (TYPE_RAW_ALIGN): New macro.
9328         (type_align, type_raw_align, set_type_align): Declare.
9329         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9330         functions.
9331         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9332         (get_alignment, maybe_set_alignment): New functions.
9333         (read_structure_type, read_enumeration_type, read_array_type)
9334         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9335         (read_subrange_type, read_base_type): Set type alignment.
9336
9337 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9338
9339         * dwarf2read.c (read_index_from_section): Use bool.
9340
9341 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9342
9343         PR gdb/22950
9344         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9345         with #ifdef.
9346
9347 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9348
9349         PR build/22873
9350         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9351         last step, and do it atomically.
9352
9353 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9354
9355         * compile/compile-c-types.c (convert_int, convert_float):
9356         Update for C FE v1.
9357
9358 2018-04-27  Tom Tromey  <tom@tromey.com>
9359
9360         PR rust/22545:
9361         * rust-lang.c (rust_inclusive_range_type_p): New function.
9362         (rust_range): Handle inclusive ranges.
9363         (rust_compute_range): Likewise.
9364         * rust-exp.y (struct rust_op) <inclusive>: New field.
9365         (DOTDOTEQ): New constant.
9366         (range_expr): Add "..=" productions.
9367         (operator_tokens): Add "..=" token.
9368         (ast_range): Add "inclusive" parameter.
9369         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9370         ranges.
9371         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9372         bounds values.
9373         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9374         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9375         Update comments.
9376         * expprint.c (print_subexp_standard): Handle new bounds values.
9377         (dump_subexp_body_standard): Likewise.
9378
9379 2018-04-27  Tom Tromey  <tom@tromey.com>
9380
9381         * configure: Rebuild.
9382         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9383         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9384         "OVERRIDE".
9385         (class symbol_needs_eval_context): Likewise.
9386         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9387         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9388         "virtual".
9389         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9390         "override".
9391         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9392         * aarch64-tdep.c (instruction_reader::read): Use "override".
9393         (instruction_reader_test::read): Likewise.
9394         * arm-tdep.c (instruction_reader::read): Use "override".
9395         (instruction_reader_thumb::read): Likewise.
9396
9397 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9398
9399         PR remote/9665
9400         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9401         instead of remote_send.
9402         (remote_send): Remove.
9403
9404 2018-04-26  Pedro Alves  <palves@redhat.com>
9405
9406         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9407         find_function_start_sal instead of find_pc_line.
9408
9409 2018-04-26  Pedro Alves  <palves@redhat.com>
9410
9411         * breakpoint.c (set_breakpoint_location_function): Handle
9412         mst_data_gnu_ifunc.
9413         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9414         * elfread.c (elf_symtab_read): Give data symbols with
9415         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9416         (elf_rel_plt_read): Update comment.
9417         * linespec.c (convert_linespec_to_sals): Handle
9418         mst_data_gnu_ifunc.
9419         (minsym_found): Handle mst_data_gnu_ifunc.
9420         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9421         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9422         * parse.c (find_minsym_type_and_address): Handle
9423         mst_data_gnu_ifunc.
9424         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9425         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9426         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9427         comment.
9428         <mst_data_gnu_ifunc>: New enumerator.
9429
9430 2018-04-26  Pedro Alves  <palves@redhat.com>
9431
9432         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9433         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9434         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9435         Handle it.
9436         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9437         (lookup_minimal_symbol_by_pc): Adjust.
9438         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9439         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9440         * minsyms.h (lookup_msym_prefer): New enum.
9441         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9442         parameter by a lookup_msym_prefer parameter.
9443
9444 2018-04-26  Pedro Alves  <palves@redhat.com>
9445
9446         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9447         ends in "@plt" instead of looking at the symbol's section.
9448
9449 2018-04-26  Pedro Alves  <palves@redhat.com>
9450
9451         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9452         all references.
9453         (find_pc_partial_function_gnu_ifunc): Rename to ...
9454         (find_pc_partial_function): ... this, and remove references to
9455         'is_gnu_ifunc_p'.
9456         (find_pc_partial_function): Delete old implementation.
9457         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9458
9459 2018-04-26  Pedro Alves  <palves@redhat.com>
9460
9461         * linespec.c (struct bound_minimal_symbol_search_key): New.
9462         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9463         skip first line if we found a GNU ifunc minimal symbol by name.
9464         (compare_msymbols): Change parameters to work with a destructured
9465         lhs minsym.
9466         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9467         functions.
9468
9469 2018-04-26  Pedro Alves  <palves@redhat.com>
9470
9471         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9472         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9473         address/name.
9474         (add_location_to_breakpoint): Store the minsym and the objfile in
9475         the breakpoint location.
9476         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9477         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9478         Record the minsym in the sal.
9479         * symtab.h (symtab_and_line) <msymbol>: New field.
9480
9481 2018-04-26  Pedro Alves  <palves@redhat.com>
9482
9483         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9484         unless we actually resolved the ifunc.
9485
9486 2018-04-26  Pedro Alves  <palves@redhat.com>
9487
9488         * c-exp.y (variable production): Prefer ifunc minsyms over
9489         regular function symbols.
9490         * symtab.c (find_gnu_ifunc): New function.
9491         * minsyms.h (lookup_msym_prefer): New enum.
9492         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9493         parameter by a lookup_msym_prefer parameter.
9494         * symtab.h (find_gnu_ifunc): New declaration.
9495
9496 2018-04-26  Pedro Alves  <palves@redhat.com>
9497
9498         * blockframe.c (find_gnu_ifunc_target_type): New function.
9499         (find_function_type): New.
9500         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9501         return a value with a memory address.
9502         (eval_call): For calls to GNU ifunc functions, try to find the
9503         type of the target function from the type that the resolver
9504         returns.
9505         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9506         symbols.
9507         * infcall.c (find_function_return_type): Delete.
9508         (find_function_addr): Add 'function_type' parameter.  For calls to
9509         GNU ifunc functions, try to find the type of the target function
9510         from the type that the resolver returns, and return it via
9511         FUNCTION_TYPE.
9512         (call_function_by_hand_dummy): Adjust to use the function type
9513         returned by find_function_addr.
9514         (find_function_addr): Add 'function_type' parameter and move
9515         description here.
9516         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9517         declarations.
9518
9519 2018-04-26  Pedro Alves  <palves@redhat.com>
9520
9521         * c-exp.y (variable production): Skip finding an alias for ifunc
9522         symbols.
9523
9524 2018-04-26  Pedro Alves  <palves@redhat.com>
9525
9526         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9527
9528 2018-04-25  Pedro Alves  <palves@redhat.com>
9529
9530         * infcmd.c (kill_command): Print the pid as string, not the whole
9531         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9532         message.
9533         * remote.c (remote_detach_1): Print the pid as string, not the
9534         whole thread's ptid.
9535
9536 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9537             Sergio Durigan Junior  <sergiodj@redhat.com>
9538             Pedro Alves  <palves@redhat.com>
9539
9540         * infcmd.c (kill_command): Print message when inferior has
9541         been killed.
9542         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9543         '1'.
9544         (add_inferior): Improve message printed when
9545         'print_inferior_events' is on.
9546         (exit_inferior): Remove message printed when
9547         'print_inferior_events' is on.
9548         (detach_inferior): Improve message printed when
9549         'print_inferior_events' is on.
9550         (initialize_inferiors): Use 'add_inferior_silent' to set
9551         'current_inferior_'.
9552         * inferior.h (print_inferior_events): Declare here as
9553         'extern'.
9554         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9555         '[Detaching...]' messages when 'print_inferior_events' is on.
9556         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9557         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9558         'Detaching after fork from child...', replace it by '... from
9559         parent...'.
9560         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9561         prefix/suffix when printing 'Detaching...' messages.  Print
9562         them when 'print_inferior_events' is on.
9563         * remote.c (remote_detach_1): Print message when detaching
9564         from inferior and '!is_fork_parent'.
9565
9566 2018-04-24  Tom Tromey  <tom@tromey.com>
9567
9568         * cli-out.h: Reindent.
9569
9570 2018-04-24  Tom Tromey  <tom@tromey.com>
9571
9572         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9573         (cli_ui_out::do_field_string): Use fputs_filtered.
9574         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9575
9576 2018-04-23  Tom Tromey  <tom@tromey.com>
9577
9578         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9579         gdb::unique_xmalloc_ptr.
9580
9581 2018-04-23  Tom Tromey  <tom@tromey.com>
9582
9583         * configure: Rebuild.
9584
9585 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9586
9587         PR gdb/23095
9588         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9589         prepare_for_testing.  Set normal_bp to r_debug_state if target
9590         is bsd.
9591
9592 2018-04-21  Pedro Alves  <palves@redhat.com>
9593             Rajendra SY  <rajendra.sy@gmail.com>
9594
9595         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9596         * remote.c (extended_remote_attach): In all-stop mode, mark the
9597         thread as executing.
9598
9599 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9600
9601         * thread.c (thread_apply_all_command): Fix comment.
9602         (thread_command): Fix comment.
9603
9604 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9605
9606         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9607         parameter.
9608         * features/aarch64-core.c (create_feature_aarch64_core):
9609         Regenerate.
9610         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9611         Likewise.
9612         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9613         Likewise.
9614         * features/i386/32bit-avx512.c
9615         (create_feature_i386_32bit_avx512): Likewise.
9616         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9617         Likewise.
9618         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9619         Likewise.
9620         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9621         Likewise.
9622         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9623         Likewise.
9624         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9625         Likewise.
9626         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9627         Likewise.
9628         * features/i386/64bit-avx512.c
9629         (create_feature_i386_64bit_avx512): Likewise.
9630         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9631         Likewise.
9632         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9633         Likewise.
9634         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9635         Likewise.
9636         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9637         Likewise.
9638         * features/i386/64bit-segments.c
9639         (create_feature_i386_64bit_segments): Likewise.
9640         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9641         Likewise.
9642         * features/i386/x32-core.c
9643         (create_feature_i386_x32_core): Likewise.
9644         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9645         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9646         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9647         * target-descriptions.c: In generated code, don't pass xml
9648         filename.
9649
9650 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9651
9652         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9653         (print_xml_feature::visit_post): Likewise.
9654         (print_xml_feature::visit): Likewise.
9655         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9656         (print_xml_feature): Add new class.
9657         * regformats/regdat.sh: Null xmltarget on feature targets.
9658         * target-descriptions.c (struct target_desc): Add xmltarget.
9659         (maintenance_check_tdesc_xml_convert): Add unittest function.
9660         (tdesc_get_features_xml): Add function to get xml.
9661         (maintenance_check_xml_descriptions): Test xml generation.
9662         * xml-tdesc.c (string_read_description_xml): Add function.
9663         * xml-tdesc.h (string_read_description_xml): Add declaration.
9664
9665 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9666
9667         * features/Makefile: Add feature marker to targets with new style
9668         target descriptions.
9669         * regformats/aarch64.dat: Regenerate.
9670         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9671         * regformats/i386/amd64-avx-linux.dat: Likewise.
9672         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9673         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9674         * regformats/i386/amd64-linux.dat: Likewise.
9675         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9676         * regformats/i386/amd64.dat: Likewise.
9677         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9678         * regformats/i386/i386-avx-linux.dat: Likewise.
9679         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9680         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9681         * regformats/i386/i386-linux.dat: Likewise.
9682         * regformats/i386/i386-mmx-linux.dat: Likewise.
9683         * regformats/i386/i386-mpx-linux.dat: Likewise.
9684         * regformats/i386/i386.dat: Likewise.
9685         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9686         * regformats/i386/x32-avx-linux.dat: Likewise.
9687         * regformats/i386/x32-linux.dat: Likewise.
9688         * regformats/tic6x-c62x-linux.dat: Likewise.
9689         * regformats/tic6x-c64x-linux.dat: Likewise.
9690         * regformats/tic6x-c64xp-linux.dat: Likewise.
9691         * regformats/regdat.sh: Parse feature marker.
9692
9693 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9694
9695         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9696         (tdesc_osabi_name): Likewise.
9697         * target-descriptions.c (tdesc_architecture_name): Add new
9698         function.
9699         (tdesc_osabi_name): Likewise.
9700
9701 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9702
9703         * common/tdesc.c (tdesc_predefined_type): Move to here.
9704         (tdesc_named_type): Likewise.
9705         (tdesc_create_vector): Likewise.
9706         (tdesc_create_struct): Likewise.
9707         (tdesc_set_struct_size): Likewise.
9708         (tdesc_create_union): Likewise.
9709         (tdesc_create_flags): Likewise.
9710         (tdesc_create_enum): Likewise.
9711         (tdesc_add_field): Likewise.
9712         (tdesc_add_typed_bitfield): Likewise.
9713         (tdesc_add_bitfield): Likewise.
9714         (tdesc_add_flag): Likewise.
9715         (tdesc_add_enum_value): Likewise.
9716         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9717         (struct tdesc_type_vector): Likewise.
9718         (struct tdesc_type_field): Likewise.
9719         (struct tdesc_type_with_fields): Likewise.
9720         (tdesc_create_enum): Add declaration.
9721         (tdesc_add_typed_bitfield): Likewise.
9722         (tdesc_add_enum_value): Likewise.
9723         * target-descriptions.c (tdesc_type_field): Move from here.
9724         (tdesc_type_builtin): Likewise.
9725         (tdesc_type_vector): Likewise.
9726         (tdesc_type_with_fields): Likewise.
9727         (tdesc_predefined_types): Likewise.
9728         (tdesc_named_type): Likewise.
9729         (tdesc_create_vector): Likewise.
9730         (tdesc_create_struct): Likewise.
9731         (tdesc_set_struct_size): Likewise.
9732         (tdesc_create_union): Likewise.
9733         (tdesc_create_flags): Likewise.
9734         (tdesc_create_enum): Likewise.
9735         (tdesc_add_field): Likewise.
9736         (tdesc_add_typed_bitfield): Likewise.
9737         (tdesc_add_bitfield): Likewise.
9738         (tdesc_add_flag): Likewise.
9739         (tdesc_add_enum_value): Likewise.
9740         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9741         (tdesc_add_typed_bitfield): Likewise.
9742         (tdesc_add_enum_value): Likewise.
9743
9744 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9745
9746         * common/tdesc.c (tdesc_feature::accept): Move to here.
9747         (tdesc_feature::operator==): Likewise.
9748         (tdesc_create_reg): Likewise.
9749         * common/tdesc.h (tdesc_type_kind): Likewise.
9750         (struct tdesc_type): Likewise.
9751         (struct tdesc_feature): Likewise.
9752         * regformats/regdat.sh: Create a feature.
9753         * target-descriptions.c (tdesc_type_kind): Move from here.
9754         (tdesc_type): Likewise.
9755         (tdesc_type_up): Likewise.
9756         (tdesc_feature): Likewise.
9757         (tdesc_create_reg): Likewise.
9758
9759 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9760
9761         * Makefile.in: Add arch/tdesc.c
9762         * common/tdesc.c: New file.
9763         * common/tdesc.h (tdesc_element_visitor): Move to here.
9764         (tdesc_element): Likewise.
9765         (tdesc_reg): Likewise.
9766         (tdesc_reg_up): Likewise.
9767         * regformats/regdef.h (reg): Add offset to constructors.
9768         * target-descriptions.c (tdesc_element_visitor): Move from here.
9769         (tdesc_element): Likewise.
9770         (tdesc_reg): Likewise.
9771         (tdesc_reg_up): Likewise.
9772
9773 2018-04-17  Tom Tromey  <tom@tromey.com>
9774
9775         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9776         discriminant field.
9777
9778 2018-04-17  Tom Tromey  <tom@tromey.com>
9779
9780         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9781
9782 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9783
9784         * symtab.c (print_symbol_info): Skip printing filename and line
9785         number when `last' is NULL.
9786         (symtab_symbol_info): Use empty string instead of NULL for first
9787         invocation of print_symbol_info.
9788         (rbreak_command): Pass NULL to `last' parameter of
9789         print_symbol_info.
9790
9791 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9792
9793         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9794         instead of nullptr.
9795
9796 2018-04-16  Pedro Alves  <palves@redhat.com>
9797
9798         * MAINTAINERS (sh): Remove.
9799         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9800         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9801         (ALLDEPFILES): Remove sh64-tdep.c.
9802         * NEWS: Mentions that support for SH-5/SH64 is removed.
9803         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9804         (sh*-*-openbsd*): Ditto.
9805         (sh64-*-elf*): Remove.
9806         (sh*): Remove.
9807         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9808         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9809         * sh-tdep.c: No longer include "sh64-tdep.h".
9810         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9811         * sh64-tdep.c, sh64-tdep.h: Remove files.
9812
9813 2018-04-16  Pedro Alves  <palves@redhat.com>
9814
9815         * MAINTAINERS: Remove m88k.
9816         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9817         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9818         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9819         * NEWS: Mention that support for m88k was removed.
9820         * configure.host (m88*-*-*): Remove support.
9821         * configure.nat (m88k-*-*): Remove support.
9822         * configure.tgt (m88*-*-openbsd*): Remove.
9823         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9824
9825 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9826
9827         * configure.tgt (x86_tobjs): New variable.
9828         (amd64_tobjs, i386_tobjs): Use it.
9829
9830 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9831
9832         * symtab.c (print_symbol_info): Precede the symbol definition by
9833         the line number when available.
9834         * NEWS: Advertise this enhancement.
9835
9836 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9837
9838         * NEWS (New options): announce set/show record btrace cpu.
9839         * btrace.c: Include record-btrace.h.
9840         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9841         the vendor is unknown.
9842         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9843         Maybe overwrite the btrace configuration's cpu.
9844         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9845         (btrace_fetch): Add cpu parameter.  Update callers.
9846         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9847         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9848         errata workarounds if the vendor is unknown.
9849         * python/py-record-btrace.c: Include record-btrace.h.
9850         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9851         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9852         * record-btrace.c (record_btrace_cpu_state_kind): New.
9853         (record_btrace_cpu): New.
9854         (set_record_btrace_cpu_cmdlist): New.
9855         (record_btrace_get_cpu): New.
9856         (require_btrace_thread, record_btrace_info)
9857         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9858         (cmd_set_record_btrace_cpu_none): New.
9859         (cmd_set_record_btrace_cpu_auto): New.
9860         (cmd_set_record_btrace_cpu): New.
9861         (cmd_show_record_btrace_cpu): New.
9862         (_initialize_record_btrace): Initialize set/show record btrace cpu
9863         commands.
9864         * record-btrace.h (record_btrace_get_cpu): New.
9865
9866 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9867
9868         * record.c (set_record_command): Fix typo in message.
9869
9870 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9871
9872         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9873
9874 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9875
9876         * infrun.c (process_event_stop_test): Call
9877         gdbarch_in_indirect_branch_thunk.
9878         * gdbarch.sh (in_indirect_branch_thunk): New.
9879         * gdbarch.c: Regenerated.
9880         * gdbarch.h: Regenerated.
9881         * x86-tdep.h: New.
9882         * x86-tdep.c: New.
9883         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9884         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9885         (ALLDEPFILES): Add x86-tdep.c.
9886         * arch-utils.h (default_in_indirect_branch_thunk): New.
9887         * arch-utils.c (default_in_indirect_branch_thunk): New.
9888         * i386-tdep: Include x86-tdep.h.
9889         (i386_in_indirect_branch_thunk): New.
9890         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9891         function.
9892         * amd64-tdep: Include x86-tdep.h.
9893         (amd64_in_indirect_branch_thunk): New.
9894         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9895
9896 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9897
9898         PR gdb/23053
9899         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9900         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9901         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9902         regression.
9903
9904 2018-04-12  Tom Tromey  <tom@tromey.com>
9905
9906         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9907         (rust_evaluate_subexp): Likewise.
9908
9909 2018-04-12  Pedro Alves  <palves@redhat.com>
9910
9911         * procfs.c (procfs_detach): Make forward declaration's prototype
9912         match definition's protototype.
9913         (proc_get_LDT_entry): Remove stale do_cleanups call.
9914
9915 2018-04-12  Pedro Alves  <palves@redhat.com>
9916
9917         * target.h (target_ops::to_has_exited): Delete.
9918         (target_has_exited): Delete.
9919         * target-delegates.c: Regenerate.
9920
9921 2018-04-11  Pedro Alves  <palves@redhat.com>
9922
9923         * target.c (fileio_fh_t::t): Add comment.
9924         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9925         (target_fileio_close): Handle a NULL target.
9926         (invalidate_fileio_fh): New.
9927         (target_close): Call it.
9928         * remote.c (remote_hostio_send_command): No longer check whether
9929         remote_desc is open.
9930
9931 2018-04-11  Pedro Alves  <palves@redhat.com>
9932
9933         * target.c (fileio_fh_t): Make it a named struct instead of a
9934         typedef.
9935         (fileio_fh_t::is_closed): New method.
9936         (DEF_VEC_O (fileio_fh_t)): Remove.
9937         (fileio_fhandles): Now a std::vector.
9938         (is_closed_fileio_fh): Delete.
9939         (acquire_fileio_fd): Adjust.  Rename parameters.
9940         (release_fileio_fd): Adjust.
9941         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9942         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9943         (target_fileio_close): Adjust.
9944
9945 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9946
9947         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9948         index.
9949
9950 2018-04-10  Pedro Alves  <palves@redhat.com>
9951
9952         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9953         (scoped_finish_thread_state): New class.
9954         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9955         cleanup.
9956         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9957         (fetch_inferior_event, normal_stop): Likewise.
9958         * thread.c (finish_thread_state_cleanup): Delete.
9959
9960 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9961             Pedro Alves  <palves@redhat.com>
9962
9963         * value.c: Include "selftest.h" and "common/array-view.h".
9964         (struct range) <operator ==>: New.
9965         (test_ranges_contain): New.
9966         (check_ranges_vector): New.
9967         (test_insert_into_bit_range_vector): New.
9968         (_initialize_values): Register selftests.
9969         * common/array-view.h (operator==, operator!=): New.
9970
9971 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9972
9973         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9974         an iterator.
9975         * inline-frame.c: Include <algorithm>.
9976         (struct inline_state): Add constructor.
9977         (inline_state_s): Remove.
9978         (DEF_VEC_O(inline_state_s)): Remove.
9979         (inline_states): Change type to std::vector.
9980         (find_inline_frame_state): Adjust to std::vector.
9981         (allocate_inline_frame_state): Remove.
9982         (clear_inline_frame_state): Adjust to std::vector.
9983         (skip_inline_frames): Adjust to std::vector.
9984
9985 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9986
9987         * tracepoint.h (struct trace_state_variable): Add constructor.
9988         <name>: Change type to std::string.
9989         * tracepoint.c (tsv_s): Remove.
9990         (DEF_VEC_O(tsv_s)): Remove.
9991         (tvariables): Change to std::vector.
9992         (create_trace_state_variable): Adjust to std::vector.
9993         (find_trace_state_variable): Likewise.
9994         (find_trace_state_variable_by_number): Likewise.
9995         (delete_trace_state_variable): Likewise.
9996         (trace_variable_command): Adjust to std::string.
9997         (delete_trace_variable_command): Likewise.
9998         (tvariables_info_1): Adjust to std::vector.
9999         (save_trace_state_variables): Likewise.
10000         (start_tracing): Likewise.
10001         (merge_uploaded_trace_state_variables): Adjust to std::vector
10002         and std::string.
10003         * target.h (struct target_ops)
10004         <to_download_trace_state_variable>: Pass reference to
10005         trace_state_variable.
10006         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10007         * target-delegates.c: Re-generate.
10008         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10009         (mi_tsv_deleted): Likewise.
10010         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10011         * remote.c (remote_download_trace_state_variable): Change
10012         pointer to reference and adjust.
10013         * make-target-delegates (parse_argtypes): Handle references.
10014         (write_function_header): Likewise.
10015         (munge_type): Likewise.
10016
10017 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10018
10019         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10020         string_view-selftests.c.
10021         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10022         testsuite.
10023         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10024         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10025         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10026         * unittests/basic_string_view/element_access/char/1.cc:
10027         Likewise.
10028         * unittests/basic_string_view/element_access/char/empty.cc:
10029         Likewise.
10030         * unittests/basic_string_view/element_access/char/front_back.cc:
10031         Likewise.
10032         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10033         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10034         Likewise.
10035         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10036         Likewise.
10037         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10038         Likewise.
10039         * unittests/basic_string_view/operations/compare/char/1.cc:
10040         Likewise.
10041         * unittests/basic_string_view/operations/compare/char/13650.cc:
10042         Likewise.
10043         * unittests/basic_string_view/operations/copy/char/1.cc:
10044         Likewise.
10045         * unittests/basic_string_view/operations/data/char/1.cc:
10046         Likewise.
10047         * unittests/basic_string_view/operations/find/char/1.cc:
10048         Likewise.
10049         * unittests/basic_string_view/operations/find/char/2.cc:
10050         Likewise.
10051         * unittests/basic_string_view/operations/find/char/3.cc:
10052         Likewise.
10053         * unittests/basic_string_view/operations/find/char/4.cc:
10054         Likewise.
10055         * unittests/basic_string_view/operations/rfind/char/1.cc:
10056         Likewise.
10057         * unittests/basic_string_view/operations/rfind/char/2.cc:
10058         Likewise.
10059         * unittests/basic_string_view/operations/rfind/char/3.cc:
10060         Likewise.
10061         * unittests/basic_string_view/operations/substr/char/1.cc:
10062         Likewise.
10063         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10064         * unittests/string_view-selftests.c: New file.
10065
10066 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10067
10068         * unittests/basic_string_view/capacity/1.cc: New file.
10069         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10070         * unittests/basic_string_view/cons/char/1.cc: New file.
10071         * unittests/basic_string_view/cons/char/2.cc: New file.
10072         * unittests/basic_string_view/cons/char/3.cc: New file.
10073         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10074         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10075         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10076         * unittests/basic_string_view/element_access/char/1.cc: New file.
10077         * unittests/basic_string_view/element_access/char/2.cc: New file.
10078         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10079         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10080         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10081         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10082         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10083         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10084         * unittests/basic_string_view/include.cc: New file.
10085         * unittests/basic_string_view/inserters/char/1.cc: New file.
10086         * unittests/basic_string_view/inserters/char/2.cc: New file.
10087         * unittests/basic_string_view/inserters/char/3.cc: New file.
10088         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10089         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10090         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10091         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10092         * unittests/basic_string_view/literals/types.cc: New file.
10093         * unittests/basic_string_view/literals/values.cc: New file.
10094         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10095         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10096         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10097         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10098         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10099         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10100         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10101         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10102         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10103         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10104         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10105         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10106         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10107         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10108         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10109         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10110         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10111         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10112         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10113         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10114         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10115         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10116         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10117         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10118         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10119         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10120         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10121         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10122         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10123         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10124         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10125         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10126         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10127         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10128         * unittests/basic_string_view/operators/char/2.cc: New file.
10129         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10130         * unittests/basic_string_view/range_access/char/1.cc: New file.
10131         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10132         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10133         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10134         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10135         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10136         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10137         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10138         * unittests/basic_string_view/typedefs.cc: New file.
10139         * unittests/basic_string_view/types/1.cc: New file.
10140
10141 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10142
10143         * common/gdb_string_view.h: Remove libstdc++ implementation
10144         details, adjust to gdb reality.
10145         * common/gdb_string_view.tcc: Likewise.
10146         * cli/cli-script.c (struct string_view): Remove.
10147         (user_args) <m_args>: Change element type to gdb::string_view.
10148         (user_args::insert_args): Adjust.
10149
10150 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10151
10152         * common/gdb_string_view.h: New file.
10153         * common/gdb_string_view.tcc: New file.
10154
10155 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10156
10157         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10158         * configure: Re-generate.
10159
10160 2018-04-09  Pedro Alves  <palves@redhat.com>
10161
10162         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10163         (set_target_gdbarch): Call
10164         gdb::observers::architecture_changed.notify instead of
10165         observer_notify_architecture_changed.
10166
10167 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10168
10169         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10170         (do_restore_current_traceframe_cleanup): Remove.
10171         (restore_current_traceframe_cleanup_dtor): Remove.
10172         (make_cleanup_restore_current_traceframe): Remove.
10173         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10174         New.
10175         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10176         * infrun.c (fetch_inferior_event): Use
10177         scoped_restore_current_traceframe.
10178
10179 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10180
10181         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10182         Remove.
10183         <n_allocated_type_units>: Remove.
10184         <all_type_units>: Change to std::vector.
10185         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10186         to std::vector change.
10187         (dwarf2_per_objfile::get_cutu): Likewise.
10188         (dwarf2_per_objfile::get_tu): Likewise.
10189         (create_signatured_type_table_from_index): Likewise.
10190         (create_signatured_type_table_from_debug_names): Likewise.
10191         (dw2_symtab_iter_next): Likewise.
10192         (dw2_print_stats): Likewise.
10193         (dw2_expand_all_symtabs): Likewise.
10194         (dw2_expand_marked_cus): Likewise.
10195         (dw2_debug_names_iterator::next): Likewise.
10196         (dwarf2_initialize_objfile): Likewise.
10197         (add_signatured_type_cu_to_table): Likewise.
10198         (create_all_type_units): Likewise.
10199         (add_type_unit): Likewise.
10200         (struct tu_abbrev_offset): Add constructor.
10201         (build_type_psymtabs_1): Adjust to std::vector change.
10202         (print_tu_stats): Likewise.
10203         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10204         (write_debug_names): Likewise.
10205
10206 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10207
10208         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10209         Make an std::vector.
10210         <n_comp_units>: Remove.
10211         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10212         to std::vector change.
10213         (dwarf2_per_objfile::get_cutu): Likewise.
10214         (dwarf2_per_objfile::get_cu): Likewise.
10215         (create_cus_from_index): Likewise.
10216         (create_addrmap_from_index): Likewise.
10217         (create_addrmap_from_aranges): Likewise.
10218         (dwarf2_read_index): Likewise.
10219         (dw2_find_last_source_symtab): Likewise.
10220         (dw2_map_symtabs_matching_filename): Likewise.
10221         (dw2_symtab_iter_next): Likewise.
10222         (dw2_print_stats): Likewise.
10223         (dw2_expand_all_symtabs): Likewise.
10224         (dw2_expand_symtabs_with_fullname): Likewise.
10225         (dw2_expand_marked_cus): Likewise.
10226         (dw2_map_symbol_filenames): Likewise.
10227         (create_cus_from_debug_names): Likewise.
10228         (dwarf2_read_debug_names): Likewise.
10229         (dw2_debug_names_iterator::next): Likewise.
10230         (dwarf2_initialize_objfile): Likewise.
10231         (set_partial_user): Likewise.
10232         (dwarf2_build_psymtabs_hard): Likewise.
10233         (read_comp_units_from_section): Remove arguments, adjust to
10234         std::vector change.
10235         (create_all_comp_units): Adjust to std::vector and
10236         read_comp_units_from_section changes.
10237         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10238         change.
10239         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10240         (psyms_seen_size): Likewise.
10241         (write_gdbindex): Likewise.
10242         (write_debug_names): Likewise.
10243
10244 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10245
10246         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10247         with dwarf2_per_objfile.
10248         (create_cus_from_index): Likewise.
10249         (create_signatured_type_table_from_index): Likewise.
10250         (dwarf2_read_index): Likewise.
10251         (dwarf2_initialize_objfile): Likewise.
10252         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10253         per_cu rather than get_dwarf2_per_objfile.
10254
10255 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10256
10257         * dwarf2read.h (struct signatured_type): Forward declare.
10258         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10259         New methods.
10260         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10261         (dw2_get_cutu): ...this.
10262         (dwarf2_per_objfile::get_cu): Rename from...
10263         (dw2_get_cu): ...this.
10264         (dwarf2_per_objfile::get_tu): New.
10265         (create_addrmap_from_index): Adjust.
10266         (create_addrmap_from_aranges): Adjust.
10267         (dw2_find_last_source_symtab): Adjust.
10268         (dw2_map_symtabs_matching_filename): Adjust.
10269         (dw2_symtab_iter_next): Adjust.
10270         (dw2_print_stats): Adjust.
10271         (dw2_expand_all_symtabs): Adjust.
10272         (dw2_expand_symtabs_with_fullname): Adjust.
10273         (dw2_expand_marked_cus): Adjust.
10274         (dw_expand_symtabs_matching_file_matcher): Adjust.
10275         (dw2_map_symbol_filenames): Adjust.
10276         (dw2_debug_names_iterator::next): Adjust.
10277         (dwarf2_initialize_objfile): Adjust.
10278         (set_partial_user): Adjust.
10279         (dwarf2_build_psymtabs_hard): Adjust.
10280
10281 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10282
10283         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10284         Remove unused variables.
10285         (dw2_map_symtabs_matching_filename): Likewise.
10286         (dwarf2_record_block_ranges): Likewise.
10287         (dwarf2_read_addr_index): Likewise.
10288         (follow_die_offset): Likewise.
10289
10290 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10291
10292         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10293         to symbol_file_add_main.
10294
10295 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10296
10297         PR mi/22299
10298         * mi/mi-console.c (do_fputc_async_safe): New.
10299         (mi_console_file::write_async_safe): New.
10300         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10301         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10302         New.
10303         * ui-file.c (ui_file::putstrn): Adjust call to
10304         fputstrn_unfiltered.
10305         * utils.c (printchar): Replace do_fputs and do_fprintf
10306         parameters by do_fputc.
10307         (fputstr_filtered): Adjust call to printchar.
10308         (fputstr_unfiltered): Likewise.
10309         (fputstrn_filtered): Likewise.
10310         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10311         printchar.
10312         * utils.h (do_fputc_ftype): New typedef.
10313         (fputstrn_unfiltered): Add do_fputc parameter.
10314
10315 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10316
10317         * regformats/i386/i386-avx.dat: Remove.
10318
10319 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10320
10321         PR gdb/22979
10322         * amd64-tdep.c (amd64_none_init_abi): New function.
10323         (amd64_x32_none_init_abi): New function.
10324         (_initialize_amd64_tdep): Register handlers for x86-64 and
10325         x64_32 with GDB_OSABI_NONE.
10326         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10327         GDB_OSABI_NONE osabi.
10328
10329 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10330
10331         PR gdb/22980
10332         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10333         GDB_OSABI_NONE.
10334         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10335         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10336
10337 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10338
10339         * common/byte-vector.h (char_vector): New type.
10340         * target.h (target_read_alloc): Return
10341         gdb::optional<byte_vector>.
10342         (target_read_stralloc): Return gdb::optional<char_vector>.
10343         (target_get_osdata): Return gdb::optional<char_vector>.
10344         * target.c (target_read_alloc_1): Templatize.  Replacement
10345         manual memory management with vector.
10346         (target_read_alloc): Change return type, adjust.
10347         (target_read_stralloc): Change return type, adjust.
10348         (target_get_osdata): Change return type, adjust.
10349         * auxv.c (struct auxv_info) <length>: Remove.
10350         <data>: Change type to gdb::optional<byte_vector>.
10351         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10352         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10353         (target_auxv_search): Adjust.
10354         (fprint_target_auxv): Adjust.
10355         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10356         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10357         (linux_make_corefile_notes): Adjust.
10358         * osdata.c (get_osdata): Adjust.
10359         * remote.c (remote_get_threads_with_qxfer): Adjust.
10360         (remote_memory_map): Adjust.
10361         (remote_traceframe_info): Adjust.
10362         (btrace_read_config): Adjust.
10363         (remote_read_btrace): Adjust.
10364         (remote_pid_to_exec_file): Adjust.
10365         * solib-aix.c (solib_aix_get_library_list): Adjust.
10366         * solib-dsbt.c (decode_loadmap): Don't free buf.
10367         (dsbt_get_initial_loadmaps): Adjust.
10368         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10369         * solib-target.c (solib_target_current_sos): Adjust.
10370         * tracepoint.c (sdata_make_value): Adjust.
10371         * xml-support.c (xinclude_start_include): Adjust.
10372         (xml_fetch_content_from_file): Adjust.
10373         * xml-support.h (xml_fetch_another): Change return type.
10374         (xml_fetch_content_from_file): Change return type.
10375         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10376         * xml-tdesc.c (file_read_description_xml): Adjust.
10377         (fetch_available_features_from_target): Change return type.
10378         (target_fetch_description_xml): Adjust.
10379         (target_read_description_xml): Adjust.
10380
10381 2018-04-06  Tom Tromey  <tom@tromey.com>
10382
10383         * value.c (~value): Update.
10384         (struct value) <contents>: Now unique_xmalloc_ptr.
10385         (value_contents_bits_eq, allocate_value_contents)
10386         (value_contents_raw, value_contents_all_raw)
10387         (value_contents_for_printing, value_contents_for_printing_const)
10388         (set_value_enclosing_type): Update.
10389
10390 2018-04-06  Tom Tromey  <tom@tromey.com>
10391
10392         * value.c (range_s): Remove typedef, VEC.
10393         (struct range): Add operator<.
10394         (range_lessthan): Remove.
10395         (ranges_contain): Change type.
10396         (~value): Update.
10397         (struct value) <unavailable, optimized_out>: Now std::vector.
10398         (value_entirely_available)
10399         (value_entirely_covered_by_range_vector)
10400         (value_entirely_unavailable, value_entirely_optimized_out):
10401         Update.
10402         (insert_into_bit_range_vector): Change argument type.
10403         (find_first_range_overlap): Likewise.
10404         (struct ranges_and_idx, value_contents_bits_eq)
10405         (require_not_optimized_out, require_available): Update.
10406         (ranges_copy_adjusted): Change argument types.
10407         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10408
10409 2018-04-06  Tom Tromey  <tom@tromey.com>
10410
10411         * value.c (~value): Update.
10412         (struct value) <parent>: Now a value_ref_ptr.
10413         (value_parent, set_value_parent, value_address, value_copy):
10414         Update.
10415
10416 2018-04-06  Tom Tromey  <tom@tromey.com>
10417
10418         * value.c (struct value): Add constructor, destructor, and member
10419         initializers.
10420         (allocate_value_lazy, value_decref): Update.
10421
10422 2018-04-06  Tom Tromey  <tom@tromey.com>
10423
10424         * value.c (struct value) <released, next>: Remove.
10425         (all_values): Now a std::vector.
10426         (allocate_value_lazy): Update.
10427         (value_next): Remove.
10428         (value_mark, value_free_to_mark, release_value)
10429         (value_release_to_mark): Update.
10430
10431 2018-04-06  Tom Tromey  <tom@tromey.com>
10432
10433         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10434         (free_value_chain): Remove.
10435         * value.c (free_value_chain): Remove.
10436         (value_release_to_mark): Return a std::vector.
10437         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10438         std::vector.
10439         (check_condition): Update.
10440         * eval.c (fetch_subexp_value): Change "val_chain" to a
10441         std::vector.
10442         * breakpoint.c (update_watchpoint): Update.
10443         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10444
10445 2018-04-06  Tom Tromey  <tom@tromey.com>
10446
10447         * value.h (free_all_values): Remove.
10448         * value.c (free_all_values): Remove.
10449
10450 2018-04-06  Tom Tromey  <tom@tromey.com>
10451
10452         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10453         (value_history_chain, value_history_count): Remove.
10454         (value_history): New global.
10455         (record_latest_value, access_value_history, show_values)
10456         (preserve_values): Update.
10457
10458 2018-04-06  Tom Tromey  <tom@tromey.com>
10459
10460         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10461         * varobj.c (varobj_set_display_format, varobj_set_value)
10462         (install_default_visualizer, construct_visualizer)
10463         (install_new_value, ~varobj, varobj_get_value_type)
10464         (my_value_of_variable, varobj_editable_p): Update.
10465         * c-varobj.c (c_describe_child, c_value_of_variable)
10466         (cplus_number_of_children, cplus_describe_child): Update.
10467         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10468         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10469         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10470
10471 2018-04-06  Tom Tromey  <tom@tromey.com>
10472
10473         * printcmd.c (last_examine_address): Change type to
10474         value_ref_ptr.
10475         (do_examine, x_command): Update.
10476
10477 2018-04-06  Tom Tromey  <tom@tromey.com>
10478
10479         * value.c (release_value): Update.
10480         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10481         (struct bpstats) <val>: Now a value_ref_ptr.
10482         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10483         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10484         (~watchpoint, print_it_watchpoint, watch_command_1)
10485         (invalidate_bp_value_on_memory_change): Update.
10486
10487 2018-04-06  Tom Tromey  <tom@tromey.com>
10488
10489         * varobj.c (varobj_clear_saved_item)
10490         (update_dynamic_varobj_children, install_new_value, ~varobj):
10491         Update.
10492         * value.h (value_incref): Move declaration earlier.
10493         (value_decref): Rename from value_free.
10494         (struct value_ref_policy): New.
10495         (value_ref_ptr): New typedef.
10496         (struct value_deleter): Remove.
10497         (gdb_value_up): Remove typedef.
10498         (release_value): Change return type.
10499         (release_value_or_incref): Remove.
10500         * value.c (set_value_parent): Update.
10501         (value_incref): Change return type.
10502         (value_decref): Rename from value_free.
10503         (value_free_to_mark, free_all_values, free_value_chain): Update.
10504         (release_value): Return value_ref_ptr.
10505         (release_value_or_incref): Remove.
10506         (record_latest_value, set_internalvar, clear_internalvar):
10507         Update.
10508         * stack.c (info_frame_command): Don't call value_free.
10509         * python/py-value.c (valpy_dealloc, valpy_new)
10510         (value_to_value_object): Update.
10511         * printcmd.c (do_examine): Update.
10512         * opencl-lang.c (lval_func_free_closure): Update.
10513         * mi/mi-main.c (register_changed_p): Don't call value_free.
10514         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10515         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10516         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10517         value_free.
10518         * guile/scm-value.c (vlscm_free_value_smob)
10519         (vlscm_scm_from_value): Update.
10520         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10521         (frame_unwind_register_unsigned, get_frame_register_bytes)
10522         (put_frame_register_bytes): Don't call value_free.
10523         * findvar.c (address_from_register): Don't call value_free.
10524         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10525         * dwarf2loc.c (entry_data_value_free_closure)
10526         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10527         (dwarf2_evaluate_loc_desc_full): Update.
10528         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10529         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10530         (~watchpoint, watch_command_1)
10531         (invalidate_bp_value_on_memory_change): Update.
10532         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10533
10534 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10535
10536         PR gdb/23022
10537         * warning.m4: Add -Wno-error=deprecated-register.
10538         * configure: Re-generate.
10539
10540 2018-04-05  Tom Tromey  <tom@tromey.com>
10541
10542         * linespec.h: Remove include of "vec.h".
10543
10544 2018-04-05  Tom Tromey  <tom@tromey.com>
10545
10546         * linespec.c (typep): Remove typedef.
10547         (find_methods, find_superclass_methods): Take a std::vector.
10548         (find_method): Use std::vector.
10549
10550 2018-04-05  Tom Tromey  <tom@tromey.com>
10551
10552         * utils.c (compare_strings): Remove.
10553         * utils.h (compare_strings): Remove.
10554         * objc-lang.h (find_imps): Update.
10555         * objc-lang.c (find_methods): Take a std::vector.
10556         (uniquify_strings, find_imps): Likewise.
10557         * linespec.c (find_methods): Take a std::vector.
10558         (decode_objc): Use std::vector.
10559         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10560         a std::vector.
10561         (find_method, find_function_symbols): Use std::vector.
10562
10563 2018-04-05  Tom Tromey  <tom@tromey.com>
10564
10565         * completer.c (completion_tracker::completion_tracker): Remove
10566         cast.
10567         (completion_tracker::discard_completions): Likewise.
10568         * breakpoint.c (ambiguous_names_p): Remove cast.
10569         * ada-lang.c (_initialize_ada_language): Remove cast.
10570         * utils.h (streq): Update.
10571         (streq_hash): Add new declaration.
10572         * utils.c (streq): Return bool.
10573         (streq_hash): New function.
10574
10575 2018-04-05  Tom Tromey  <tom@tromey.com>
10576
10577         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10578         Remove a string copy.
10579
10580 2018-04-05  Tom Tromey  <tom@tromey.com>
10581
10582         * linespec.c (filter_results): Use std::vector.
10583         (decode_line_2, decode_line_full): Update.
10584
10585 2018-04-05  Tom Tromey  <tom@tromey.com>
10586
10587         * linespec.c (canonical_to_fullform): Return std::string.
10588         (filter_results): Update.
10589         (struct decode_line_2_item): Add constructor.
10590         <fullform, displayform>: Now std::string.
10591         (decode_line_2_compare_items): Now a std::sort comparator.
10592         (decode_line_2): Update.
10593
10594 2018-04-05  Tom Tromey  <tom@tromey.com>
10595
10596         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10597         (unexpected_linespec_error): Update.
10598         (linespec_parse_basic, parse_linespec): Update.
10599
10600 2018-04-05  Tom Tromey  <tom@tromey.com>
10601
10602         * linespec.c (linespec_parse_basic): Reindent.
10603
10604 2018-04-05  Tom Tromey  <tom@tromey.com>
10605
10606         * minsyms.h (iterate_over_minimal_symbols): Update.
10607         * minsyms.c (iterate_over_minimal_symbols): Take a
10608         gdb::function_view.
10609         * linespec.c (struct collect_minsyms): Remove.
10610         (compare_msyms): Now a std::sort comparator.
10611         (add_minsym): Add parameters.
10612         (search_minsyms_for_name): Update.  Use std::vector.
10613
10614 2018-04-03  Tom Tromey  <tom@tromey.com>
10615
10616         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10617         gdb::byte_vector.
10618
10619 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10620
10621         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10622
10623 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10624
10625         PR gdb/16959
10626         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10627         printing static type.
10628
10629 2018-04-01  Tom Tromey  <tom@tromey.com>
10630
10631         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10632         (rs6000_xfer_shared_libraries): Update.
10633
10634 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10635
10636         * common/gdb_vecs.h (char_ptr): Remove.
10637         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10638
10639 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10640
10641         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10642         with std::vector.
10643         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10644
10645 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10646
10647         * tracepoint.h (struct uploaded_tp): Initialize fields.
10648         <actions, step_actions, cmd_strings>: Change type to
10649         std::vector<char *>.
10650         * tracepoint.c (get_uploaded_tp): Allocate with new.
10651         (free_uploaded_tps): Free with delete.
10652         (parse_tracepoint_definition): Adjust to std::vector change.
10653         * breakpoint.c (read_uploaded_action): Likewise.
10654         (create_tracepoint_from_upload): Likewise.
10655         * ctf.c (ctf_write_uploaded_tp): Likewise.
10656         (SET_ARRAY_FIELD): Likewise.
10657         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10658
10659 2018-03-30  Tom Tromey  <tom@tromey.com>
10660
10661         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10662         std::unique_ptr.
10663         (svr4_keep_data_in_core): Update.
10664         (svr4_read_so_list): Update.
10665
10666 2018-03-30  Tom Tromey  <tom@tromey.com>
10667
10668         * windows-nat.c (handle_output_debug_string, handle_exception):
10669         Update.
10670         * target.h (target_read_string): Update.
10671         * target.c (target_read_string): Change "string" to
10672         unique_xmalloc_ptr.
10673         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10674         Update.
10675         * solib-frv.c (frv_current_sos): Update.
10676         * solib-dsbt.c (dsbt_current_sos): Update.
10677         * solib-darwin.c (darwin_current_sos): Update.
10678         * linux-thread-db.c (inferior_has_bug): Update.
10679         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10680         Update.  Remove alloca.
10681         * ada-lang.c (ada_main_name): Update.
10682
10683 2018-03-30  Tom Tromey  <tom@tromey.com>
10684
10685         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10686         (struct dwo_file_deleter): New.
10687         (dwo_file_up): New typedef.
10688         (open_and_init_dwo_file): Use dwo_file_up.
10689         (free_dwo_file_cleanup): Remove.
10690
10691 2018-03-30  Tom Tromey  <tom@tromey.com>
10692
10693         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10694         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10695
10696 2018-03-30  Tom Tromey  <tom@tromey.com>
10697
10698         * dwarf2read.c (class free_cached_comp_units): New class.
10699         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10700         (free_cached_comp_units): Remove function.
10701
10702 2018-03-30  Tom Tromey  <tom@tromey.com>
10703
10704         * utils.h (make_cleanup_unpush_target): Remove.
10705         * inf-ptrace.c (struct target_unpusher): New.
10706         (target_unpush_up) New typedef.
10707         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10708         target_unpush_up.
10709         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10710
10711 2018-03-27  Tom Tromey  <tom@tromey.com>
10712
10713         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10714
10715 2018-03-27  Pedro Alves  <palves@redhat.com>
10716             Tom Tromey  <tom@tromey.com>
10717
10718         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10719         destructor.  Now a class.
10720         (gdb_readline_wrapper_cleanup): Remove function.
10721         (gdb_readline_wrapper): Remove cleanups.
10722
10723 2018-03-27  Tom Tromey  <tom@tromey.com>
10724
10725         * typeprint.h (struct type_print_options) <local_typedefs,
10726         global_typedefs>: Remove "struct" keyword.
10727         (class typedef_hash_table): New class.
10728         (recursively_update_typedef_hash, add_template_parameters)
10729         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10730         (find_typedef_in_hash): Don't declare.
10731         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10732         (typedef_hash_table::recursively_update): Rename from
10733         recursively_update_typedef_hash.  Now a member.
10734         (typedef_hash_table::add_template_parameters): Rename from
10735         add_template_parameters.  Now a member.
10736         (typedef_hash_table::typedef_hash_table): Now a constructor;
10737         rename from create_typedef_hash.
10738         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10739         rename from free_typedef_hash.
10740         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10741         (do_free_global_table): Remove.
10742         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10743         from copy_type_recursive.
10744         (create_global_typedef_table): Remove.
10745         (typedef_hash_table::find_global_typedef): Now a member of
10746         typedef_hash_table.
10747         (typedef_hash_table::find_typedef): Rename from
10748         find_typedef_in_hash; now a member.
10749         (whatis_exp): Update.
10750         * extension.h (struct ext_lang_type_printers): Add constructor and
10751         destructor.
10752         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10753         declare.
10754         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10755         Now a constructor; rename from start_ext_lang_type_printers.
10756         (ext_lang_type_printers): Now a destructor; rename from
10757         free_ext_lang_type_printers.
10758         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10759         Update.
10760         (c_type_print_base_struct_union): Update.  Remove cleanups.
10761
10762 2018-03-27  Tom Tromey  <tom@tromey.com>
10763
10764         * dwarf-index-write.c: Include <cmath>.
10765
10766 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10767
10768         * NEWS: Add entry describing new "set|show varsize-limit" command.
10769         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10770         command.
10771         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10772         "set variable".
10773
10774 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10775
10776         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10777         dwarf-index-write.c
10778         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10779         * dwarf-index-common.c: New file.
10780         * dwarf-index-common.h: New file.
10781         * dwarf-index-write.c: New file.
10782         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10783         (struct dwarf2_section_info): Move from here.
10784         (dwarf2_section_info_def): Likewise.
10785         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10786         (offset_type): Likewise.
10787         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10788         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10789         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10790         (byte_swap): Likewise.
10791         (MAYBE_SWAP): Likewise.
10792         (dwarf2_per_cu_ptr): Likewise.
10793         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10794         (struct tu_stats): Likewise.
10795         (struct dwarf2_per_objfile): Likewise.
10796         (struct dwarf2_per_cu_data): Likewise.
10797         (struct signatured_type): Likewise.
10798         (sig_type_ptr): Likewise.
10799         (DEF_VEC_P (sig_type_ptr)): Likewise.
10800         (INDEX4_SUFFIX): Likewise.
10801         (INDEX5_SUFFIX): Likewise.
10802         (DEBUG_STR_SUFFIX): Likewise.
10803         (dwarf2_read_section): Make non-static.
10804         (mapped_index_string_hash): Move from here.
10805         (dwarf5_djb_hash): Likewise.
10806         (file_write): Likewise.
10807         (class data_buf): Likewise.
10808         (struct symtab_index_entry): Likewise.
10809         (struct mapped_symtab): Likewise.
10810         (find_slot): Likewise.
10811         (hash_expand): Likewise.
10812         (add_index_entry): Likewise.
10813         (uniquify_cu_indices): Likewise.
10814         (class c_str_view): Likewise.
10815         (class c_str_view_hasher): Likewise.
10816         (class vector_hasher): Likewise.
10817         (write_hash_table): Likewise.
10818         (psym_index_map): Likewise.
10819         (struct addrmap_index_data): Likewise.
10820         (add_address_entry): Likewise.
10821         (add_address_entry_worker): Likewise.
10822         (write_address_map): Likewise.
10823         (symbol_kind): Likewise.
10824         (write_psymbols): Likewise.
10825         (struct signatured_type_index_data): Likewise.
10826         (write_one_signatured_type): Likewise.
10827         (recursively_count_psymbols): Likewise.
10828         (recursively_write_psymbols): Likewise.
10829         (class debug_names): Likewise.
10830         (check_dwarf64_offsets): Likewise.
10831         (psyms_seen_size): Likewise.
10832         (write_gdbindex): Likewise.
10833         (write_debug_names): Likewise.
10834         (assert_file_size): Likewise.
10835         (write_psymtabs_to_index): Likewise.
10836         (save_gdb_index_command): Likewise.
10837         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10838         command.
10839         * dwarf2read.h: New file.
10840
10841 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10842
10843         PR gdb/22670
10844         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10845         symbol name if the CU's language stores symbol names in linkage
10846         format.
10847         * language.h (struct language_defn)
10848         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10849         all instances of this struct.
10850
10851 2018-03-26  Tom Tromey  <tom@tromey.com>
10852
10853         * stack.c (backtrace_command_1): Remove verbose code.
10854
10855 2018-03-26  Tom Tromey  <tom@tromey.com>
10856
10857         * python/py-framefilter.c (py_print_type): Don't catch
10858         exceptions.  Return void.
10859         (py_print_value): Likewise.
10860         (py_print_single_arg): Likewise.
10861         (enumerate_args): Don't catch exceptions.
10862         (py_print_args): Likewise.
10863         (py_print_frame): Likewise.
10864         (gdbpy_apply_frame_filter): Catch exceptions here.
10865
10866 2018-03-26  Tom Tromey  <tom@tromey.com>
10867
10868         * stack.c (_initialize_stack): Remove trailing newlines from help
10869         text.  Add "Usage" line to "backtrace" help.
10870
10871 2018-03-26  Tom Tromey  <tom@tromey.com>
10872
10873         PR python/16486:
10874         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10875
10876 2018-03-26  Tom Tromey  <tom@tromey.com>
10877
10878         * python/py-framefilter.c (py_print_single_arg): Return
10879         EXT_LANG_BT_ERROR from catch.
10880
10881 2018-03-26  Tom Tromey  <tom@tromey.com>
10882
10883         PR backtrace/15584:
10884         * stack.c (backtrace_command_1): Move some code into no-filters
10885         "if".
10886
10887 2018-03-26  Tom Tromey  <tom@tromey.com>
10888
10889         * python/py-framefilter.c (throw_quit_or_print_exception): New
10890         function.
10891         (gdbpy_apply_frame_filter): Use it.
10892
10893 2018-03-26  Tom Tromey  <tom@tromey.com>
10894
10895         PR cli/17716:
10896         * python/py-framefilter.c (py_print_type, py_print_value)
10897         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10898         RETURN_MASK_ERROR.
10899
10900 2018-03-26  Tom Tromey  <tom@tromey.com>
10901
10902         * python/py-framefilter.c (enumerate_args): Use
10903         gdb::unique_xmalloc_ptr.
10904
10905 2018-03-26  Tom Tromey  <tom@tromey.com>
10906
10907         * python/py-framefilter.c (py_print_frame): Return
10908         EXT_LANG_BT_OK.
10909         (gdbpy_apply_frame_filter): Update comment.
10910         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10911         Remove.
10912         <EXT_LANG_BT_NO_FILTERS>: Change value.
10913
10914 2018-03-26  Tom Tromey  <tom@tromey.com>
10915
10916         PR backtrace/15582:
10917         * stack.c (backtrace_command): Parse "hide" argument.
10918         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10919         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10920         constant.
10921
10922 2018-03-26  Tom Tromey  <tom@tromey.com>
10923
10924         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10925         add "flags".
10926         (backtrace_command): Remove "fulltrace", add "flags".
10927
10928 2018-03-26  Tom Tromey  <tom@tromey.com>
10929
10930         * stack.c (backtrace_command): Rewrite command line parsing.
10931
10932 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10933
10934         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10935
10936 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10937
10938         * filename-seen-cache.h: Add include guard.
10939
10940 2018-03-26  Keith Seitz  <keiths@redhat.com>
10941
10942         * symfile.c (place_section): Remove "struct" from section_addr_info
10943         in comment.
10944         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10945         "struct" keyword from section_addr_info.
10946
10947 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10948
10949         * regformats/regdef.h (reg): Add constructors.
10950
10951 2018-03-25  Pedro Alves  <palves@redhat.com>
10952
10953         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10954         if then/else bodies in var_func_name extraction.
10955
10956 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10957
10958         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10959         lookup_minimal_symbol() to find symbol entry.
10960         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10961
10962 2018-03-23  Keith Seitz  <keiths@redhat.com>
10963
10964         PR c++/22968
10965         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10966         nested type definitions for C++, too.
10967
10968 2018-03-23  Tom Tromey  <tom@tromey.com>
10969
10970         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10971         a typedef.
10972         (macho_register_oso): Remove.
10973         (macho_symtab_read): Take a std::vector.
10974         (oso_el_compare_name): Now a std::sort comparator.
10975         (macho_symfile_read_all_oso): Take a std::vector.
10976         (macho_symfile_read): Use std::vector.  Remove cleanups.
10977
10978 2018-03-22  Tom Tromey  <tom@tromey.com>
10979
10980         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10981         (record_full_goto_bookmark): Use std::string.
10982
10983 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10984
10985         PR tdep/18295
10986         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10987         a single mask.
10988
10989 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10990
10991         * rs6000-tdep.c (store_insn_p): New function.
10992         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10993         and cr_reg to their unshifted values. Use store_insn_p to
10994         match LR saves using either R1 or fdata->alloca_reg. Use
10995         store_insn_p to match CR saves. Set alloca_reg_offset
10996         when alloca_reg and framep are set. Remove lr_reg shift
10997         when assigning to fdata->lr_register.
10998
10999 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11000
11001         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11002         command line args instead of emitting a warning.
11003
11004 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11005
11006         * tracepoint.h (struct static_tracepoint_marker): Initialize
11007         fields, define default constructor, move constructor and move
11008         assignment, disable the rest.
11009         <str_id, extra>: Make std::string.
11010         (release_static_tracepoint_marker): Remove.
11011         (free_current_marker): Remove.
11012         * tracepoint.c (free_current_marker): Remove.
11013         (parse_static_tracepoint_marker_definition): Adjust to
11014         std::string, use new hex2str overload.
11015         (release_static_tracepoint_marker): Remove.
11016         (print_one_static_tracepoint_marker): Get marker by reference
11017         and adjust to std::string.
11018         (info_static_tracepoint_markers_command): Adjust to std::vector
11019         changes
11020         * target.h (static_tracepoint_marker_p): Remove typedef.
11021         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11022         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11023         bool.
11024         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11025         * target-debug.h
11026         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11027         (target_debug_print_std_vector_static_tracepoint_marker): New.
11028         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11029         to...
11030         (target_debug_print_static_tracepoint_marker_p): ... this.
11031         * target-delegates.c: Re-generate.
11032         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11033         Make std::string.
11034         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11035         (decode_static_tracepoint_spec): Adjust to std::vector.
11036         (tracepoint_print_one_detail): Adjust to std::string.
11037         (strace_marker_decode_location): Adjust to std::string.
11038         (update_static_tracepoint): Adjust to std::string, remove call
11039         to release_static_tracepoint_marker.
11040         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11041         Adjust to std::vector.
11042         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11043         (remote_static_tracepoint_markers_by_strid): Adjust to
11044         std::vector.
11045         * common/rsp-low.h (hex2str): New overload with explicit count
11046         of bytes.
11047         * common/rsp-low.c (hex2str): New overload with explicit count
11048         of bytes.
11049         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11050         (_initialize_rsp_low_selftests): Add test_hex2str test.
11051         * unittests/tracepoint-selftests.c
11052         (test_parse_static_tracepoint_marker_definition): Adjust to
11053         std::string.
11054
11055 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11056
11057         * tracepoint.c (parse_static_tracepoint_marker_definition):
11058         Consider case where the definition is followed by more
11059         definitions.
11060         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11061         tracepoint-selftests.c.
11062         * unittests/tracepoint-selftests.c: New.
11063
11064 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11065
11066         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11067         Carvalho.
11068
11069 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11070
11071         * symtab.c (find_pc_sect_line): fixed indentation.
11072
11073 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11074
11075         * symtab.c (find_pc_sect_line): now uses binary search.
11076
11077 2018-03-19  Tom Tromey  <tom@tromey.com>
11078
11079         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11080         "IDENT" production.
11081
11082 2018-03-19  Pedro Alves  <palves@redhat.com>
11083             Tom Tromey  <tom@tromey.com>
11084
11085         * unittests/observable-selftests.c: New file.
11086         * common/observable.h: New file.
11087         * observable.h: New file.
11088         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11089         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11090         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11091         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11092         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11093         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11094         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11095         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11096         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11097         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11098         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11099         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11100         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11101         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11102         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11103         tui/tui-interp.c, valops.c: Update all users.
11104         * tui/tui-hooks.c (tui_bp_created_observer)
11105         (tui_bp_deleted_observer, tui_bp_modified_observer)
11106         (tui_inferior_exit_observer, tui_before_prompt_observer)
11107         (tui_normal_stop_observer, tui_register_changed_observer):
11108         Remove.
11109         (tui_observers_token): New global.
11110         (attach_or_detach, tui_attach_detach_observers): New functions.
11111         (tui_install_hooks, tui_remove_hooks): Use
11112         tui_attach_detach_observers.
11113         * record-btrace.c (record_btrace_thread_observer): Remove.
11114         (record_btrace_thread_observer_token): New global.
11115         * observer.sh: Remove.
11116         * observer.c: Rename to observable.c.
11117         * observable.c (namespace gdb_observers): Define new objects.
11118         (observer_debug): Move into gdb_observers namespace.
11119         (struct observer, struct observer_list, xalloc_observer_list_node)
11120         (xfree_observer_list_node, generic_observer_attach)
11121         (generic_observer_detach, generic_observer_notify): Remove.
11122         (_initialize_observer): Update.
11123         Don't include observer.inc.
11124         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11125         (clean mostlyclean): Likewise.
11126         (observer.h, observer.inc): Remove targets.
11127         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11128         (COMMON_SFILES): Use observable.c, not observer.c.
11129         * .gitignore: Remove observer.h.
11130
11131 2018-03-18  Tom Tromey  <tom@tromey.com>
11132
11133         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11134         gdb::def_vector.
11135         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11136
11137 2018-03-17  Tom Tromey  <tom@tromey.com>
11138
11139         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11140
11141 2018-03-17  Tom Tromey  <tom@tromey.com>
11142
11143         * target.c (class scoped_target_fd): New.
11144         (target_fileio_close_cleanup): Remove.
11145         (target_fileio_read_alloc_1): Use scoped_target_fd.
11146
11147 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11148
11149         * silent-rules.mk: New.
11150         * Makefile.in: Include silent-rules.mk
11151         (srcdir, VPATH, top_srcdir): Move up.
11152         (COMPILE): Add ECHO_CXX.
11153         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11154         (init.c): Add ECHO_INIT_C.
11155         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11156         (version.c): Add ECHO_GEN.
11157         (printcmd.o): Add ECHO_CXX.
11158         (target-float.o): Add ECHO_CXX.
11159         (ada-exp.o): Add ECHO_CXX.
11160         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11161         (insight$(EXEEXT)): Add ECHO_CXXLD.
11162         * gnulib/configure.ac: Add AM_SILENT_RULES.
11163         * gnulib/aclocal.m4: Re-generate.
11164         * gnulib/configure: Re-generate.
11165         * gnulib/import/Makefile.in: Re-generate.
11166
11167 2018-03-16  Tom Tromey  <tom@tromey.com>
11168
11169         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11170         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11171         * utils.c (do_free_section_addr_info)
11172         (make_cleanup_free_section_addr_info): Remove.
11173         * symfile.h (struct other_sections): Add constructor.
11174         (struct section_addr_info): Remove.
11175         (section_addr_info): New typedef.
11176         (struct sym_fns) <sym_offsets>: Change type of parameter.
11177         (build_section_addr_info_from_objfile)
11178         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11179         (default_symfile_offsets, symbol_file_add)
11180         (symbol_file_add_from_bfd)
11181         (build_section_addr_info_from_section_table): Update.
11182         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11183         * symfile.c (alloc_section_addr_info): Remove.
11184         (build_section_addr_info_from_section_table): Change return type.
11185         Update.
11186         (build_section_addr_info_from_bfd)
11187         (build_section_addr_info_from_objfile): Likewise.
11188         (free_section_addr_info): Remove.
11189         (relative_addr_info_to_section_offsets): Change type of "addrs".
11190         (addrs_section_compar): Now a std::sort comparator.
11191         (addrs_section_sort): Change return type.
11192         (addr_info_make_relative): Change type of "addrs".  Update.
11193         (default_symfile_offsets, syms_from_objfile_1)
11194         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11195         (symbol_file_add_separate): Update.
11196         (symbol_file_add): Change type of "addrs".  Update.
11197         (add_symbol_file_command): Update.  Remove cleanups.
11198         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11199         cleanups.
11200         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11201         * solib.c (solib_read_symbols): Update.
11202         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11203         * machoread.c (macho_symfile_offsets): Update.
11204         * jit.c (jit_bfd_try_read_symtab): Update.
11205
11206 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11207
11208         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11209         unittests/utils-selftests.c.
11210         * unittests/utils-selftests.c: New file.
11211
11212 2018-03-14  Tom Tromey  <tom@tromey.com>
11213
11214         PR cli/14977:
11215         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11216         for NULL.
11217
11218 2018-03-14  Tom Tromey  <tom@tromey.com>
11219
11220         PR cli/19918:
11221         * printcmd.c (printf_pointer): Allow "-" in format.
11222
11223 2018-03-14  Tom Tromey  <tom@tromey.com>
11224
11225         * printcmd.c (_initialize_printcmd): Add usage to printf.
11226
11227 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11228
11229         * MAINTAINERS: Update my email address.
11230
11231 2018-03-13  Tom Tromey  <tom@tromey.com>
11232
11233         * machoread.c (macho_check_dsym): Change filenamep to a
11234         std::string*.
11235         (macho_symfile_read): Update.
11236         * symfile.c (load_command): Use std::string.
11237
11238 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11239
11240         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11241         to error message string.
11242         (riscv_register_name): Use xsnprintf instead of sprintf.
11243         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11244         internal_error.
11245         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11246         error.
11247         (riscv_push_dummy_call): Likewise.
11248
11249 2018-03-12  Tom Tromey  <tom@tromey.com>
11250
11251         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11252         Use gdb::byte_vector.
11253         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11254
11255 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11256
11257         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11258         parameter type to readable_regcache.
11259         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11260         the declaration.
11261
11262 2018-03-11  Tom Tromey  <tom@tromey.com>
11263
11264         * dwarf2read.c (struct nextfield): Add initializers.
11265         (struct nextfnfield): Remove.
11266         (struct fnfieldlist): Add initializers.  Remove "length" and
11267         "head", use std::vector.
11268         (struct decl_field_list): Remove.
11269         (struct field_info): Add initializers.
11270         <fields, baseclasses>: Now std::vector.
11271         <nbaseclasses, nfnfields, typedef_field_list_count,
11272         nested_types_list_count>: Remove.
11273         (dwarf2_add_field, dwarf2_add_type_defn)
11274         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11275         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11276         (process_structure_scope): Update.
11277
11278 2018-03-11  Tom Tromey  <tom@tromey.com>
11279
11280         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11281         for use by std::sort.
11282         (build_type_psymtabs_1): Use std::vector.
11283
11284 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11285
11286         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11287         and LIBMPFR in the printed configuration.
11288
11289 2018-03-08  Tom Tromey  <tom@tromey.com>
11290
11291         * source.c (get_filename_and_charpos): Use scoped_fd.
11292         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11293         (procfs_pidlist): Likewise.
11294         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11295         (iterate_over_mappings): Likewise.
11296
11297 2018-03-08  Tom Tromey  <tom@tromey.com>
11298
11299         * infcall.c (struct call_return_meta_info)
11300         <stack_temporaries_enabled>: Remove.
11301         (get_call_return_value, call_function_by_hand_dummy): Update.
11302         * thread.c (disable_thread_stack_temporaries): Remove.
11303         (enable_thread_stack_temporaries): Remove.
11304         (thread_stack_temporaries_enabled_p): Return bool.
11305         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11306         (get_last_thread_stack_temporary): Update.
11307         * eval.c (evaluate_subexp): Update.
11308         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11309         class, not a function.
11310         (value_ptr, value_vec): Remove typedefs.
11311         (class thread_info) <stack_temporaries_enabled>: Now bool.
11312         <stack_temporaries>: Now a std::vector.
11313         (thread_stack_temporaries_enabled_p)
11314         (value_in_thread_stack_temporaries): Return bool.
11315
11316 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11317
11318         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11319         (getpkt_or_notif_sane_1): Likewise.
11320
11321 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11322
11323         * build-id.c (build_id_to_debug_bfd): Use std::string.
11324
11325 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11326
11327         * build-id.c (find_separate_debug_file_by_buildid): Return
11328         std::string.
11329         * build-id.h (find_separate_debug_file_by_buildid): Return
11330         std::string.
11331         * coffread.c (coff_symfile_read): Adjust to std::string.
11332         * elfread.c (elf_symfile_read): Adjust to std::string.
11333         * symfile.c (separate_debug_file_exists): Change parameter to
11334         std::string.
11335         (find_separate_debug_file): Return std::string.
11336         (find_separate_debug_file_by_debuglink): Return std::string.
11337         * symfile.h (find_separate_debug_file_by_debuglink): Return
11338         std::string.
11339
11340 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11341
11342         * common/xml-utils.c (xml_escape_text): Move code to...
11343         (xml_escape_text_append): ... this new function.
11344         * common/xml-utils.h (xml_escape_text_append): New declaration.
11345         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11346         New function.
11347         (_initialize_xml_utils): register test_xml_escape_text_append as
11348         a selftest.
11349
11350 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11351
11352         * defs.h: Remove MAX_REGISTER_SIZE.
11353         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11354         asserts.
11355         * python/py-unwind.c (pyuw_sniffer): Likewise.
11356
11357 2018-03-07  Tom Tromey  <tom@tromey.com>
11358
11359         * linux-tdep.c (linux_info_proc): Update.
11360         * target.h (struct target_ops) <to_fileio_readlink>: Return
11361         optional<string>.
11362         (target_fileio_readlink): Return optional<string>.
11363         * remote.c (remote_hostio_readlink): Return optional<string>.
11364         * inf-child.c (inf_child_fileio_readlink): Return
11365         optional<string>.
11366         * target.c (target_fileio_readlink): Return optional<string>.
11367
11368 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11369
11370         * regcache.c (cooked_read_test): Add riscv to the list of
11371         architectures that have a save_reggroup.
11372
11373 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11374
11375         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11376         value is not a dynamic class object.
11377
11378 2018-03-06  Tom Tromey  <tom@tromey.com>
11379
11380         * rust-exp.y: Formatting fixes.
11381
11382 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11383
11384         * riscv-tdep.c (riscv_register_name): Remove target description
11385         support.
11386         (riscv_gdbarch_init): Remove target description check.
11387
11388 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11389
11390         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11391         comment.
11392         * riscv-tdep.h: Likewise.
11393
11394 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11395
11396         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11397         (riscv_pseudo_register_write): Delete.
11398         (riscv_gdbarch_init): Remove all use of pseudo registers.
11399
11400 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11401
11402         * record-btrace.c (btrace_print_lines): Replace cleanup
11403         parameter with RAII equivalents.
11404         (btrace_insn_history): Replace cleanup with RAII equivalents.
11405         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11406         make_cleanup_ui_out_tuple_begin_end): Remove.
11407         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11408         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11409         make_cleanup_ui_out_list_begin_end): Remove.
11410
11411 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11412
11413         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11414         parameter types to std::vector.  Use bool.
11415         (record_btrace_wait): Replace VEC(tp_t) with
11416         std::vector<thread_info *>.
11417         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11418
11419 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11420
11421         * record-btrace.c (record_btrace_disable_callback): Remove.
11422         (struct scoped_btrace_disable): New.
11423         (record_btrace_open): Use scoped_btrace_disable.
11424
11425 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11426
11427         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11428         reading values from registers.
11429
11430 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11431
11432         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11433         where appropriate.
11434
11435 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11436
11437         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11438         change parameter type.  Use GDB's print functions, and use
11439         core_addr_to_string where appropriate.
11440         (riscv_push_dummy_call): Use core_addr_to_string where
11441         appropriate, update call to riscv_print_arg_location, and reindent
11442         a few lines.
11443         (riscv_return_value): Update call to riscv_print_arg_location.
11444
11445 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11446             Tim Newsome <tim@sifive.com>
11447             Albert Ou <a0u@eecs.berkeley.edu>
11448             Darius Rad <darius@bluespec.com>
11449
11450         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11451         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11452         (ALLDEPFILES): Add riscv-tdep.c
11453         * configure.tgt: Add riscv support.
11454         * riscv-tdep.c: New file.
11455         * riscv-tdep.h: New file.
11456         * NEWS: Mention new target.
11457         * MAINTAINERS: Add entry for riscv.
11458
11459 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11460
11461         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11462         fields within aggregates.
11463
11464 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11465
11466         * record-btrace.c (btrace_print_lines): Change type of flags to
11467         gdb_disassembly_flags.
11468
11469 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11470
11471         * fbsd-nat.c: Include "inf-ptrace.h".
11472         (USE_SIGTRAP_SIGINFO): Conditionally define.
11473         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11474         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11475         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11476         function.
11477         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11478         Likewise.
11479         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11480         Likewise.
11481         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11482         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11483         "supports_stopped_by_hw_breakpoint" target methods.
11484
11485 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11486
11487         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11488         * fbsd-nat.c (debug_fbsd_nat): New variable.
11489         (show_fbsd_nat_debug): New function.
11490         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11491         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11492
11493 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11494
11495         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11496         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11497         prototype.
11498         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11499         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11500         method.
11501
11502 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11503
11504         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11505         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11506
11507 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11508
11509         * charset.c (struct charset_vector): New.
11510         (charsets): Change type to charset_vector.
11511         (find_charset_names): Adjust.
11512         (add_one): Adjust.
11513         (_initialize_charset): Adjust.
11514
11515 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11516
11517         * progspace.h (struct program_space) <deleted_solibs>: Change
11518         type to std::vector<std::string>.
11519         * progspace.c (clear_program_space_solib_cache): Adjust.
11520         * breakpoint.c (print_solib_event): Adjust.
11521         (check_status_catch_solib): Adjust.
11522         * solib.c (update_solib_list): Adjust.
11523         * ui-out.h (class ui_out) <field_string>: New overload.
11524         * ui-out.c (ui_out::field_string): New overload.
11525
11526 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11527
11528         * progspace.h (struct program_space): Add constructor and
11529         destructor, initialize fields.
11530         (add_program_space): Remove.
11531         * progspace.c (add_program_space): Rename to...
11532         (program_space::program_space): ... this.
11533         (release_program_space): Rename to...
11534         (program_space::~program_space): ... this.
11535         (delete_program_space): Use delete to delete program_space.
11536         (initialize_progspace): Use new to allocate program_space.
11537         * inferior.c (add_inferior_with_spaces): Likewise.
11538         (clone_inferior_command): Likewise.
11539         * infrun.c (follow_fork_inferior): Likewise.
11540         (handle_vfork_child_exec_or_exit): Likewise.
11541
11542 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11543
11544         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11545         (delim_string_to_char_ptr_vec): Return std::vector of
11546         gdb::unique_xmalloc_ptr.
11547         (dirnames_to_char_ptr_vec_append): Take std::vector of
11548         gdb::unique_xmalloc_ptr.
11549         (dirnames_to_char_ptr_vec): Return std::vector of
11550         gdb::unique_xmalloc_ptr.
11551         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11552         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11553         (delim_string_to_char_ptr_vec): Return an std::vector of
11554         gdb::unique_xmalloc_ptr, adjust the code.
11555         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11556         gdb::unique_xmalloc_ptr, adjust the code.
11557         (dirnames_to_char_ptr_vec): Return an std::vector of
11558         gdb::unique_xmalloc_ptr, adjust the code.
11559         * auto-load.c (auto_load_safe_path_vec): Change type to
11560         std::vector of gdb::unique_xmalloc_ptr.
11561         (auto_load_expand_dir_vars): Return an std::vector of
11562         gdb::unique_xmalloc_ptr, adjust the code.
11563         (auto_load_safe_path_vec_update): Adjust.
11564         (filename_is_in_auto_load_safe_path_vec): Adjust.
11565         (auto_load_objfile_script_1): Adjust.
11566         * build-id.c (build_id_to_debug_bfd): Adjust.
11567         * linux-thread-db.c (thread_db_load_search): Adjust.
11568         * source.c (add_path): Adjust.
11569         (openp): Adjust.
11570         * symfile.c (find_separate_debug_file): Adjust.
11571         * utils.c (do_free_char_ptr_vec): Remove.
11572         (make_cleanup_free_char_ptr_vec): Remove.
11573
11574 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11575
11576         PR gdb/22907
11577         * common/pathstuff.c: Conditionally include "<windows.h>".
11578
11579 2018-03-01  Georg Sauthoff  <mail@georg.so>
11580
11581         PR gdb/22888
11582         * gcore.in: Quote variables and switch interpreter to bash.
11583
11584 2018-03-01  Tom Tromey  <tom@tromey.com>
11585
11586         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11587         assertion.  Add assertion for discriminant_index.
11588         (quirk_rust_enum): Use correct base type name in univariant case.
11589
11590 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11591
11592         * record.c (get_call_history_modifiers): Return a
11593         record_print_flags.
11594         (cmd_record_call_history): Adjust.
11595         * record-btrace.c (record_btrace_call_history): Adjust.
11596         (record_btrace_call_history_range): Adjust.
11597         (record_btrace_call_history_from): Adjust.
11598         * target-debug.h (target_debug_print_record_print_flags): New.
11599         * target-delegates.c: Re-generate.
11600         * target.c (target_call_history): Change flags type.
11601         (target_call_history_from): Likewise.
11602         (target_call_history_range): Likewise.
11603         * target.h (struct target_ops) <target_call_history>: Likewise.
11604         (target_call_history_from): Likewise.
11605         (target_call_history_range): Likewise.
11606
11607 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11608             Simon Marchi  <simon.marchi@polymtl.ca>
11609
11610         * common/common-utils.c: Include "sys/stat.h".
11611         (is_regular_file): Move here from "source.c"; change return
11612         type to "bool".
11613         * common/common-utils.h (is_regular_file): New prototype.
11614         * common/pathstuff.c (contains_dir_separator): New function.
11615         * common/pathstuff.h (contains_dir_separator): New prototype.
11616         * source.c: Don't include "sys/stat.h".
11617         (is_regular_file): Move to "common/common-utils.c".
11618
11619 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11620
11621         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11622         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11623         * auto-load.c: Include "common/pathstuff.h".
11624         * common/common-def.h (current_directory): Move here.
11625         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11626         function.
11627         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11628         prototype.
11629         * common/pathstuff.c: New file.
11630         * common/pathstuff.h: New file.
11631         * compile/compile.c: Include "common/pathstuff.h".
11632         * defs.h (current_directory): Move to "common/common-defs.h".
11633         * dwarf2read.c: Include "common/pathstuff.h".
11634         * exec.c: Likewise.
11635         * guile/scm-safe-call.c: Likewise.
11636         * linux-thread-db.c: Likewise.
11637         * main.c: Likewise.
11638         * nto-tdep.c: Likewise.
11639         * objfiles.c: Likewise.
11640         * source.c: Likewise.
11641         * symtab.c: Likewise.
11642         * utils.c: Include "common/pathstuff.h".
11643         (gdb_realpath): Move to "common/pathstuff.c".
11644         (gdb_realpath_keepfile): Likewise.
11645         (gdb_abspath): Likewise.
11646         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11647         (gdb_realpath_keepfile): Likewise.
11648         (gdb_abspath): Likewise.
11649
11650 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11651
11652         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11653         wildcard process pid for super_resume for kernels with a
11654         specific bug.
11655
11656 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11657
11658         * compile/compile.c (get_args): Add additional comments
11659         explaining function.
11660
11661 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11662             Tom Tromey  <tom@tromey.com>
11663
11664         * target.h (memory_write_request_s): Remove typedef.  Don't define
11665         VEC.
11666         (target_write_memory_blocks): Change argument to std::vector.
11667         (struct memory_write_request): Add constructor.
11668         * target-memory.c (compare_block_starting_address): Return bool.
11669         Change argument types.
11670         (claim_memory): Change arguments to use std::vector.
11671         (split_regular_and_flash_blocks, blocks_to_erase)
11672         (compute_garbled_blocks): Likewise.
11673         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11674         (target_write_memory_blocks): Change argument to std::vector.
11675         * symfile.c (struct load_section_data): Add constructor and
11676         destructor.  Use std::vector for "requests".
11677         (struct load_progress_data): Add initializers.
11678         (load_section_callback): Update.  Use "new".
11679         (clear_memory_write_data): Remove.
11680         (generic_load): Update.
11681
11682 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11683
11684         * arch/aarch64.h: Use common/tdesc.h.
11685
11686 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11687
11688         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11689         architecture with a 64-bit ABI.
11690
11691 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11692
11693         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11694         ahead of target description loading.
11695
11696 2018-02-26  Tom Tromey  <tom@tromey.com>
11697
11698         * stack.c (backtrace_command_1): Update.
11699         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11700         of "flags".
11701         * python/py-framefilter.c (py_print_frame)
11702         (gdbpy_apply_frame_filter): Change type of "flags".
11703         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11704         of "flags".
11705         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11706         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11707         * extension.h (enum frame_filter_flag): Rename from
11708         frame_filter_flags.
11709         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11710         (apply_ext_lang_frame_filter): Change type of "flags".
11711         * extension.c (apply_ext_lang_frame_filter): Change type of
11712         "flags".
11713         * extension-priv.h (struct extension_language_ops)
11714         <apply_frame_filter>: Change type of "flags".
11715
11716 2018-02-26  Tom Tromey  <tom@tromey.com>
11717
11718         PR python/16497:
11719         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11720         off-by-one in py_end computation.
11721         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11722         PRINT_MORE_FRAMES.
11723         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11724         constant.
11725
11726 2018-02-26  Tom Tromey  <tom@tromey.com>
11727
11728         * dwarf2read.c (struct variant_field): New.
11729         (struct nextfield) <variant>: New field.
11730         (dwarf2_add_field): Handle DW_TAG_variant_part.
11731         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11732         discriminated union.
11733         (read_structure_type): Handle DW_TAG_variant_part.
11734         (handle_struct_member_die): New function, extracted from
11735         process_structure_scope.  Handle DW_TAG_variant.
11736         (process_structure_scope): Handle discriminated unions.  Call
11737         handle_struct_member_die.
11738
11739 2018-02-26  Tom Tromey  <tom@tromey.com>
11740
11741         * rust-lang.h (rust_last_path_segment): Declare.
11742         * rust-lang.c (rust_last_path_segment): Now public.  Change
11743         contract.
11744         (struct disr_info): Remove.
11745         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11746         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11747         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11748         (rust_enum_p, rust_enum_variant): New function.
11749         (rust_underscore_fields): Remove "offset" parameter.
11750         (rust_print_enum): New function.
11751         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11752         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11753         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11754         enums.
11755         (rust_internal_print_type): New function, from rust_print_type.
11756         Remove enum code.
11757         (rust_print_type): Call rust_internal_print_type.
11758         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11759         Update enum handling.
11760         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11761         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11762         (rust_union_quirks): New functions.
11763         (process_full_comp_unit, process_full_type_unit): Call
11764         rust_union_quirks.
11765         (process_structure_scope): Update rust_unions if necessary.
11766
11767 2018-02-26  Tom Tromey  <tom@tromey.com>
11768
11769         * value.h (value_union_variant): Declare.
11770         * valops.c (value_union_variant): New function.
11771         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11772         (struct discriminant_info): New.
11773         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11774         enumerator.
11775         (struct main_type) <flag_discriminated_union>: New field.
11776
11777 2018-02-26  Tom Tromey  <tom@tromey.com>
11778
11779         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11780         unittests/unpack-selftests.c.
11781         * unittests/unpack-selftests.c: New file.
11782         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11783
11784 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11785
11786         * dwarf2read.c (struct partial_die_info) <read>: New method.
11787         (read_partial_die): Remove the declaration.
11788         (load_partial_dies): Update.
11789         (partial_die_info::partial_die_info):
11790         (read_partial_die): Change it to partial_die_info::read.
11791
11792 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11793
11794         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11795         (fixup_partial_die): Remove declaration.
11796         (scan_partial_symbols): Update.
11797         (partial_die_parent_scope): Likewise.
11798         (partial_die_full_name): Likewise.
11799         (fixup_partial_die): Change it to partial_die_info::fixup.
11800
11801 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11802
11803         * dwarf2read.c (read_partial_die): Update the declaration.
11804         (load_partial_dies): Caller update.
11805         (read_partial_die): Remove one argument abbrev_len.
11806
11807 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11808
11809         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11810         assignment operator.
11811         (load_partial_dies): Use ctor and copy ctor.
11812         (read_partial_die): Update.
11813         (dwarf2_cu::find_partial_die): Use ctor.
11814
11815 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11816
11817         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11818         (find_partial_die_in_comp_unit): Change it to
11819         dwarf2_cu::find_partial_die.
11820         (find_partial_die): Update.
11821
11822 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11823
11824         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11825         is NULL.
11826
11827 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11828
11829         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11830
11831 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11832
11833         * arch/amd64.h: Use common/tdesc.h.
11834         * arch/i386.c: Likewise.
11835         * arch/i386.h: Likewise.
11836         * arch/tic6x.c: Likewise.
11837         * arch/tdesc.h: Move file from here...
11838         * common/tdesc.h: ...to here.
11839         * features/aarch64-core.c: Regenerate.
11840         * features/aarch64-fpu.c: Regenerate.
11841         * features/i386/32bit-avx.c: Regenerate.
11842         * features/i386/32bit-avx512.c: Regenerate.
11843         * features/i386/32bit-core.c: Regenerate.
11844         * features/i386/32bit-linux.c: Regenerate.
11845         * features/i386/32bit-mpx.c: Regenerate.
11846         * features/i386/32bit-pkeys.c: Regenerate.
11847         * features/i386/32bit-sse.c: Regenerate.
11848         * features/i386/64bit-avx.c: Regenerate.
11849         * features/i386/64bit-avx512.c: Regenerate.
11850         * features/i386/64bit-core.c: Regenerate.
11851         * features/i386/64bit-linux.c: Regenerate.
11852         * features/i386/64bit-mpx.c: Regenerate.
11853         * features/i386/64bit-pkeys.c: Regenerate.
11854         * features/i386/64bit-segments.c: Regenerate.
11855         * features/i386/64bit-sse.c: Regenerate.
11856         * features/i386/x32-core.c: Regenerate.
11857         * features/tic6x-c6xp.c: Regenerate.
11858         * features/tic6x-core.c: Regenerate.
11859         * features/tic6x-gp.c: Regenerate.
11860         * target-descriptions.c: Use common/tdesc.h.
11861         * target-descriptions.h: Likewise.
11862
11863 2018-02-24  Tom Tromey  <tom@tromey.com>
11864
11865         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11866         (try_thread_db_load_from_dir, thread_db_load_search): Use
11867         std::string.
11868         (info_auto_load_libthread_db_compare): Return bool.  Change
11869         argument types.
11870         (info_auto_load_libthread_db): Use std::vector, std::string.
11871         Remove cleanups.
11872
11873 2018-02-24  Tom Tromey  <tom@tromey.com>
11874
11875         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11876         std::string.
11877         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11878         std::string*.
11879         * gdbarch.c: Rebuild.
11880         * gdbarch.h: Rebuild.
11881         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11882         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11883         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11884         std::string*.
11885
11886 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11887
11888         * gdbtypes.h (sect_offset): Change type to uint64_t.
11889         (sect_offset_str): New function.
11890         * dwarf2read.c (create_addrmap_from_aranges): Use
11891         sect_offset_str.
11892         (error_check_comp_unit_head): Likewise.
11893         (create_debug_type_hash_table): Likewise.
11894         (read_cutu_die_from_dwo): Likewise.
11895         (init_cutu_and_read_dies): Likewise.
11896         (init_cutu_and_read_dies_no_follow): Likewise.
11897         (process_psymtab_comp_unit_reader): Likewise.
11898         (partial_die_parent_scope): Likewise.
11899         (peek_die_abbrev): Likewise.
11900         (process_queue): Likewise.
11901         (dwarf2_physname): Likewise.
11902         (read_namespace_alias): Likewise.
11903         (read_import_statement): Likewise.
11904         (create_dwo_cu_reader): Likewise.
11905         (create_cus_hash_table): Likewise.
11906         (lookup_dwo_cutu): Likewise.
11907         (inherit_abstract_dies): Likewise.
11908         (read_func_scope): Likewise.
11909         (read_call_site_scope): Likewise.
11910         (dwarf2_add_member_fn): Likewise.
11911         (read_common_block): Likewise.
11912         (read_module_type): Likewise.
11913         (read_typedef): Likewise.
11914         (read_subrange_type): Likewise.
11915         (load_partial_dies): Likewise.
11916         (read_partial_die): Likewise.
11917         (find_partial_die): Likewise.
11918         (read_str_index): Likewise.
11919         (dwarf2_string_attr): Likewise.
11920         (build_error_marker_type): Likewise.
11921         (lookup_die_type): Likewise.
11922         (dump_die_shallow): Likewise.
11923         (follow_die_ref): Likewise.
11924         (dwarf2_fetch_die_loc_sect_off): Likewise.
11925         (dwarf2_fetch_constant_bytes): Likewise.
11926         (follow_die_sig): Likewise.
11927         (get_signatured_type): Likewise.
11928         (get_DW_AT_signature_type): Likewise.
11929         (dwarf2_find_containing_comp_unit): Likewise.
11930         (set_die_type): Likewise.
11931
11932 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11933
11934         * arch/aarch64.c: Include "common-defs.h".
11935         * arch/amd64.c: Likewise.
11936         * arch/i386.c: Likewise.
11937
11938 2018-02-21  Tom Tromey  <tom@tromey.com>
11939
11940         * value.h: (extract_field_op): Update.
11941         * eval.c (extract_field_op): Return a const char *.
11942         * expression.h (parse_expression_for_completion): Update.
11943         * completer.c (complete_expression): Update.
11944         (add_struct_fields): Make fieldname const.
11945         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11946         (mark_completion_tag, parse_exp_in_context_1): Update.
11947         (parse_expression_for_completion): Change "name" to
11948         unique_xmalloc_ptr*.
11949
11950 2018-02-21  Tom Tromey  <tom@tromey.com>
11951
11952         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11953
11954 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11955
11956         * avr-tdep.c (avr_read_pc): Change parameter type to
11957         readable_regcache.
11958         * gdbarch.sh (read_pc): Likewise.
11959         * gdbarch.c: Re-generated.
11960         * gdbarch.h: Re-generated.
11961         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11962         readable_regcache.
11963         * ia64-tdep.c (ia64_read_pc): Likewise.
11964         * mips-tdep.c (mips_read_pc): Likewise.
11965         * spu-tdep.c (spu_read_pc): Likewise.
11966
11967 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11968
11969         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11970         * regcache-dump.c: New file.
11971         * regcache.c: Move register_dump to regcache-dump.c.
11972         (maintenance_print_registers): Likewise.
11973         (maintenance_print_raw_registers): Likewise.
11974         (maintenance_print_cooked_registers): Likewise.
11975         (maintenance_print_register_groups): Likewise.
11976         (maintenance_print_remote_registers): Likewise.
11977         (_initialize_regcache): Likewise.
11978         * regcache.h (register_dump): Moved from regcache.c.
11979
11980 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11981
11982         * regcache.c (regcache::regcache): Update.
11983         (regcache::invalidate): Move it to detached_regcache::invalidate.
11984         (get_thread_arch_aspace_regcache): Update.
11985         (regcache::raw_update): Update.
11986         (regcache::cooked_read): Remove some code.
11987         (regcache::cooked_read_value): Likewise.
11988         (regcache::raw_write): Remove assert on m_readonly_p.
11989         (regcache::raw_supply_integer): Move it to
11990         detached_regcache::raw_supply_integer.
11991         (regcache::raw_supply_zeroed): Likewise.
11992         * regcache.h (detached_regcache) <raw_supply_integer>: New
11993         declaration.
11994         <raw_supply_zeroed, invalidate>: Likewise.
11995         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11996         <invalidate>: Likewise.
11997         <m_readonly_p>: Removed.
11998
11999 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12000
12001         * infcmd.c (get_return_value): Let stop_regs point to
12002         get_current_regcache.
12003         * regcache.c (regcache::regcache): Remove.
12004         (register_dump_reg_buffer): New class.
12005         (regcache_print): Adjust.
12006         * regcache.h (regcache): Remove constructors.
12007
12008 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12009
12010         * regcache.c (class register_dump): New class.
12011         (register_dump_regcache, register_dump_none): New class.
12012         (register_dump_remote, register_dump_groups): New class.
12013         (regcache_print): Update.
12014         * regcache.h (regcache_dump_what): Move it to regcache.c.
12015         (regcache) <dump>: Remove.
12016
12017 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12018
12019         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12020          reg_buffer_rw *.
12021         (jit_unwind_reg_set_impl): Call raw_supply.
12022         (jit_frame_sniffer): Use reg_buffer_rw.
12023         * record-full.c (record_full_core_regbuf): Change its type.
12024         (record_full_core_open_1): Use reg_buffer_rw.
12025         (record_full_close): Likewise.
12026         (record_full_core_fetch_registers): Use regcache->raw_supply.
12027         (record_full_core_store_registers): Likewise.
12028         * regcache.c (regcache::get_register_status): Move it to
12029         reg_buffer.
12030         (regcache_raw_set_cached_value): Remove.
12031         (regcache::raw_set_cached_value): Remove.
12032         (regcache::raw_write): Call raw_supply.
12033         (regcache::raw_supply): Move it to reg_buffer_rw.
12034         * regcache.h (regcache_raw_set_cached_value): Remove.
12035         (reg_buffer_rw): New class.
12036
12037 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12038
12039         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12040         readonly_detached_regcache.
12041         (dummy_frame_prev_register): Use regcache->cooked_read.
12042         * frame.c (frame_save_as_regcache): Change return type.
12043         (frame_pop): Update.
12044         * frame.h (frame_save_as_regcache): Update declaration.
12045         * inferior.h (get_infcall_suspend_state_regcache): Update
12046         declaration.
12047         * infrun.c (infcall_suspend_state) <registers>: use
12048         readonly_detached_regcache.
12049         (save_infcall_suspend_state): Don't use regcache_dup.
12050         (get_infcall_suspend_state_regcache): Change return type.
12051         * linux-fork.c (struct fork_info) <savedregs>: Change to
12052         readonly_detached_regcache.
12053         <pc>: New field.
12054         (fork_save_infrun_state): Don't use regcache_dup.
12055         (info_checkpoints_command): Adjust.
12056         * mi/mi-main.c (register_changed_p): Update declaration.
12057         (mi_cmd_data_list_changed_registers): Use
12058         readonly_detached_regcache.
12059         (register_changed_p): Change parameter type to
12060         readonly_detached_regcache.
12061         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12062         readonly_detached_regcache.
12063         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12064         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12065         New.
12066         (regcache::save): Move it to reg_buffer.
12067         (regcache::restore): Change parameter type.
12068         (regcache_dup): Remove.
12069         * regcache.h (reg_buffer) <save>: New method.
12070         (readonly_detached_regcache): New class.
12071         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12072         readonly_detached_regcache.
12073         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12074
12075 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12076
12077         * frame.c (frame_save_as_regcache): Use regcache method save.
12078         (frame_pop): Use regcache method restore.
12079         * infrun.c (restore_infcall_suspend_state): Likewise.
12080         * linux-fork.c (fork_load_infrun_state): Likewise.
12081         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12082         save.
12083         * regcache.c (regcache_save): Remove.
12084         (regcache::restore): More asserts.
12085         (regcache_cpy): Remove.
12086         * regcache.h (regcache_save): Remove the declaration.
12087         (regcache::restore): Move from private to public.
12088         Remove the friend declaration of regcache_cpy.
12089         (regcache_cpy): Remove declaration.
12090
12091 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12092
12093         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12094         parameter type to 'readable_regcache *'.
12095         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12096         * arm-tdep.c (arm_neon_quad_read): Likewise.
12097         (arm_pseudo_read): Likewise.
12098         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12099         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12100         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12101         * gdbarch.c: Re-generated.
12102         * gdbarch.h: Re-generated.
12103         * gdbarch.sh (pseudo_register_read): Change parameter type to
12104         'readable_regcache *'.
12105         (pseudo_register_read_value): Likewise.
12106         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12107         (h8300_pseudo_register_read): Likewise.
12108         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12109         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12110         (i386_pseudo_register_read_into_value): Likewise.
12111         (i386_pseudo_register_read_value): Likewise.
12112         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12113         declaration.
12114         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12115         * m32c-tdep.c (m32c_raw_read): Likewise.
12116         (m32c_read_flg): Likewise.
12117         (m32c_banked_register): Likewise.
12118         (m32c_banked_read): Likewise.
12119         (m32c_sb_read): Likewise.
12120         (m32c_part_read): Likewise.
12121         (m32c_cat_read): Likewise.
12122         (m32c_r3r2r1r0_read): Likewise.
12123         (m32c_pseudo_register_read): Likewise.
12124         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12125         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12126         (mep_pseudo_cr64_read): Likewise.
12127         (mep_pseudo_register_read): Likewise.
12128         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12129         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12130         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12131         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12132         (regcache::cooked_read): Likewise.
12133         (regcache::cooked_read_value): Likewise.
12134         (regcache_cooked_read_signed):
12135         (regcache::cooked_read): Likewise.
12136         * regcache.h (readable_regcache): New class.
12137         (regcache): Inherit readable_regcache.  Move some methods to
12138         readable_regcache.
12139         * rl78-tdep.c (rl78_pseudo_register_read): Change
12140         parameter type to 'readable_regcache *'.
12141         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12142         (e500_pseudo_register_read): Change parameter type to
12143         'readable_regcache *'.
12144         (dfp_pseudo_register_read): Likewise.
12145         (vsx_pseudo_register_read): Likewise.
12146         (efpr_pseudo_register_read): Likewise.
12147         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12148         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12149         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12150         (sh64_pseudo_register_read): Likewise.
12151         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12152         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12153         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12154         (spu_pseudo_register_read): Likewise.
12155         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12156         (xtensa_pseudo_register_read): Likewise.
12157
12158 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12159
12160         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12161         (regcache::arch): Move it to reg_buffer::arch.
12162         (regcache::register_buffer): Likewise.
12163         (regcache::assert_regnum): Likewise.
12164         (regcache::num_raw_registers): Likewise.
12165         * regcache.h (reg_buffer): New class.
12166         (regcache): Inherit reg_buffer.
12167
12168 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12169
12170         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12171         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12172
12173 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12174
12175         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12176
12177 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12178
12179         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12180         (SFILES): Remove common/*.c files.
12181         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12182         * common/common.host: Add common reference.
12183         * configure.ac: Likewise.
12184         * configure: Regenerate.
12185
12186 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12187
12188         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12189         (block_initialize_namespace): Use new.
12190         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12191         (dwarf2_free_objfile): Use delete.
12192         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12193         (copy_type_recursive): Use new.
12194         * gdb_obstack.h (allocate_on_obstack): New.
12195
12196 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12197
12198         PR gdb/22849
12199         * inferior.c (exit_inferior_1): Reset inf->control.
12200
12201 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12202
12203         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12204         declaration.
12205
12206 2018-02-14  Pedro Alves  <palves@redhat.com>
12207
12208         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12209         frame_cleanup_after_sniffer on exception.
12210
12211 2018-02-14  Tom Tromey  <tom@tromey.com>
12212
12213         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12214         const.
12215         (solib_bfd_open): Make pathname const.
12216         * solib.c (solib_bfd_open): Make pathname const.
12217         * solib-spu.c (spu_bfd_fopen): Make name const.
12218         (spu_bfd_open): Make pathname const.
12219         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12220         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12221
12222 2018-02-14  Tom Tromey  <tom@tromey.com>
12223
12224         * symfile.c (symfile_bfd_open): Update.
12225         * source.h (openp, source_full_path_of, find_and_open_source):
12226         Change argument type to unique_xmalloc_ptr.
12227         * source.c (openp): Take a unique_xmalloc_ptr.
12228         (source_full_path_of, find_and_open_source): Likewise.
12229         (open_source_file, symtab_to_fullname): Update.
12230         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12231         unique_xmalloc_ptr.
12232         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12233         (exec_file_find): Update.
12234         * psymtab.c (psymtab_to_fullname): Update.
12235         * nto-tdep.h (nto_find_and_open_solib): Update.
12236         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12237         unique_xmalloc_ptr.
12238         * exec.c (exec_file_attach): Update.
12239         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12240         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12241
12242 2018-02-14  Tom Tromey  <tom@tromey.com>
12243
12244         * solib.c: Include source.h.
12245         * nto-tdep.c: Include source.h.
12246         * mi/mi-cmd-env.c: Include source.h.
12247         * infcmd.c: Include source.h.
12248         * exec.c: Include source.h.
12249         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12250         (add_path, directory_switch, source_path, init_source_path): Move
12251         declarations...
12252         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12253         (add_path, directory_switch, source_path, init_source_path):
12254         ...here.
12255
12256 2018-02-14  Tom Tromey  <tom@tromey.com>
12257
12258         * solist.h (exec_file_find, solib_find): Return
12259         unique_xmalloc_ptr.
12260         (solib_bfd_fopen): Take a const char *.
12261         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12262         (exec_file_find, solib_find): Likewise.
12263         (solib_bfd_fopen): Do not take ownership of "pathname".
12264         (solib_bfd_open): Use unique_xmalloc_ptr.
12265         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12266         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12267         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12268         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12269
12270 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12271
12272         * ada-lang.c (name_match_type_from_name): Remove reference to
12273         ada_name_for_lookup in function's documentation.
12274         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12275
12276 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12277
12278         * defs.h (enum openp_flags): New enum.
12279         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12280         Move to enum openp_flags.
12281         (openp_flags): New enum flags.
12282         (openp): Change parameter type to openp_flags.
12283         * source.c (openp): Change parameter type to openp_flags.
12284         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12285         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12286
12287 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12288
12289         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12290         per-command.
12291
12292 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12293
12294         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12295         into...
12296         (class dwarf2_queue_guard): ...the destructor of this new class.
12297         (dw2_do_instantiate_symtab): Create instance of the new class
12298         dwarf2_queue_guard, remove cleanup.
12299
12300 2018-02-09  Tom Tromey  <tom@tromey.com>
12301
12302         * source.c (find_source_lines): Don't reference past the end of
12303         the vector.
12304
12305 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12306
12307         * remote.c (remote_btrace_maybe_reopen): Change error message.
12308         * btrace.c (btrace_enable): Likewise.
12309         (parse_xml_btrace): Likewise.
12310         (parse_xml_btrace_conf): Likewise.
12311
12312 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12313
12314         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12315         (linux_enable_pt, linux_enable_bts): Call
12316         diagnose_perf_event_open_fail.
12317
12318 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12319
12320         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12321         Remove parameter and change return type.  Update callers.  Move it.
12322         (linux_enable_bts, linux_enable_pt): Improve error message.
12323         (linux_enable_pt): Remove zero buffer size check.
12324         (linux_enable_btrace): Improve error messages.  Remove NULL return
12325         check.
12326
12327 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12328
12329         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12330         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12331         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12332         (linux_supports_pt, linux_supports_btrace): Remove.
12333         (linux_enable_bts): Call cpu_supports_bts.
12334         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12335         * remote.c (remote_supports_btrace): Remove.
12336         (init_remote_ops): Remove remote_supports_btrace.
12337         * target-delegates.c: Regenerated.
12338         * target.c (target_supports_btrace): Remove.
12339         * target.h (target_ops) <to_supports_btrace>: Remove
12340         (target_supports_btrace): Remove.
12341         * x86-linux-nat.c (x86_linux_create_target): Remove
12342         linux_supports_btrace.
12343
12344 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12345
12346         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12347         btrace failed.
12348         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12349         exception and use message in own exception.
12350
12351 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12352
12353         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12354         (perf_event_pt_event_type): Use gdb_file_up.
12355         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12356         scoped_fd, and scoped_mmap.
12357
12358 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12359
12360         * common/scoped_mmap.h: New.
12361         * unittests/scoped_mmap-selftest.c: New.
12362         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12363         unittests/scoped_mmap-selftest.c.
12364
12365 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12366
12367         * common/scoped_fd.h: New.
12368         * unittests/scoped_fd-selftest.c: New.
12369         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12370         unittests/scoped_fd-selftest.c.
12371
12372 2018-02-09  Tom Tromey  <tom@tromey.com>
12373
12374         * auto-load.c (auto_load_section_scripts): Use
12375         gdb::unique_xmalloc_ptr.
12376
12377 2018-02-09  Tom Tromey  <tom@tromey.com>
12378
12379         * auto-load.c (execute_script_contents): Use std::string.
12380
12381 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12382
12383         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12384         Python function, rather than a new command.
12385
12386 2018-02-08  Tom Tromey  <tom@tromey.com>
12387
12388         * solib.c (solib_find_1): Use std::string.
12389         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12390
12391 2018-02-08  Tom Tromey  <tom@tromey.com>
12392
12393         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12394
12395 2018-02-08  Tom Tromey  <tom@tromey.com>
12396
12397         * source.c (find_source_lines): Use gdb::def_vector.
12398
12399 2018-02-08  Tom Tromey  <tom@tromey.com>
12400
12401         * macrocmd.c (struct temporary_macro_definition): New.
12402         (macro_define_command): Use temporary_macro_definition.  Remove
12403         cleanups.
12404         (free_macro_definition_ptr): Remove.
12405
12406 2018-02-08  Tom Tromey  <tom@tromey.com>
12407
12408         * macroexp.c (maybe_expand): Use std::string.
12409
12410 2018-02-08  Tom Tromey  <tom@tromey.com>
12411
12412         * macroexp.c (struct macro_buffer): Add initializers for some
12413         members.
12414         (init_buffer, init_shared_buffer, free_buffer)
12415         (free_buffer_return_text): Remove.
12416         (macro_buffer): New constructors.
12417         (~macro_buffer): New destructor.
12418         (macro_buffer::set_shared): New method.
12419         (macro_buffer::resize_buffer, macro_buffer::appendc)
12420         (macro_buffer::appendmem): Now methods, not free functions.
12421         (set_token, append_tokens_without_splicing, stringify)
12422         (macro_stringify): Update.
12423         (gather_arguments): Change return type.  Remove argc_p argument,
12424         add args_ptr argument.  Use std::vector.
12425         (substitute_args): Remove argc argument.  Accept std::vector.
12426         (expand): Update.  Use std::vector.
12427         (scan, macro_expand, macro_expand_next): Update.
12428
12429 2018-02-08  Tom Tromey  <tom@tromey.com>
12430
12431         * symtab.c (default_collect_symbol_completion_matches_break_on):
12432         Use unique_xmalloc_ptr.
12433         * macroscope.h: (sal_macro_scope, user_macro_scope)
12434         (default_macro_scope): Return unique_xmalloc_ptr.
12435         * macroscope.c (sal_macro_scope, user_macro_scope)
12436         (default_macro_scope): Return unique_xmalloc_ptr.
12437         * macroexp.h (macro_expand, macro_expand_once): Return
12438         unique_xmalloc_ptr.
12439         * macroexp.c (macro_expand, macro_expand_once): Return
12440         unique_xmalloc_ptr.
12441         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12442         (info_macro_command, info_macros_command): Use
12443         unique_xmalloc_ptr.
12444         * compile/compile-c-support.c (write_macro_definitions): Use
12445         unique_xmalloc_ptr.
12446         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12447
12448 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12449
12450         * value.c (value_static_field): Assign field type instead of
12451         containing type when returning an optimized out value.
12452
12453 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12454
12455         * ft32-tdep.c (ft32_read_pc): Remove.
12456         (ft32_write_pc): Remove.
12457         (ft32_gdbarch_init): Update.
12458         * m32r-tdep.c (m32r_read_pc): Remove.
12459         (m32r_gdbarch_init): Update.
12460         * mep-tdep.c (mep_read_pc): Remove.
12461         (mep_gdbarch_init): Update.
12462         * microblaze-tdep.c (microblaze_write_pc): Remove.
12463         (microblaze_gdbarch_init): Update.
12464         * mn10300-tdep.c (mn10300_read_pc): Remove.
12465         (mn10300_write_pc): Remove.
12466         (mn10300_gdbarch_init): Update.
12467         * moxie-tdep.c (moxie_read_pc): Remove.
12468         (moxie_write_pc): Remove.
12469         (moxie_gdbarch_init): Update.
12470
12471 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12472
12473         * expprint.c (print_subexp_standard): Handle
12474         OP_F77_UNDETERMINED_ARGLIST.
12475         (dump_subexp_body_standard): Likewise.
12476
12477 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12478
12479         * target-descriptions.c (tdesc_element_visitor) Add empty
12480         implementations.
12481         (tdesc_type): Move make_gdb_type from here.
12482         (tdesc_type_builtin): Likewise.
12483         (tdesc_type_vector): Likewise.
12484         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12485         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12486         (make_gdb_type_union): Likewise.
12487         (make_gdb_type_flags): Likewise.
12488         (make_gdb_type_enum): Likewise.
12489         (make_gdb_type): New function.
12490         (tdesc_register_type): Use static make_gdb_type.
12491
12492 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12493
12494         * infcmd.c (default_print_one_register_info): Align natural-format
12495         column values consistently one under another.
12496         (pad_to_column): New function.
12497
12498 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12499
12500         * dwarf2read.c (dwarf2_physname): Move commment.
12501
12502 2018-02-01  Leszek Swirski  <leszeks@google.com>
12503
12504         * varobj.c (varobj_formatted_print_options): Allow recursive
12505         pretty printing if pretty printing is enabled.
12506
12507 2018-02-01  Leszek Swirski  <leszeks@google.com>
12508
12509         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12510         names after a structop as a filename.
12511
12512 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12513
12514         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12515         (arm_record_coproc_data_proc): Likewise.
12516
12517 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12518
12519         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12520
12521 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12522
12523         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12524         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12525
12526 2018-01-31  Pedro Alves  <palves@redhat.com>
12527
12528         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12529         * inflow.c (child_terminal_save_inferior): Wrap reference to
12530         tcgetpgrp in HAVE_TERMIOS_H.
12531         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12532         _WIN32.
12533         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12534         always iterate over all inferiors.
12535         (gdbsim_cntrl_c): Adjust.
12536         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12537
12538 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12539
12540         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12541         index type is objfile-owned if the element type is as well.
12542
12543 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12544
12545         GDB 8.1 released.
12546
12547 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12548
12549         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12550         "features/s390x-linux64.c".
12551         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12552         s390_linux32 and s390x_linux64.
12553         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12554         default tdesc.
12555         * s390-tdep.c: Include "features/s390-linux32.c" and
12556         "features/s390x-linux64.c".
12557         (s390_tdesc_valid): Add check for tdesc_has_registers.
12558         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12559         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12560         tdesc_s390x_linux64.
12561         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12562         tdesc_s390x_linux64 to...
12563         * s390-tdep.h: ...here.
12564
12565 2018-01-30  Pedro Alves  <palves@redhat.com>
12566
12567         PR gdb/13211
12568         * config.in, configure: Regenerate.
12569         * configure.ac: Check for getpgid.
12570         * go32-nat.c (go32_pass_ctrlc): New.
12571         (go32_target): Install it.
12572         * inf-child.c (inf_child_target): Install
12573         child_terminal_save_inferior, child_pass_ctrlc and
12574         child_interrupt.
12575         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12576         (inf_ptrace_target): No longer install it.
12577         * infcmd.c (interrupt_target_1): Adjust.
12578         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12579         (child_interrupt): Declare.
12580         (inferior::terminal_state): New.
12581         * inflow.c (struct terminal_info): Update comments.
12582         (inferior_process_group): Delete.
12583         (terminal_is_ours): Delete.
12584         (gdb_tty_state): New.
12585         (child_terminal_init): Adjust.
12586         (is_gdb_terminal, sharing_input_terminal_1)
12587         (sharing_input_terminal): New functions.
12588         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12589         Set the process's actual process group in the foreground if
12590         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12591         mark terminal as the inferior's if not sharing GDB's terminal.
12592         Don't check attach_flag.
12593         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12594         pass down a target_terminal_state.
12595         (child_terminal_save_inferior): New, factored out from ...
12596         (child_terminal_ours_1): ... this.  Handle
12597         target_terminal_state::is_ours_for_output.
12598         (child_interrupt, child_pass_ctrlc): New.
12599         (inflow_inferior_exit): Clear the inferior's terminal_state.
12600         (copy_terminal_info): Copy the inferior's terminal state.
12601         (_initialize_inflow): Remove reference to terminal_is_ours.
12602         * inflow.h (inferior_process_group): Delete.
12603         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12604         * procfs.c (procfs_target): Don't install procfs_interrupt.
12605         (procfs_interrupt): Delete.
12606         * remote.c (remote_serial_quit_handler): Adjust.
12607         (remote_interrupt): Remove ptid parameter.  Adjust.
12608         * target-delegates.c: Regenerate.
12609         * target.c: Include "terminal.h".
12610         (target_terminal::terminal_state): Rename to ...
12611         (target_terminal::m_terminal_state): ... this.
12612         (target_terminal::init): Adjust.
12613         (target_terminal::inferior): Adjust to per-inferior
12614         terminal_state.
12615         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12616         (target_terminal::ours, target_terminal::ours_for_output): Use
12617         target_terminal_is_ours_kind.
12618         (target_interrupt): Remove ptid parameter.  Adjust.
12619         (default_target_pass_ctrlc): Adjust.
12620         * target.h (target_ops::to_terminal_save_inferior): New field.
12621         (target_ops::to_interrupt): Remove ptid_t parameter.
12622         (target_interrupt): Remove ptid_t parameter.  Update comment.
12623         (target_pass_ctrlc): Update comment.
12624         * target/target.h (target_terminal_state): New scoped enum,
12625         factored out of ...
12626         (target_terminal::terminal_state): ... here.
12627         (target_terminal::inferior): Update comments.
12628         (target_terminal::restore_inferior): New.
12629         (target_terminal::is_inferior, target_terminal::is_ours)
12630         (target_terminal::is_ours_for_output): Adjust.
12631         (target_terminal::scoped_restore_terminal_state): Adjust to
12632         rename, and call restore_inferior() instead of inferior().
12633         (target_terminal::scoped_restore_terminal_state::m_state): Change
12634         type.
12635         (target_terminal::terminal_state): Rename to ...
12636         (target_terminal::m_terminal_state): ... this and change type.
12637
12638 2018-01-30  Pedro Alves  <palves@redhat.com>
12639
12640         * linux-nat.c (wait_for_signal): New function.
12641         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12642         directly.
12643         (async_terminal_is_ours)
12644         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12645         (linux_nat_add_target): Don't override
12646         to_terminal_inferior/to_terminal_ours.
12647
12648 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12649
12650         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12651
12652 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12653
12654         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12655         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12656         dwarf2_per_objfile_free here.
12657         (dwarf2_per_objfile_free): Remove.
12658         (_initialize_dwarf2_read): Don't register
12659         dwarf2_per_objfile_free as a registry cleanup.
12660
12661 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12662
12663         Avoid compilation errors in MinGW native builds
12664
12665         The error is triggered by including python-internal.h, and the
12666         error message is:
12667
12668              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12669                       from build-gnulib/import/math.h:27,
12670                       from d:/usr/Python26/include/pyport.h:235,
12671                       from d:/usr/Python26/include/Python.h:58,
12672                       from python/python-internal.h:94,
12673                       from python/py-arch.c:24:
12674              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12675         using ::hypot;
12676                 ^~~~~
12677
12678         This happens because Python headers define 'hypot' to expand t
12679         '_hypot' in the Windows builds.
12680         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12681         'hypoth'.  This avoids a compilation error.
12682
12683 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12684
12685         * MAINTAINERS (Write After Approval): Fix ordering.
12686
12687 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12688
12689         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12690
12691 2018-01-26  Alan Modra  <amodra@gmail.com>
12692
12693         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12694         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12695         Remove nop.  Make const.  Comment.
12696         (powerpc32_plt_stub_so_2): New.
12697         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12698         Correct count.  Update uses.
12699         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12700         Move common code reading PLT entry word.  Correct
12701         powerpc32_plt_stub PLT address calculation.
12702         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12703         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12704         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12705         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12706         (ppc64_standard_linkage8): Likewise.
12707         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12708         Correct insns description.
12709         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12710
12711 2018-01-24  Pedro Alves  <palves@redhat.com>
12712
12713         GCC PR libstdc++/83906
12714         * gdbtypes.c (operator==(const dynamic_prop &,
12715         const dynamic_prop &)): New.
12716         (operator==(const range_bounds &, const range_bounds &)): New.
12717         (check_types_equal): Use them instead of memcmp.
12718         * gdbtypes.h (operator==(const dynamic_prop &,
12719         const dynamic_prop &)): Declare.
12720         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12721         (operator==(const range_bounds &, const range_bounds &)): Declare.
12722         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12723
12724 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12725
12726         * s390-linux-tdep.c (s390_record_address_mask)
12727         (s390_record_calc_disp_common, s390_record_calc_disp)
12728         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12729         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12730         (s390_process_record): Move to s390-tdep.c.
12731         (s390_linux_init_abi_any): Adjust.
12732         * s390-tdep.c (s390_record_address_mask)
12733         (s390_record_calc_disp_common, s390_record_calc_disp)
12734         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12735         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12736         (s390_process_record): Moved from s390-linux-tdep.c
12737         (s390_gdbarch_init): Adjust.
12738
12739 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12740
12741         * s390-linux-nat.c (s390-tdep.h): New include.
12742         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12743         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12744         (ALLDEPFILES): Add s390-tdep.c.
12745         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12746         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12747         * s390-tdep.h: ...this.  New file.
12748         * s390-linux-tdep.c (s390-tdep.h): New include.
12749         (_initialize_s390_tdep): Rename to...
12750         (_initialize_s390_linux_tdep): ...this and adjust.
12751         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12752         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12753         s390-tdep.h.
12754         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12755         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12756         (s390_is_partial_instruction, s390_software_single_step)
12757         (is_non_branch_ril, s390_displaced_step_copy_insn)
12758         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12759         (s390_prologue_data, s390_addr, s390_store, s390_load)
12760         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12761         (s390_register_call_saved, s390_guess_tracepoint_registers)
12762         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12763         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12764         (s390_pseudo_register_name, s390_pseudo_register_type)
12765         (s390_pseudo_register_read, s390_pseudo_register_write)
12766         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12767         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12768         (s390_addr_bits_remove, s390_address_class_type_flags)
12769         (s390_address_class_type_flags_to_name)
12770         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12771         (s390_function_arg_float, s390_function_arg_vector)
12772         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12773         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12774         (s390_frame_align, s390_register_return_value, s390_return_value)
12775         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12776         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12777         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12778         (s390_trad_frame_prev_register, s390_unwind_cache)
12779         (s390_prologue_frame_unwind_cache)
12780         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12781         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12782         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12783         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12784         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12785         (s390_frame_base_address, s390_local_base_address)
12786         (s390_frame_base, s390_gcc_target_options)
12787         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12788         (s390_validate_reg_range, s390_tdesc_valid)
12789         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12790         * s390-tdep.c: ...this.  New file.
12791
12792 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12793
12794         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12795         (s390_process_record, s390_gdbarch_tdep_alloc)
12796         (s390_linux_init_abi_any): Use/set new hook.
12797
12798 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12799
12800         * s390-linux-tdep.c (osabi.h): New include.
12801         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12802         (s390_linux_init_abi_any): New functions.
12803         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12804
12805 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12806
12807         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12808         tdesc_has_registers check
12809
12810 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12811
12812         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12813         (s390_validate_reg_range): New macro.
12814         (s390_gdbarch_init): Adjust.
12815
12816 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12817
12818         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12819         (s390_gdbarch_tdep_alloc): Adjust.
12820         (s390_gdbarch_init): Adjust.
12821
12822 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12823
12824         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12825         <have_tdb>: Change type to bool.
12826         (s390_gdbarch_tdep_alloc): Adjust.
12827         (s390_gdbarch_init): Adjust.
12828
12829 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12830
12831         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12832         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12833         (s390_gdbarch_tdep_alloc): New function.
12834         (s390_gdbarch_init): Allocate tdep at start and use its fields
12835         instead of separate variables.
12836
12837 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12838
12839         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12840         when looking for cached gdbarch and add comment for remaining.
12841
12842 2018-01-22  Pedro Alves  <palves@redhat.com>
12843             Sergio Durigan Junior  <sergiodj@redhat.com>
12844
12845         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12846         case.
12847
12848 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12849
12850         * MAINTAINERS: Update my company e-mail address.
12851
12852 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12853
12854         * regcache.c (cooked_write_test): New function.
12855         (_initialize_regcache): Register the test.
12856
12857 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12858
12859         * ia64-tdep.c (ia64_pseudo_register_read): Call
12860         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12861         * m32c-tdep.c (m32c_cat_read): Likewise.
12862         (m32c_r3r2r1r0_read): Likewise.
12863         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12864         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12865
12866 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12867
12868         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12869         method raw_read instead of regcache_raw_read.
12870         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12871         * arm-tdep.c (arm_neon_quad_read): Likewise.
12872         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12873         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12874         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12875         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12876         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12877         (i386_pseudo_register_read_into_value): Likewise.
12878         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12879         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12880         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12881         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12882         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12883         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12884         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12885         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12886         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12887
12888 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12889
12890         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12891         * configure.tgt: Remove target mt.
12892         * mt-tdep.c: Remove.
12893         * regcache.c (cooked_read_test): Remove the check for mt.
12894
12895 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12896
12897         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12898         instead of gdbarch_pseudo_register_read_value.
12899
12900 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12901
12902         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12903         language is Ada.
12904
12905 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12906
12907         * linespec.c (create_sals_line_offset): Remove code that preserved
12908         the symtab_and_line's line number.
12909
12910 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12911
12912         * varobj.c (varobj_create): Don't set valid_block when creating a
12913         floating varobj.
12914
12915 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12916
12917         * varobj.c (varobj_create): Remove out of date comment.
12918
12919 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12920
12921         PR mi/20395
12922         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12923         updating innermost block.
12924         * parse.c (innermost_block_tracker::update): Take extra type
12925         parameter, and check types match before updating innermost block.
12926         (write_dollar_variable): Update innermost block for registers.
12927         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12928         (innermost_block_tracker::innermost_block_tracker): Initialise
12929         m_types member.
12930         (innermost_block_tracker::reset): Take type parameter.
12931         (innermost_block_tracker::update): Take type parameter, and pass
12932         type through as needed.
12933         (innermost_block_tracker::m_types): New member.
12934         * varobj.c (varobj_create): Pass type when reseting innermost
12935         block.
12936
12937 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12938
12939         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12940         * ada-lang.c (resolve_subexp): Likewise.
12941         * breakpoint.c (set_breakpoint_condition) Likewise.
12942         (watch_command_1) Likewise.
12943         * c-exp.y (variable): Likewise.
12944         * d-exp.y (PrimaryExpression): Likewise.
12945         * f-exp.y (variable): Likewise.
12946         * go-exp.y (variable): Likewise.
12947         * m2-exp.y (variable): Likewise.
12948         * objfiles.c (objfile::~objfile): Likewise.
12949         * p-exp.y (variable): Likewise.
12950         * parse.c (innermost_block): Change type.
12951         * parser-defs.h (class innermost_block_tracker): New.
12952         (innermost_block): Change to innermost_block_tracker.
12953         * printcmd.c (display_command): Switch to innermost_block API.
12954         (do_one_display): Likewise.
12955         * rust-exp.y (do_one_display): Likewise.
12956         * symfile.c (clear_symtab_users): Likewise.
12957         * varobj.c (varobj_create): Switch to innermost_block API, replace
12958         use of innermost_block with block stored on varobj object.
12959
12960 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12961
12962         * expression.h (innermost_block): Remove declaration.
12963         * varobj.c: Add 'parser-defs.h' include.
12964
12965 2018-01-19  Tom Tromey  <tom@tromey.com>
12966
12967         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12968         symbols in the static and global blocks.
12969
12970 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12971
12972         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12973         gdb_ptrace.h, and move including gdb_wait.h ...
12974         * nat/linux-ptrace.h: ... to here.
12975
12976 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12977
12978         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12979         inf_ptrace_detach_success.
12980         (inf_ptrace_detach_success): Add inferior parameter, use it
12981         instead of inferior_ptid, pass it to detach_inferior.
12982         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12983         parameter.
12984         * inferior.c (detach_inferior): Add overload that takes an
12985         inferior object.
12986         * inferior.h (detach_inferior): Likewise.
12987         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12988         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12989         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12990
12991 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12992
12993         * target.h (struct target_ops) <to_detach>: Add inferior
12994         parameter.
12995         (target_detach): Likewise.
12996         * target.c (dispose_inferior): Pass inferior down.
12997         (target_detach): Pass inferior down.  Assert that it is equal to
12998         the current inferior.
12999         * aix-thread.c (aix_thread_detach): Pass inferior down.
13000         * corefile.c (core_file_command): Pass current_inferior() down.
13001         * corelow.c (core_detach): Add inferior parameter.
13002         * darwin-nat.c (darwin_detach): Likewise.
13003         * gnu-nat.c (gnu_detach): Likewise.
13004         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13005         * infcmd.c (detach_command): Pass current_inferior() down to
13006         target_detach.
13007         * infrun.c (follow_fork_inferior): Pass parent_inf to
13008         target_detach.
13009         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13010         target_detach.
13011         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13012         * linux-thread-db.c (thread_db_detach): Likewise.
13013         * nto-procfs.c (procfs_detach): Likewise.
13014         * procfs.c (procfs_detach): Likewise.
13015         * record.c (record_detach): Likewise.
13016         * record.h (struct inferior): Forward-declare.
13017         (record_detach): Add inferior parameter.
13018         * remote-sim.c (gdbsim_detach): Likewise.
13019         * remote.c (remote_detach_1): Likewise.
13020         (remote_detach): Likewise.
13021         (extended_remote_detach): Likewise.
13022         * sol-thread.c (sol_thread_detach): Likewise.
13023         * target-debug.h (target_debug_print_inferior_p): New macro.
13024         * target-delegates.c: Re-generate.
13025         * top.c (kill_or_detach): Pass inferior down to target_detach.
13026         * windows-nat.c (windows_detach): Add inferior parameter.
13027
13028 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13029
13030         * target.h (struct target_ops) <to_detach>: Remove args
13031         parameter.
13032         (target_detach): Likewise.
13033         * target.c (dispose_inferior): Adjust.
13034         (target_detach): Remove args parameter, adjust.
13035         * aix-thread.c (aix_thread_detach): Adjust.
13036         * corefile.c (core_file_command): Adjust.
13037         * corelow.c (core_detach): Adjust.
13038         * darwin-nat.c (darwin_detach): Adjust.
13039         * gnu-nat.c (gnu_detach): Adjust.
13040         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13041         * infcmd.c (detach_command): Adjust
13042         * infrun.c (follow_fork_inferior): Adjust.
13043         (handle_vfork_child_exec_or_exit): Adjust.
13044         * linux-fork.c (linux_fork_detach): Remove args parameter.
13045         * linux-fork.h (linux_fork_detach): Likewise.
13046         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13047         * linux-thread-db.c (thread_db_detach): Likewise.
13048         * nto-procfs.c (procfs_detach): Likewise.
13049         * procfs.c (procfs_detach): Likewise.
13050         (do_detach): Remove signo parameter.
13051         * record.c (record_detach): Remove args parameter.
13052         * record.h (record_detach): Likewise.
13053         * remote-sim.c (gdbsim_detach): Likewise.
13054         * remote.c (remote_detach_1): Likewise.
13055         (remote_detach): Likewise.
13056         (extended_remote_detach): Likewise.
13057         * sol-thread.c (sol_thread_detach): Likewise.
13058         * target-delegates.c: Re-generate.
13059         * top.c (struct qt_args) <args>: Remove field.
13060         (kill_or_detach): Don't pass args.
13061         (quit_force): Don't set args.
13062         * windows-nat.c (windows_detach): Remove args parameter.
13063
13064 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13065
13066         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13067         (arm_linux_init_abi): Install it.
13068
13069 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13070
13071         * osabi.c (gdb_osabi_names): Extend the regexp for
13072         arm-linux-gnueabihf.
13073
13074 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13075
13076         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13077         m_abbrevs.
13078         (abbrev_table::add_abbrev): Update.
13079         (abbrev_table::lookup_abbrev): Update.
13080
13081 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13082
13083         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13084
13085 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13086
13087         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13088         to "std::string".
13089
13090 2018-01-17  Tom Tromey  <tom@tromey.com>
13091
13092         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13093
13094 2018-01-17  Tom Tromey  <tom@tromey.com>
13095
13096         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13097         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13098         (create_array_type_with_stride): Update.
13099         * dwarf2read.c (set_die_type): Update.
13100
13101 2018-01-17  Tom Tromey  <tom@tromey.com>
13102
13103         * dwarf2read.c (delayed_method_info): Remove typedef.
13104         (dwarf2_cu::method_info): Now a std::vector.
13105         (add_to_method_list): Update.
13106         (free_delayed_list): Remove.
13107         (compute_delayed_physnames): Update.
13108         (process_full_comp_unit, process_full_type_unit): Clear the method
13109         list.  Remove cleanups.
13110         (psymtab_include_file_name): Add name_holder parameter.  Use
13111         unique_xmalloc_ptr.
13112         (dwarf_decode_lines): Update.
13113
13114 2018-01-17  Tom Tromey  <tom@tromey.com>
13115             Simon Marchi  <simon.marchi@ericsson.com>
13116
13117         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13118         (dwarf2_per_objfile::free_cached_comp_units)
13119         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13120         (init_cutu_and_read_dies_no_follow): Update.
13121         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13122         (dwarf2_cu::~dwarf2_cu): New.
13123         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13124         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13125
13126 2018-01-17  Tom Tromey  <tom@tromey.com>
13127             Simon Marchi  <simon.marchi@ericsson.com>
13128
13129         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13130         (struct die_reader_specs) <abbrev_table>: New member.
13131         (struct abbrev_table): Add constructor.
13132         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13133         <abbrev_obstack>: Now an auto_obstack.
13134         (abbrev_table_up): New typedef.
13135         (init_cu_die_reader): Add abbrev_table parameter.
13136         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13137         Add result_dwo_abbrev_table.
13138         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13139         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13140         Update.
13141         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13142         parameter.
13143         (skip_children): Update.
13144         (abbrev_table::alloc_abbrev): Rename from
13145         abbrev_table_alloc_abbrev.
13146         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13147         (abbrev_table::lookup_abbrev): Rename from
13148         abbrev_table_lookup_abbrev.
13149         (abbrev_table_read_table): Return abbrev_table_up.
13150         (abbrev_table_free, abbrev_table_free_cleanup)
13151         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13152         (load_partial_dies): Update.
13153
13154 2018-01-17  Tom Tromey  <tom@tromey.com>
13155
13156         * dwarf2read.c (dwarf2_compute_name): Update comment.
13157         (read_func_scope, read_variable): Update.
13158         (new_symbol): Remove.
13159         (new_symbol_full): Rename to new_symbol.
13160
13161 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13162
13163         PR gdb/16577
13164         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13165         a warning instead of throwing an error, set section size to 0 and return
13166         NULL.
13167         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13168
13169 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13170
13171         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13172         std::string.
13173         (linux_ptrace_attach_fail_reason_string): Likewise.
13174         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13175         Likewise.
13176         (linux_ptrace_attach_fail_reason_string): Likewise.
13177         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13178
13179 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13180
13181         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13182
13183 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13184
13185         PR gdb/21559
13186         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13187         checking for fs_base/gs_base fields in struct user_regs_struct.
13188         * configure: Regenerate.
13189
13190 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13191
13192         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13193         function.
13194         (aarch64_linux_init_abi): Install it to gdbarch hook
13195         gcc_target_options.
13196
13197 2018-01-15  Pedro Alves  <palves@redhat.com>
13198
13199         * common/signals-state-save-restore.c
13200         (save_original_signals_state): Fix typos.
13201
13202 2017-01-12  Tom Tromey  <tom@tromey.com>
13203             Sergio Durigan Junior  <sergiodj@redhat.com>
13204
13205         * Makefile.in (install-only): Install gdb-add-index.
13206
13207 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13208
13209         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13210
13211 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13212
13213         * infrun.c (keep_going_pass_signal): Clear step-over info when
13214         insert_breakpoints fails.
13215
13216 2018-01-11  Pedro Alves  <palves@redhat.com>
13217
13218         PR gdb/22583
13219         * infrun.c (resume): Rename to ...
13220         (resume_1): ... this.
13221         (resume): Reimplement as wrapper around resume_1.
13222
13223 2018-01-11  Pedro Alves  <palves@redhat.com>
13224
13225         PR remote/22597
13226         * remote.c (remote_parse_stop_reply): Default to the last-set
13227         general thread instead of to 'magic_null_ptid'.
13228
13229 2018-01-10  Pedro Alves  <palves@redhat.com>
13230
13231         * language.h (language_get_symbol_name_matcher): Rename ...
13232         (get_symbol_name_matcher): ... this.
13233         * language.c (language_get_symbol_name_matcher): Ditto.
13234         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13235         callers adjusted.
13236
13237 2018-01-10  Pedro Alves  <palves@redhat.com>
13238
13239         PR gdb/22670
13240         * dwarf2read.c
13241         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13242         Adjust to use language_get_symbol_name_matcher instead of
13243         language_defn::la_get_symbol_name_matcher.
13244         * language.c (language_get_symbol_name_matcher): If in Ada mode
13245         and the lookup name is a verbatim match, return Ada's matcher.
13246         * language.h (language_get_symbol_name_matcher): Adjust comment.
13247         (ada_lookup_name_info::verbatim_p):: New method.
13248
13249 2018-01-10  Pedro Alves  <palves@redhat.com>
13250
13251         PR gdb/22670
13252         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13253         minsym's language is language_auto or language_cplus, pass down
13254         language_ada instead.
13255         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13256
13257 2018-01-10  Pedro Alves  <palves@redhat.com>
13258
13259         PR gdb/22670
13260         * minsyms.c (linkage_name_str): New function.
13261         (iterate_over_minimal_symbols): Use it.
13262
13263 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13264
13265         * NEWS: Document that 'info proc' now works on FreeBSD.
13266
13267 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13268
13269         * configure.ac: Check for kinfo_getfile in libutil.
13270         * configure: Regenerate.
13271         * config.in: Regenerate.
13272         * fbsd-nat.c: Include "fbsd-tdep.h".
13273         (fbsd_fetch_cmdline): New.
13274         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13275         rather than calling error.
13276         (fbsd_info_proc): New.
13277         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13278         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13279         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13280
13281 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13282
13283         * fbsd-nat.c (struct free_deleter): Remove.
13284         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13285
13286 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13287
13288         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13289         NULL for an empty pathname.
13290
13291 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13292
13293         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13294         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13295         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13296         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13297         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13298         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13299         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13300         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13301         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13302         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13303         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13304         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13305         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13306         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13307         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13308
13309 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13310
13311         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13312         (gnu_xfer_auxv): New function.
13313         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13314         TARGET_OBJECT_AUXV.
13315
13316 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13317             Simon Marchi  <simon.marchi@ericsson.com>
13318
13319         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13320         common/selftest.c.
13321         (COMMON_OBS): Remove selftest.o.
13322         * configure.ac: Append selftest-arch.c and common/selftest.c to
13323         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13324         * configure: Re-generated.
13325         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13326         GDB_SELF_TEST.
13327         (maintenance_info_selftests): Likewise.
13328
13329 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13330
13331         * ada-valprint.c (val_print_packed_array_elements): Use
13332         proper number of elements when printing an array indexed
13333         by an enumeration type.
13334
13335 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13336
13337         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13338         (dw2_get_file_names_reader): Adjust.
13339         (lookup_dwo_signatured_type): Adjust.
13340         (lookup_dwp_signatured_type): Adjust.
13341         (lookup_signatured_type): Adjust.
13342         (create_type_unit_group): Adjust.
13343         (get_type_unit_group): Adjust.
13344         (process_psymtab_comp_unit_reader): Adjust.
13345         (build_type_psymtabs_reader): Adjust.
13346         (scan_partial_symbols): Adjust.
13347         (add_partial_symbol): Adjust.
13348         (add_partial_subprogram): Adjust.
13349         (peek_die_abbrev): Adjust.
13350         (fixup_go_packaging): Adjust.
13351         (process_imported_unit_die): Adjust.
13352         (dwarf2_compute_name): Adjust.
13353         (dwarf2_physname): Adjust.
13354         (read_import_statement): Adjust.
13355         (handle_DW_AT_stmt_list): Adjust.
13356         (read_file_scope): Adjust.
13357         (read_func_scope): Adjust.
13358         (read_lexical_block_scope): Adjust.
13359         (read_call_site_scope): Adjust.
13360         (read_variable): Adjust.
13361         (dwarf2_rnglists_process): Adjust.
13362         (dwarf2_ranges_process): Adjust.
13363         (dwarf2_ranges_read): Adjust.
13364         (dwarf2_get_pc_bounds): Adjust.
13365         (dwarf2_record_block_ranges): Adjust.
13366         (dwarf2_add_field): Adjust.
13367         (dwarf2_add_member_fn): Adjust.
13368         (read_structure_type): Adjust.
13369         (process_structure_scope): Adjust.
13370         (read_enumeration_type): Adjust.
13371         (read_array_type): Adjust.
13372         (mark_common_block_symbol_computed): Adjust.
13373         (read_common_block): Adjust.
13374         (read_namespace_type): Adjust.
13375         (read_namespace): Adjust.
13376         (read_module_type): Adjust.
13377         (read_tag_pointer_type): Adjust.
13378         (read_tag_ptr_to_member_type): Adjust.
13379         (read_tag_string_type): Adjust.
13380         (read_subroutine_type): Adjust.
13381         (read_typedef): Adjust.
13382         (read_base_type): Adjust.
13383         (attr_to_dynamic_prop): Adjust.
13384         (read_subrange_type): Adjust.
13385         (read_unspecified_type): Adjust.
13386         (dwarf2_read_abbrevs): Adjust.
13387         (load_partial_dies): Adjust.
13388         (read_partial_die): Adjust.
13389         (find_partial_die): Adjust.
13390         (guess_partial_die_structure_name): Adjust.
13391         (fixup_partial_die): Adjust.
13392         (read_attribute_value): Adjust.
13393         (read_addr_index): Adjust.
13394         (read_addr_index_from_leb128): Adjust.
13395         (read_str_index): Adjust.
13396         (dwarf2_string_attr): Adjust.
13397         (get_debug_line_section): Adjust.
13398         (dwarf_decode_line_header): Adjust.
13399         (lnp_state_machine::check_line_address): Adjust.
13400         (dwarf_decode_lines_1): Adjust.
13401         (dwarf_decode_lines): Adjust.
13402         (dwarf2_start_symtab): Adjust.
13403         (var_decode_location): Adjust.
13404         (new_symbol_full): Adjust.
13405         (dwarf2_const_value_data): Adjust.
13406         (dwarf2_const_value_attr): Adjust.
13407         (dwarf2_const_value): Adjust.
13408         (die_type): Adjust.
13409         (die_containing_type): Adjust.
13410         (build_error_marker_type): Adjust.
13411         (lookup_die_type): Adjust.
13412         (guess_full_die_structure_name): Adjust.
13413         (anonymous_struct_prefix): Adjust.
13414         (determine_prefix): Adjust.
13415         (dwarf2_name): Adjust.
13416         (follow_die_ref_or_sig): Adjust.
13417         (follow_die_offset): Adjust.
13418         (follow_die_ref): Adjust.
13419         (follow_die_sig_1): Adjust.
13420         (follow_die_sig): Adjust.
13421         (get_signatured_type): Adjust.
13422         (get_DW_AT_signature_type): Adjust.
13423         (decode_locdesc): Adjust.
13424         (dwarf_decode_macros): Adjust.
13425         (cu_debug_loc_section): Adjust.
13426         (fill_in_loclist_baton): Adjust.
13427         (dwarf2_symbol_mark_computed): Adjust.
13428         (init_one_comp_unit): Don't assign
13429         dwarf2_cu::dwarf2_per_objfile.
13430         (set_die_type): Adjust.
13431
13432 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13433
13434         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13435         <dwarf2_per_objfile>: New field.
13436         (dwarf2_per_objfile): Remove global.
13437         (get_dwarf2_per_objfile): New function.
13438         (set_dwarf2_per_objfile): New function.
13439         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13440         dwarf2_per_objfile.
13441         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13442         (read_abbrev_offset): Likewise.
13443         (read_indirect_string): Likewise.
13444         (read_indirect_line_string): Likewise.
13445         (read_indirect_string_at_offset): Likewise.
13446         (read_indirect_string_from_dwz): Likewise.
13447         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13448         dwarf2_per_objfile.
13449         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13450         (create_all_comp_units): Change objfile parameter to
13451         dwarf2_per_objfile.
13452         (create_all_type_units): Likewise.
13453         (process_queue): Add dwarf2_per_objfile parameter.
13454         (read_and_check_comp_unit_head): Likewise.
13455         (lookup_dwo_unit_in_dwp): Likewise.
13456         (get_dwp_file): Likewise.
13457         (process_cu_includes): Likewise.
13458         (struct free_dwo_file_cleanup_data): New struct.
13459         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13460         set_dwarf2_per_objfile.
13461         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13462         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13463         context, adjust calls.
13464         (dw2_instantiate_symtab): Likewise.
13465         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13466         (dw2_get_cu): Likewise.
13467         (create_cu_from_index_list): Change objfile parameter to
13468         dwarf2_per_objfile.
13469         (create_cus_from_index_list): Get dwarf2_per_objfile from
13470         context, adjust calls.
13471         (create_cus_from_index): Likewise.
13472         (create_signatured_type_table_from_index): Change objfile
13473         parameter to dwarf2_per_objfile.
13474         (create_signatured_type_table_from_debug_names): Change objfile
13475         parameter to dwarf2_per_objfile.
13476         (create_addrmap_from_index): Likewise.
13477         (create_addrmap_from_aranges): Likewise.
13478         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13479         (dw2_setup): Remove.
13480         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13481         context.
13482         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13483         get_dwarf2_per_objfile.
13484         (dw2_forget_cached_source_info): Likewise.
13485         (dw2_map_symtabs_matching_filename): Likewise.
13486         (struct dw2_symtab_iterator) <index>: Remove.
13487         <dwarf2_per_objfile>: New field.
13488         (dw2_symtab_iter_init): Replace index parameter with
13489         dwarf2_per_objfile.
13490         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13491         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13492         (dw2_print_stats): Likewise.
13493         (dw2_dump): Likewise.
13494         (dw2_expand_symtabs_for_function): Likewise.
13495         (dw2_expand_all_symtabs): Likewise.
13496         (dw2_expand_symtabs_with_fullname): Likewise.
13497         (dw2_expand_marked_cus): Replace index and objfile parameters
13498         with dwarf2_per_objfile.
13499         (dw_expand_symtabs_matching_file_matcher): Add
13500         dwarf2_per_objfile parameter and adjust calls.
13501         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13502         adjust calls.
13503         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13504         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13505         adjust calls.
13506         (create_cus_from_debug_names_list): Replace objfile parameter
13507         with dwarf2_per_objfile and adjust calls.
13508         (create_cus_from_debug_names): Likewise.
13509         (dwarf2_read_debug_names): Likewise.
13510         (mapped_debug_names::namei_to_name): Adjust call.
13511         (dw2_debug_names_iterator::next): Likewise.
13512         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13513         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13514         (dw2_debug_names_dump): Likewise.
13515         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13516         (dw2_debug_names_expand_symtabs_matching): Likewise.
13517         (dwarf2_initialize_objfile): Likewise.
13518         (dwarf2_build_psymtabs): Likewise.
13519         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13520         this_cu.
13521         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13522         (read_and_check_comp_unit_head): Likewise.
13523         (read_abbrev_offset): Likewise.
13524         (create_debug_type_hash_table): Likewise.
13525         (create_debug_types_hash_table): Likewise.
13526         (create_all_type_units): Replace objfile parameter with
13527         dwarf2_per_objfile.
13528         (add_type_unit): Add dwarf2_per_objfile parameter.
13529         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13530         with dwarf2_per_objfile.
13531         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13532         (lookup_dwp_signatured_type): Likewise.
13533         (lookup_signatured_type): Likewise.
13534         (read_cutu_die_from_dwo): Likewise.
13535         (init_tu_and_read_dwo_dies): Likewise.
13536         (init_cutu_and_read_dies): Likewise.
13537         (init_cutu_and_read_dies_no_follow): Likewise.
13538         (allocate_type_unit_groups_table): Add objfile parameter.
13539         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13540         (get_type_unit_group): Likewise.
13541         (process_psymtab_comp_unit): Update call.
13542         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13543         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13544         (print_tu_stats): Likewise.
13545         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13546         in void* parameter.
13547         (build_type_psymtabs): Change objfile parameter to
13548         dwarf2_per_objfile.
13549         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13550         passed in void* parameter.
13551         (process_skeletonless_type_units): Change objfile parameter to
13552         dwarf2_per_objfile.
13553         (set_partial_user): Likewise.
13554         (dwarf2_build_psymtabs_hard): Likewise.
13555         (read_comp_units_from_section): Likewise.
13556         (create_all_comp_units): Likewise.
13557         (scan_partial_symbols): Update calls.
13558         (add_partial_symbol): Likewise.
13559         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13560         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13561         (process_queue): Add dwarf2_per_objfile parameter.
13562         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13563         (compute_compunit_symtab_includes): Likewise.
13564         (process_cu_includes): Add dwarf2_per_objfile parameter.
13565         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13566         (process_full_type_unit): Likewise.
13567         (process_imported_unit_die): Update call.
13568         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13569         (read_file_scope): Likewise.
13570         (allocate_dwo_file_hash_table): Add objfile parameter.
13571         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13572         (create_cus_hash_table): Likewise.
13573         (create_dwp_hash_table): Likewise.
13574         (create_dwo_unit_in_dwp_v1): Likewise.
13575         (create_dwp_v2_section): Likewise.
13576         (create_dwo_unit_in_dwp_v2): Likewise.
13577         (lookup_dwo_unit_in_dwp): Likewise.
13578         (try_open_dwop_file): Likewise.
13579         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13580         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13581         cleanup to include a reference to dwarf2_per_objfile.
13582         (open_dwp_file): Add dwarf2_per_objfile parameter.
13583         (open_and_init_dwp_file): Likewise.
13584         (get_dwp_file): Likewise.
13585         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13586         (queue_and_load_all_dwo_tus): Update call.
13587         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13588         data.
13589         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13590         (dwarf2_ranges_process): Likewise.
13591         (dwarf2_get_pc_bounds): Likewise.
13592         (mark_common_block_symbol_computed): Likewise.
13593         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13594         (dwarf2_read_abbrevs): Update call.
13595         (read_partial_die): Use dwarf2_per_objfile from cu.
13596         (find_partial_die): Likewise.
13597         (fixup_partial_die): Likewise.
13598         (read_attribute_value): Likewise.
13599         (read_indirect_string_at_offset_from): Add objfile parameter.
13600         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13601         parameter.
13602         (read_indirect_string_from_dwz): Add objfile parameter.
13603         (read_indirect_string): Add objfile parameter.
13604         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13605         (read_addr_index): Use dwarf2_per_objfile from cu.
13606         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13607         call dw2_setup.
13608         (read_str_index): Use dwarf2_per_objfile from cu.
13609         (get_debug_line_section): Likewise.
13610         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13611         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13612         (new_symbol_full): Use dwarf2_per_objfile from cu.
13613         (build_error_marker_type): Likewise.
13614         (lookup_die_type): Likewise.
13615         (determine_prefix): Likewise.
13616         (follow_die_offset): Likewise.
13617         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13618         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13619         (dwarf2_fetch_die_type_sect_off): Likewise.
13620         (dwarf2_get_die_type): Likewise.
13621         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13622         (get_signatured_type): Likewise.
13623         (get_DW_AT_signature_type): Likewise.
13624         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13625         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13626         (cu_debug_loc_section): Likewise.
13627         (fill_in_loclist_baton): Likewise.
13628         (dwarf2_symbol_mark_computed): Likewise.
13629         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13630         dwarf2_per_objfile.
13631         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13632         parameter.
13633         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13634         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13635         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13636         (set_die_type): Use dwarf2_free_objfile from cu.
13637         (get_die_type_at_offset): Likewise.
13638         (dwarf2_per_objfile_free): Don't assign global variable.
13639         (debug_names) <constructor>: Add dwarf2_per_objfile
13640         parameter, update m_debugstrlookup construction.
13641         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13642         parameter.
13643         <m_dwarf2_per_objfile>: New field.
13644         <lookup>: Use m_dwarf2_per_objfile.
13645         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13646         (psyms_seen_size): Likewise.
13647         (write_gdbindex): Replace objfile parameter with
13648         dwarf2_per_objfile.
13649         (write_debug_names): Likewise.
13650         (write_psymtabs_to_index): Likewise.
13651         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13652         calls.
13653
13654 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13655
13656         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13657         <dwarf2_per_objfile>: New field.
13658         (struct dwarf2_per_cu_data) <objfile>: Remove.
13659         <dwarf2_per_objfile>: New field.
13660         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13661         of objfile.
13662         (create_signatured_type_table_from_index): Likewise.
13663         (create_debug_type_hash_table): Likewise.
13664         (fill_in_sig_entry_from_dwo_entry): Likewise.
13665         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13666         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13667         objfile.
13668         (create_partial_symtab): Access objfile through
13669         dwarf2_per_objfile.
13670         (process_psymtab_comp_unit_reader): Likewise.
13671         (read_comp_units_from_section): Likewise.
13672         (scan_partial_symbols): Likewise.
13673         (add_partial_symbol): Likewise.
13674         (add_partial_subprogram): Likewise.
13675         (peek_die_abbrev): Likewise.
13676         (fixup_go_packaging): Likewise.
13677         (process_full_comp_unit): Likewise.
13678         (process_full_type_unit): Likewise.
13679         (process_imported_unit_die): Likewise.
13680         (dwarf2_compute_name): Likewise.
13681         (dwarf2_physname): Likewise.
13682         (read_import_statement): Likewise.
13683         (create_cus_hash_table): Assign dwarf2_physname instead of
13684         objfile.
13685         (read_func_scope): Access objfile through dwarf2_per_objfile.
13686         (read_lexical_block_scope): Likewise.
13687         (read_call_site_scope): Likewise.
13688         (read_variable): Likewise.
13689         (dwarf2_rnglists_process): Likewise.
13690         (dwarf2_ranges_process): Likewise.
13691         (dwarf2_ranges_read): Likewise.
13692         (dwarf2_record_block_ranges): Likewise.
13693         (dwarf2_add_field): Likewise.
13694         (dwarf2_add_member_fn): Likewise.
13695         (read_structure_type): Likewise.
13696         (process_structure_scope): Likewise.
13697         (read_enumeration_type): Likewise.
13698         (read_array_type): Likewise.
13699         (read_common_block): Likewise.
13700         (read_namespace_type): Likewise.
13701         (read_namespace): Likewise.
13702         (read_module_type): Likewise.
13703         (read_tag_pointer_type): Likewise.
13704         (read_tag_ptr_to_member_type): Likewise.
13705         (read_tag_string_type): Likewise.
13706         (read_subroutine_type): Likewise.
13707         (read_typedef): Likewise.
13708         (read_base_type): Likewise.
13709         (attr_to_dynamic_prop): Likewise.
13710         (read_subrange_type): Likewise.
13711         (read_unspecified_type): Likewise.
13712         (load_partial_dies): Likewise.
13713         (read_partial_die): Likewise.
13714         (find_partial_die): Likewise.
13715         (guess_partial_die_structure_name): Likewise.
13716         (fixup_partial_die): Likewise.
13717         (read_attribute_value): Likewise.
13718         (read_addr_index_from_leb128): Likewise.
13719         (dwarf2_read_addr_index): Likewise.
13720         (dwarf2_string_attr): Likewise.
13721         (lnp_state_machine::check_line_address): Likewise.
13722         (dwarf_decode_lines_1): Likewise.
13723         (dwarf_decode_lines): Likewise.
13724         (dwarf2_start_symtab): Likewise.
13725         (var_decode_location): Likewise.
13726         (new_symbol_full): Likewise.
13727         (dwarf2_const_value_data): Likewise.
13728         (dwarf2_const_value_attr): Likewise.
13729         (dwarf2_const_value): Likewise.
13730         (die_type): Likewise.
13731         (die_containing_type): Likewise.
13732         (lookup_die_type): Likewise.
13733         (guess_full_die_structure_name): Likewise.
13734         (anonymous_struct_prefix): Likewise.
13735         (dwarf2_name): Likewise.
13736         (follow_die_ref_or_sig): Likewise.
13737         (follow_die_offset): Likewise.
13738         (follow_die_ref): Likewise.
13739         (dwarf2_fetch_die_loc_sect_off): Likewise.
13740         (dwarf2_fetch_constant_bytes): Likewise.
13741         (dwarf2_fetch_die_type_sect_off): Likewise.
13742         (dwarf2_get_die_type): Likewise.
13743         (follow_die_sig): Likewise.
13744         (decode_locdesc): Likewise.
13745         (dwarf2_per_cu_objfile): Likewise.
13746         (dwarf2_per_cu_text_offset): Likewise.
13747         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13748         objfile.
13749         (set_die_type): Access objfile through
13750         dwarf2_per_objfile.
13751
13752 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13753
13754         * valprint.c (converted_character_d): Remove typedef.
13755         (DEF_VEC_O (converted_character_d)): Remove.
13756         (count_next_character): Use std::vector.
13757         (print_converted_chars_to_obstack): Likewise.
13758         (generic_printstr): Likewise.
13759
13760 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13761
13762         * xml-support.h (struct gdb_xml_value): Add constructor.
13763         <value>: Change type to unique_xmalloc_ptr.
13764         (gdb_xml_value_s): Remove typedef.
13765         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13766         (gdb_xml_element_start_handler): Change parameter type to
13767         std::vector.
13768         (xml_find_attribute): Likewise.
13769         * xml-support.c (xml_find_attribute): Change parameter type to
13770         std::vector and adjust.
13771         (gdb_xml_values_cleanup): Remove.
13772         (gdb_xml_parser::start_element): Adjust to std::vector.
13773         (xinclude_start_include): Change paraeter type to std::vector
13774         and adjust.
13775         * btrace.c (check_xml_btrace_version): Likewise.
13776         (parse_xml_btrace_block): Likewise.
13777         (parse_xml_btrace_pt_config_cpu): Likewise.
13778         (parse_xml_btrace_pt): Likewise.
13779         (parse_xml_btrace_conf_bts): Likewise.
13780         (parse_xml_btrace_conf_pt): Likewise.
13781         * memory-map.c (memory_map_start_memory): Likewise.
13782         (memory_map_start_property): Likewise.
13783         * osdata.c (osdata_start_osdata): Likewise.
13784         (osdata_start_item): Likewise.
13785         (osdata_start_column): Likewise.
13786         * remote.c (start_thread): Likewise.
13787         * solib-aix.c (library_list_start_library): Likewise.
13788         (library_list_start_list): Likewise.
13789         * solib-svr4.c (library_list_start_library): Likewise.
13790         (svr4_library_list_start_list): Likewise.
13791         * solib-target.c (library_list_start_segment): Likewise.
13792         (library_list_start_section): Likewise.
13793         (library_list_start_library): Likewise.
13794         (library_list_start_list): Likewise.
13795         * tracepoint.c (traceframe_info_start_memory): Likewise.
13796         (traceframe_info_start_tvar): Likewise.
13797         * xml-syscall.c (syscall_start_syscall): Likewise.
13798         * xml-tdesc.c (tdesc_start_target): Likewise.
13799         (tdesc_start_feature): Likewise.
13800         (tdesc_start_reg): Likewise.
13801         (tdesc_start_union): Likewise.
13802         (tdesc_start_struct): Likewise.
13803         (tdesc_start_flags): Likewise.
13804         (tdesc_start_enum): Likewise.
13805         (tdesc_start_field): Likewise.
13806         (tdesc_start_enum_value): Likewise.
13807         (tdesc_start_vector): Likewise.
13808
13809 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13810
13811         * extension.h (struct xmethod_worker) <clone>: Remove.
13812         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13813         Remove.
13814         (python_xmethod_worker::clone): Remove.
13815         * valops.c (find_overload_match): Use std::move instead of
13816         clone.
13817
13818 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13819
13820         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13821         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13822         <free_xmethod_worker_data>: Remove.
13823         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13824         <get_xmethod_arg_types>: Remove.
13825         <get_xmethod_result_type>: Remove.
13826         <invoke_xmethod>: Remove.
13827         * extension.c (new_xmethod_worker): Remove.
13828         (clone_xmethod_worker): Remove.
13829         (get_matching_xmethod_workers): Return void, pass std::vector by
13830         pointer.
13831         (get_xmethod_arg_types): Rename to...
13832         (xmethod_worker::get_arg_types): ... this, and adjust.
13833         (get_xmethod_result_type): Rename to...
13834         (xmethod_worker::get_result_type): ... this, and adjust.
13835         (invoke_xmethod): Remove.
13836         (free_xmethod_worker): Remove.
13837         (free_xmethod_worker_vec): Remove.
13838         * extension.h (enum ext_lang_rc): Move here from
13839         extension-priv.h.
13840         (struct xmethod_worker): Add constructor and destructor.
13841         <data>: Remove.
13842         <value>: Remove.
13843         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13844         virtual pure methods.
13845         <get_arg_types, get_result_type>: New methods.
13846         (xmethod_worker_ptr): Remove typedef.
13847         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13848         (xmethod_worker_vec): Remove typedef.
13849         (xmethod_worker_up): New typedef.
13850         (invoke_xmethod): Remove.
13851         (clone_xmethod_worker): Remove.
13852         (free_xmethod_worker): Remove.
13853         (free_xmethod_worker_vec): Remove.
13854         (get_xmethod_arg_types): Remove.
13855         (get_xmethod_result_type): Remove.
13856         * valops.c (find_method_list): Use std::vector, don't use
13857         intermediate vector.
13858         (value_find_oload_method_list): Use std::vector.
13859         (find_overload_match): Use std::vector.
13860         (find_oload_champ): Use std::vector.
13861         * value.c (value_free): Use operator delete.
13862         (value_of_xmethod): Rename to...
13863         (value_from_xmethod): ... this.  Don't assign
13864         xmethod_worker::value, take rvalue-reference.
13865         (result_type_of_xmethod): Adjust.
13866         (call_xmethod): Adjust.
13867         * value.h: Include extension.h.
13868         (struct xmethod_worker): Don't forward-declare.
13869         (value_of_xmethod): Rename to...
13870         (value_from_xmethod): ... this, take rvalue-reference.
13871         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13872         (struct python_xmethod_worker): ... this, add constructor and
13873         destructor.
13874         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13875         (gdbpy_free_xmethod_worker_data): Rename to...
13876         (python_xmethod_worker::~python_xmethod_worker): ... this and
13877         adjust.
13878         (gdbpy_clone_xmethod_worker_data): Rename to...
13879         (python_xmethod_worker::clone): ... this and adjust.
13880         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13881         temporary vector.
13882         (gdbpy_get_xmethod_arg_types): Rename to...
13883         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13884         (gdbpy_get_xmethod_result_type): Rename to...
13885         (python_xmethod_worker::do_get_result_type): ... this and
13886         adjust.
13887         (gdbpy_invoke_xmethod): Rename to...
13888         (python_xmethod_worker::invoke): ... this and adjust.
13889         (new_python_xmethod_worker): Rename to...
13890         (python_xmethod_worker::python_xmethod_worker): ... this and
13891         adjust.
13892         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13893         Remove.
13894         (gdbpy_free_xmethod_worker_data): Remove.
13895         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13896         (gdbpy_get_xmethod_arg_types): Remove.
13897         (gdbpy_get_xmethod_result_type): Remove.
13898         (gdbpy_invoke_xmethod): Remove.
13899         * python/python.c (python_extension_ops): Remove obsolete
13900         callbacks.
13901
13902 2018-01-05  Pedro Alves  <palves@redhat.com>
13903
13904         PR gdb/18653
13905         * common/signals-state-save-restore.c
13906         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13907         find a custom handler preinstalled, instead of internal erroring.
13908         But only warn if !quiet.
13909         * common/signals-state-save-restore.h
13910         (save_original_signals_state): New parameter 'quiet'.
13911         * main.c (captured_main_1): Move save_original_signals_state call
13912         after option handling, and pass QUIET.
13913
13914 2018-01-05  Pedro Alves  <palves@redhat.com>
13915
13916         * spu-tdep.c (spu_catch_start): Pass
13917         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13918
13919 2018-01-05  Pedro Alves  <palves@redhat.com>
13920
13921         PR gdb/22670
13922         * ada-lang.c (literal_symbol_name_matcher): New function.
13923         (ada_get_symbol_name_matcher): Use it for
13924         symbol_name_match_type::SEARCH_NAME.
13925         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13926         it down instead of assuming symbol_name_match_type::FULL.
13927         * block.h (block_lookup_symbol): New parameter 'match_type'.
13928         * c-valprint.c (print_unpacked_pointer): Use
13929         lookup_symbol_search_name instead of lookup_symbol.
13930         * compile/compile-object-load.c (get_out_value_type): Pass down
13931         symbol_name_match_type::SEARCH_NAME.
13932         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13933         symbol_name_match_type::FULL.
13934         * cp-support.c (cp_get_symbol_name_matcher): Handle
13935         symbol_name_match_type::SEARCH_NAME.
13936         * infrun.c (insert_exception_resume_breakpoint): Use
13937         lookup_symbol_search_name.
13938         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13939         * psymtab.c (maintenance_check_psymtabs): Use
13940         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13941         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13942         SYMBOL_SEARCH_NAME.
13943         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13944         if symbol_name_match_type::SEARCH_NAME.
13945         (lookup_symbol_in_language): Pass down
13946         symbol_name_match_type::FULL.
13947         (lookup_symbol_search_name): New.
13948         (lookup_language_this): Pass down
13949         symbol_name_match_type::SEARCH_NAME.
13950         (lookup_symbol_aux, lookup_local_symbol): New parameter
13951         'match_type'.  Pass it down.
13952         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13953         (lookup_symbol_search_name): New declaration.
13954         (lookup_symbol_in_block): New 'match_type' parameter.
13955
13956 2018-01-05  Pedro Alves  <palves@redhat.com>
13957
13958         PR gdb/22670
13959         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13960         ada_lookup_symbol.
13961         (ada_lookup_symbol): Reimplement in terms of
13962         ada_lookup_symbol_list, bits factored out from
13963         ada_lookup_encoded_symbol.
13964
13965 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13966
13967         * ada-exp.y (write_object_renaming): When subscripting an array
13968         using a symbol as the index, pass the block in call to
13969         ada_lookup_encoded_symbol when looking that symbol up.
13970
13971 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13972
13973         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13974         TYPE_INDEX_TYPE.
13975
13976 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13977
13978         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13979         the case where VALUE_LVAL (val0) is not lval_memory.
13980
13981 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13982
13983         * ada-valprint.c (print_optional_low_bound): Handle
13984         character-indexed array printing like boolean-indexed array
13985         printing.
13986
13987 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13988
13989         * NEWS: Create a new section for the next release branch.
13990         Rename the section of the current branch, now that it has
13991         been cut.
13992
13993 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13994
13995         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13996         * version.in: Bump version to 8.1.50.DATE-git.
13997
13998 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13999
14000         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14001         Add field.
14002         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14003         Add field.
14004         (default_exception_support_info) <catch_handlers_sym>: Add field.
14005         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14006         (ada_exception_name_addr_1): Add "catch handlers" handling.
14007         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14008         Update all callers.
14009         (create_excep_cond_exprs) <ex>: Add parameter.
14010         (re_set_exception): Update create_excep_cond_exprs call.
14011         (print_it_exception, print_one_exception, print_mention_exception)
14012         (print_recreate_exception): Add "catch handler" handling.
14013         (allocate_location_catch_handlers, re_set_catch_handlers)
14014         (check_status_catch_handlers, print_it_catch_handlers)
14015         (print_one_catch_handlers, print_mention_catch_handlers)
14016         (print_recreate_catch_handlers): New function.
14017         (catch_handlers_breakpoint_ops): New variable.
14018         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14019         Add parameter.  Add "catch handler" handling.
14020         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14021         Add "catch handler" handling.
14022         (ada_exception_catchpoint_cond_string): Add "catch handler"
14023         handling.
14024         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14025         call.
14026         (catch_ada_handlers_command): New function.
14027         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14028         operations structure.
14029         (_initialize_ada_language): Add "catch handlers" command entry.
14030         * NEWS: Document "catch handlers" feature.
14031
14032 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14033
14034         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14035         account when creating the array type of the slice.
14036         (ada_value_slice): Likewise.
14037
14038 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14039
14040         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14041         New enum value.
14042         (create_array_type_with_stride): Add byte_stride_prop parameter.
14043         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14044         New parameter.  Update all callers in this file.
14045         (array_type_has_dynamic_stride): New function.
14046         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14047         of arrays with dynamic byte strides.
14048         * dwarf2read.c (read_array_type): Add support for dynamic
14049         DW_AT_byte_stride attributes.
14050
14051 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14052
14053         * dwarf2read.c (read_unspecified_type): Treat
14054         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14055
14056 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14057
14058         Update copyright year range in all GDB files.
14059
14060 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14061
14062         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14063         and gdb/testsuite/gdb.base/step-line.c.
14064
14065 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14066
14067         * copyright.py (main): Dump the contents of
14068         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14069         even if BY_HAND is empty.
14070
14071 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14072
14073         * top.c (print_gdb_version): Update Copyright year in version
14074         message.
14075
14076 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14077
14078         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14079
14080 For older changes see ChangeLog-2017.
14081 \f
14082 Local Variables:
14083 mode: change-log
14084 left-margin: 8
14085 fill-column: 74
14086 version-control: never
14087 coding: utf-8
14088 End: