]> Git Repo - binutils.git/blob - gdb/ChangeLog
Remove ancient workaround
[binutils.git] / gdb / ChangeLog
1 2018-10-01  Gary Benson <[email protected]>
2
3         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
4         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
5         prfpregset_t instead of gdb_prfpregset_t.
6         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
7         * configure, config.in: Rebuild.
8
9 2018-10-01  Gary Benson <[email protected]>
10
11         * common/gdb_proc_service.h: New file, factored out from...
12         * gdb_proc_service.h: Moved common code to the above file.
13         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
14
15 2018-10-01  Gary Benson <[email protected]>
16
17         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
18         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
19
20 2018-10-01  Gary Benson <[email protected]>
21
22         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
23         (AC_CHECK_HEADERS): Check for linux/elf.h.
24         * configure, config.in: Rebuild.
25         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
26         doesn't define elf_fpregset_t.
27
28 2018-10-01  Gary Benson <[email protected]>
29
30         * gdb_proc_service.h: Whitespace change.
31
32 2018-10-01  Tom Tromey  <[email protected]>
33
34         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
35         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
36         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
37
38 2018-10-01  Tom Tromey  <[email protected]>
39
40         * README: Minor change.
41
42 2018-09-30  Pedro Alves  <[email protected]>
43
44         * darwin-nat-info.c (darwin_debug_regions_recurse)
45         (info_mach_exceptions_command): Remove unused local variables.
46         * darwin-nat.c (darwin_decode_notify_message)
47         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
48         (darwin_stop_inferior, darwin_setup_exceptions)
49         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
50         (darwin_nat_target::attach, darwin_nat_target::detach)
51         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
52         local variables.
53         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
54         variables.
55
56 2018-09-29  Tom Tromey  <[email protected]>
57
58         * README: Remove some leftover text.
59
60 2018-09-29  Tom Tromey  <[email protected]>
61
62         * PROBLEMS: Rewrite.
63         * README: Update.
64
65 2018-09-28  John Baldwin  <[email protected]>
66
67         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
68         case with explicit breakpoint kind.
69         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
70         'additional_info' and related logic.
71         (riscv_debug_breakpoints): New variable.
72         (riscv_breakpoint_kind_from_pc): Use the length of the existing
73         instruction to determine the breakpoint kind.
74         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
75         flag.  Update description of 'set/show riscv
76         use-compressed-breakpoints' flag.
77
78 2018-09-28  Andrew Burgess  <[email protected]>
79
80         (NEWS): Mention changes to frame related commands.
81         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
82         (add_prefix_cmd_suppress_notification): New function.
83         (add_com_suppress_notification): Call
84         add_cmd_suppress_notification.
85         * command.h (add_cmd_suppress_notification): Declare.
86         (add_prefix_cmd_suppress_notification): Declare.
87         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
88         (parse_frame_specification): Moved from stack.c, with
89         simplification to handle a single argument.
90         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
91         switch to the selected frame.  Add a header comment.
92         * stack.c: Remove 'safe-ctype.h' include.
93         (find_frame_for_function): Add declaration.
94         (find_frame_for_address): New function.
95         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
96         (frame_selection_by_function_completer): New function.
97         (info_frame_command): Rename to...
98         (info_frame_command_core): ...this, and update parameter types.
99         (select_frame_command): Rename to...
100         (select_frame_command_core): ...this, and update parameter types.
101         (frame_command): Rename to...
102         (frame_command_core): ...this, and update parameter types.
103         (class frame_command_helper): New class to wrap implementations of
104         frame related sub-commands.
105         (frame_apply_cmd_list): New static global.
106         (frame_cmd_list): Make static.
107         (select_frame_cmd_list): New global for sub-commands.
108         (info_frame_cmd_list): New global for sub-commands.
109         (_initialize_stack): Register sub-commands for 'frame',
110         'select-frame', and 'info frame'.  Update 'frame apply' commands
111         to use frame_apply_cmd_list.  Move function local static
112         frame_apply_list to file static frame_apply_cmd_list for
113         consistency.
114         * stack.h (select_frame_command): Delete declarationn.
115         (select_frame_for_mi): Declare new function.
116
117 2018-09-26  Andrew Burgess  <[email protected]>
118
119         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
120         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
121         and NOP.
122
123 2018-09-26  Simon Marchi  <[email protected]>
124
125         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
126
127 2018-09-26  Tom Tromey  <[email protected]>
128
129         * valops.c (auto_abandon): Remove dead code.
130
131 2018-09-26  Tom Tromey  <[email protected]>
132
133         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
134
135 2018-09-24  Tom Tromey  <[email protected]>
136
137         * common/pathstuff.c (get_standard_cache_dir): Make
138         "xdg_cache_home" and "home" const.
139         * top.c (init_history): Make "tmpenv" const.
140         * main.c (get_init_files): Make "homedir" const.
141
142 2018-09-23  Tom Tromey  <[email protected]>
143
144         PR python/18852:
145         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
146
147 2018-09-23  Tom Tromey  <[email protected]>
148
149         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
150         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
151         * python/python-internal.h (gdbpy_handle_exception): Declare.
152         * python/py-utils.c (gdbpy_handle_exception): New function.
153
154 2018-09-23  Tom Tromey  <[email protected]>
155
156         PR python/17284:
157         * python/py-type.c (typy_template_argument): Check for negative
158         argument number.
159
160 2018-09-23  Tom Tromey  <[email protected]>
161
162         PR python/14062:
163         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
164
165 2018-09-23  Tom Tromey  <[email protected]>
166
167         PR python/18170:
168         * python/py-value.c (valpy_int): Allow conversion from pointer
169         type.
170
171 2018-09-23  Tom Tromey  <[email protected]>
172
173         PR python/20126:
174         * python/py-value.c (valpy_int): Respect type sign.
175
176 2018-09-23  Tom Tromey  <[email protected]>
177
178         PR python/18352;
179         * python/py-value.c (valpy_float): Allow conversions from int or
180         char.
181         (valpy_int, valpy_long): Allow conversions from float.
182
183 2018-09-23  Tom Tromey  <[email protected]>
184
185         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
186         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
187
188 2018-09-23  Rainer Orth  <[email protected]>
189
190         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
191         __sighndlr.
192         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
193
194 2018-08-02  Jon Turney  <[email protected]>
195
196         * windows-nat.c (windows_nat_target::wait): Remove a spurious
197         target_terminal::ours().
198
199 2018-09-23  Simon Marchi  <[email protected]>
200
201         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
202         of vl to ULONGEST.
203
204 2018-09-21  Yacov Simhony  <[email protected]>
205
206         * breakpoint.c (update_inserted_breakpoint_locations): Remove
207         redundant condition.
208
209 2018-09-20  Rainer Orth  <[email protected]>
210
211         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
212
213         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
214         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
215         * sol-thread.c (ps_pdmodel): Don't guard definition.
216
217         * procfs.c: Fix formatting.
218
219         * procfs.c (sysset_t_alloc): Remove.
220         (create_procinfo): Use XNEW instead of sysset_t_alloc.
221         (procfs_debug_inferior): Likewise.
222         (procfs_set_exec_trap): Likewise.
223         (proc_set_traced_sysentry): Don't allocate argp dynamically.
224         (proc_set_traced_sysexit): Likewise.
225
226         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
227         (dead_procinfo): Likewise.
228         (proc_warn): Likewise.
229         (proc_error): Likewise.
230         (proc_get_LDT_entry): Likewise.
231         (do_attach): Likewise.
232         (procfs_target::pid_to_str): Likewise.
233         (iterate_over_mappings): Likewise.
234
235         * procfs.c (create_procinfo): Fix ARI warning.
236         (proc_get_status): Likewise.
237         (proc_stop_process): Likewise.
238         (proc_run_process): Likewise.
239         (proc_kill): Likewise.
240         (proc_get_LDT_entry): Likewise.
241         (procfs_find_LDT_entry): Likewise.
242         (proc_update_threads): Likewise.
243         (proc_iterate_over_threads): Likewise.
244         (do_attach): Likewise.
245         (procfs_xfer_memory): Likewise.
246         (invalidate_cache): Likewise.
247         (procfs_target::resume): Likewise.
248         (procfs_init_inferior): Likewise.
249         (procfs_set_exec_trap): Likewise.
250         (procfs_target::thread_alive): Likewise.
251         (procfs_target::pid_to_exec_file): Likewise.
252         (iterate_over_mappings): Likewise.
253         (procfs_target::make_corefile_notes): Likewise.
254         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
255
256         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
257         (procfs_find_LDT_entry): Likewise.
258         * sol-thread.c (ps_lgetLDT): Likewise.
259
260 2018-09-20  Rainer Orth  <[email protected]>
261
262         PR tdep/17903
263         * procfs.c (procfs_target): Declare pid_to_exec_file.
264         (procfs_target::pid_to_exec_file): New.
265
266 2018-09-20  Rainer Orth  <[email protected]>
267
268         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
269         renaming.
270         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
271         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
272
273 2018-09-20  Rainer Orth  <[email protected]>
274
275         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
276         (supply_fpregset, fill_fpregset): Move ...
277         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
278         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
279         Remove references to ioctl-based procfs.
280         Include <sys/reg.h>.
281         Remove PR_MODEL_NATIVE guards.
282         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
283         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
284
285 2018-09-19  Xavier Roirand  <[email protected]>
286
287         PR gdb/20981:
288         * solib-darwin.c (darwin_get_dyld_bfd): New function.
289         (darwin_solib_get_all_image_info_addr_at_init): Update call.
290         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
291
292 2018-09-19  John Baldwin  <[email protected]>
293
294         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
295         (fbsd_print_sockaddr_in6): Likewise.
296
297 2018-09-19  Richard Bunt  <[email protected]>
298             Chris January  <[email protected]>
299
300         * eval.c (skip_undetermined_arglist): Skip argument list helper.
301         (evaluate_subexp_standard): Return a dummy type when
302         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
303         OP_F77_UNDETERMINED_ARGLIST case.
304         * expression.h (enum noside): Update comment.
305
306 2018-09-19  George Vasick <[email protected]>
307
308         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
309
310 2018-09-19  Stefan Teleman <[email protected]>
311             April Chin <[email protected]>
312             Rainer Orth  <[email protected]>
313
314         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
315         uint_t lwpid_t.
316         (create_procinfo): Print pids in /proc without leading zeros.
317
318 2018-09-18  Sandra Loosemore  <[email protected]>
319
320         * nios2-tdep.c (nios2_gcc_target_options): New.
321         (nios2_gdb_arch_init): Install new hook.
322
323 2018-09-18  Simon Marchi  <[email protected]>
324
325         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
326         New file.
327         * update-gnulib.sh: Apply patch.
328         * configure: Re-generate.
329
330 2018-09-18  John Baldwin  <[email protected]>
331
332         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
333         description.  Make "info proc" command descriptions more
334         consistent.
335
336 2018-09-18  John Baldwin  <[email protected]>
337
338         * NEWS: Mention 'info proc files' command.
339
340 2018-09-18  John Baldwin  <[email protected]>
341
342         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
343         descriptors for IP_FILES and IP_ALL.
344
345 2018-09-18  John Baldwin  <[email protected]>
346
347         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
348         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
349         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
350         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
351         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
352         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
353         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
354         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
355         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
356         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
357         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
358         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
359         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
360         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
361         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
362         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
363         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
364         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
365         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
366         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
367         (struct fbsd_sockaddr_un): New types.
368         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
369         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
370         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
371         (fbsd_core_info_proc_files): New functions.
372         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
373         IP_ALL.
374         * fbsd-tdep.h (fbsd_info_proc_files_header)
375         (fbsd_info_proc_files_entry): New.
376
377 2018-09-18  John Baldwin  <[email protected]>
378
379         * defs.h (enum info_proc_what) [IP_FILES]: New value.
380         * infcmd.c (info_proc_cmd_files): New function.
381         (_initialize_infcmd): Register 'info proc files' command.
382
383 2018-09-18  John Baldwin  <[email protected]>
384
385         * gnulib/aclocal-m4-deps.mk: Re-generate.
386         * gnulib/aclocal.m4: Re-generate.
387         * gnulib/config.in: Re-generate.
388         * gnulib/configure: Re-generate.
389         * gnulib/import/Makefile.am: Re-generate.
390         * gnulib/import/Makefile.in: Re-generate.
391         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
392         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
393         * gnulib/import/arpa_inet.in.h: New file.
394         * gnulib/import/inet_ntop.c: New file.
395         * gnulib/import/m4/arpa_inet_h.m4: New file.
396         * gnulib/import/m4/inet_ntop.m4: New file.
397         * gnulib/import/m4/netinet_in_h.m4: New file.
398         * gnulib/import/m4/socklen.m4: New file.
399         * gnulib/import/m4/sockpfaf.m4: New file.
400         * gnulib/import/m4/stdalign.m4: New file.
401         * gnulib/import/m4/sys_uio_h.m4: New file.
402         * gnulib/import/netinet_in.in.h: New file.
403         * gnulib/import/stdalign.in.h: New file.
404         * gnulib/import/sys_socket.c: New file.
405         * gnulib/import/sys_socket.in.h: New file.
406         * gnulib/import/sys_uio.in.h: New file.
407         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
408         module.
409
410 2018-09-18  John Baldwin  <[email protected]>
411
412         * gnulib/aclocal-m4-deps.mk: New file.
413         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
414         deterministically.
415
416 2018-09-18  John Baldwin  <[email protected]>
417
418         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
419         KVE_PATH.
420
421 2018-09-18  Tom Tromey  <[email protected]>
422
423         * compile/compile-object-load.c (struct
424         link_hash_table_cleanup_data): Add constructor and destructor.
425         Use DISABLE_COPY_AND_ASSIGN.
426         (~link_hash_table_cleanup_data): Rename from
427         link_hash_table_free.  Now a destructor.
428         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
429
430 2018-09-18  Tom Tromey  <[email protected]>
431
432         * compile/compile-object-run.c (do_module_cleanup): Use delete.
433         * compile/compile-object-load.c (struct munmap_list): Move to
434         header file.
435         (munmap_list::add): Rename from munmap_list_add; rewrite.
436         (munmap_list::~munmap_list): Rename from munmap_list_free.
437         (munmap_listp_free_cleanup): Remove.
438         (compile_object_load): Update.
439         * compile/compile-object-load.h (struct munmap_list): Move from
440         compile-object-load.c.  Rewrite.
441
442 2018-09-18  Alan Hayward  <[email protected]>
443
444         * aarch64-tdep.c (pass_in_v): Use register size.
445         (aarch64_extract_return_value): Likewise.
446         (aarch64_store_return_value): Likewise.
447
448 2018-09-18  Rainer Orth  <[email protected]>
449
450         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
451         rlim_t.
452
453 2018-09-17  Philippe Waroquiers  <[email protected]>
454
455         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
456         Fix short help line.
457
458 2018-09-17  Tom Tromey  <[email protected]>
459
460         PR python/20445:
461         * configure: Rebuild.
462         * configure.ac: Conditionally use -DNDEBUG for Python.
463
464 2018-09-17  Tom Tromey  <[email protected]>
465
466         * configure: Rebuild.
467         * configure.ac: Use gmp as a library dependency when checking for
468         mpfr.
469
470 2018-09-17  Pedro Alves  <[email protected]>
471
472         * python/py-inferior.c (find_inferior_object): Delete.
473
474 2018-09-17  Simon Marchi  <[email protected]>
475
476         * compile/compile-cplus-types.c
477         (compile_cplus_instance::enter_scope): Don't use new_scope after
478         std::move.
479
480 2018-09-17  Tom Tromey  <[email protected]>
481
482         * common/pathstuff.c (get_standard_cache_dir): Use
483         ~/Library/Caches on macOS.
484         * common/pathstuff.h (get_standard_cache_dir): Update comment.
485
486 2018-09-17  Simon Marchi  <[email protected]>
487
488         PR python/23669
489         * breakpoint.c (commands_cmd_element): New.
490         (_initialize_breakpoint): Assign commands_cmd_element.
491         * breakpoint.h (commands_cmd_element): New.
492         * cli/cli-script.c (while_cmd_element, if_command,
493         define_cmd_element): New.
494         (command_name_equals): Remove.
495         (process_next_line): Compare commands by pointer, not by name.
496         (_initialize_cli_script): Assign the various cmd_list_element
497         variables.
498         * compile/compile.c (compile_cmd_element): New.
499         (_initialize_compile): Assign compile_cmd_element.
500         * compile/compile.h (compile_cmd_element): New.
501         * guile/guile.c (guile_cmd_element): New.
502         (install_gdb_commands): Assign guile_cmd_element.
503         * guile/guile.h (guile_cmd_element): New.
504         * python/python.c (python_cmd_element): New.
505         (_initialize_python): Assign python_cmd_element.
506         * python/python.h (python_cmd_element): New.
507         * tracepoint.c (while_stepping_cmd_element): New.
508         (_initialize_tracepoint): Assign while_stepping_cmd_element.
509         * tracepoint.h (while_stepping_cmd_element): New.
510
511 2018-09-17  Tom Tromey  <[email protected]>
512
513         * infrun.c (save_infcall_suspend_state): Return
514         infcall_suspend_state_up.
515         (save_infcall_control_state): Return infcall_control_state_up.
516         * inferior.h (save_infcall_suspend_state)
517         (save_infcall_control_state): Declare later.  Return unique
518         pointers.
519
520 2018-09-17  Tom Tromey  <[email protected]>
521
522         * infrun.c (struct stop_context): Declare constructor,
523         destructor, "changed" method.
524         (stop_context::stop_context): Rename from save_stop_context.
525         (stop_context::~stop_context): Rename from
526         release_stop_context_cleanup.
527         (normal_stop): Update.
528         (stop_context::changed): Rename from stop_context_changed.  Return
529         bool.
530
531 2018-09-17  Tom Tromey  <[email protected]>
532
533         * inferior.h (struct infcall_suspend_state_deleter): New.
534         (infcall_suspend_state_up): New typedef.
535         (struct infcall_control_state_deleter): New.
536         (infcall_control_state_up): New typedef.
537         (make_cleanup_restore_infcall_suspend_state)
538         (make_cleanup_restore_infcall_control_state): Don't declare.
539         * infcall.c (call_function_by_hand_dummy): Update.
540         * infrun.c (do_restore_infcall_suspend_state_cleanup)
541         (make_cleanup_restore_infcall_suspend_state): Remove.
542         (do_restore_infcall_control_state_cleanup)
543         (make_cleanup_restore_infcall_control_state): Remove.
544
545 2018-09-17  Tom Tromey  <[email protected]>
546
547         * gdbthread.h (struct thread_control_state): Add initializer.
548         (class thread_info) <control>: Remove initializer.
549         * inferior.h (struct inferior_control_state): Add initializer.
550         (class inferior) <control>: Remove initializer.
551         (exit_inferior_1): Update.
552         * infrun.c (struct infcall_control_state): Add constructors.
553         (save_infcall_control_state): Use new.
554         (restore_infcall_control_state, discard_infcall_control_state):
555         Use delete.
556
557 2018-09-17  Tom Tromey  <[email protected]>
558
559         * infrun.c (struct infcall_suspend_state) <registers>: Now a
560         unique_ptr.
561         <siginfo_data>: Now a unique_xmalloc_ptr.
562         (save_infcall_suspend_state, restore_infcall_suspend_state)
563         (discard_infcall_suspend_state)
564         (get_infcall_suspend_state_regcache): Update.
565
566 2018-09-17  Tom Tromey  <[email protected]>
567
568         * gdbthread.h (struct thread_suspend_state): Add initializers.
569         (class thread_info) <suspend>: Remove initializer.
570         * infrun.c (struct infcall_suspend_state): Add initializers.
571         (save_infcall_suspend_state): Use new.
572         (discard_infcall_suspend_state): Use delete.
573
574 2018-09-16  Tom Tromey  <[email protected]>
575
576         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
577         Remove.
578         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
579         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
580         (py_varobj_iter_new): Likewise.
581         (py_varobj_get_iterator): Use gdbpy_ref.
582
583 2018-09-16  Tom Tromey  <[email protected]>
584
585         * python/py-threadevent.c (py_get_event_thread): Simplify.
586         * python/py-inferior.c (infpy_thread_from_thread_handle):
587         Return immediately after calling thread_to_thread_object.  Use
588         Py_RETURN_NONE.
589         (thread_to_thread_object): Set the exception on a NULL return.
590
591 2018-09-16  Simon Marchi  <[email protected]>
592
593         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
594
595 2018-09-16  Tom Tromey  <[email protected]>
596
597         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
598         Remove.
599
600 2018-09-16  Tom Tromey  <[email protected]>
601
602         * python/python-internal.h (thread_to_thread_object): Change
603         return type.
604         * python/py-inferior.c (thread_to_thread_object): Return a new
605         reference.
606         (infpy_thread_from_thread_handle): Update.
607         * python/py-infthread.c (gdbpy_selected_thread): Update.
608         * python/py-stopevent.c (create_stop_event_object): Update.
609         * python/py-threadevent.c (py_get_event_thread): Return a new
610         reference.
611         (py_get_event_thread): Update.
612         * python/py-event.h (py_get_event_thread): Change return type.
613         * python/py-continueevent.c (create_continue_event_object):
614         Update.
615
616 2018-09-16  Tom Tromey  <[email protected]>
617
618         * python/py-progspace.c (pspy_get_objfiles): Update.
619         * python/python-internal.h (objfile_to_objfile_object): Change
620         return type.
621         * python/py-newobjfileevent.c (create_new_objfile_event_object):
622         Update.
623         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
624         Update.
625         * python/python.c (gdbpy_get_current_objfile): Update.
626         (gdbpy_objfiles): Update.
627         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
628         Update.
629         (objfile_to_objfile_object): Return a new reference.
630         * python/py-symtab.c (stpy_get_objfile): Update.
631         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
632         Update.
633
634 2018-09-16  Tom Tromey  <[email protected]>
635
636         * python/py-inferior.c (infpy_get_progspace): Update.
637         * python/python-internal.h (pspace_to_pspace_object): Change
638         return type.
639         * python/py-newobjfileevent.c
640         (create_clear_objfiles_event_object): Update.
641         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
642         Update.
643         * python/python.c (gdbpy_get_current_progspace): Update.
644         (gdbpy_progspaces): Update.
645         * python/py-progspace.c (pspace_to_pspace_object): Return a new
646         reference.
647         * python/py-objfile.c (objfpy_get_progspace): Update.
648         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
649         Update.
650
651 2018-09-16  Tom Tromey  <[email protected]>
652
653         * python/lib/gdb/__init__.py (current_progspace, objfiles)
654         (solib_name, block_for_pc, find_pc_line): New functions.
655         (execute_unwinders): Update.
656         * python/py-block.c (gdbpy_block_for_pc): Remove.
657         * python/py-inferior.c (infpy_get_progspace): New function.
658         (inferior_object_getset) <progspace>: Add.
659         * python/py-progspace.c (pspy_objfiles): Rewrite.
660         (pspy_solib_name, pspy_block_for_pc)
661         (pspy_find_pc_line, pspy_is_valid): New functions.
662         (progspace_object_methods): Add entries for solib_name,
663         block_for_pc, find_pc_line, is_valid.
664         * python/python-internal.h (gdbpy_block_for_pc)
665         (build_objfiles_list): Don't declare.
666         * python/python.c: Don't include solib.h.
667         (gdbpy_solib_name, gdbpy_find_pc_line)
668         (gdbpy_get_current_progspace, build_objfiles_list)
669         (gdbpy_objfiles): Remove.
670         (GdbMethods) <current_progspace, objfiles, block_for_pc,
671         solib_name, find_pc_line>: Remove entries.
672
673 2018-09-16  Tom Tromey  <[email protected]>
674
675         * top.c (new_ui_command): Use GNU style for metasyntactic
676         variables.
677         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
678         variables.
679         * maint.c (maintenance_translate_address): Remove "<>" around
680         text.
681         * interps.c (interpreter_exec_cmd): Use GNU style for
682         metasyntactic variables.
683         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
684         metasyntactic variables.
685         * tracepoint.c (tfind_range_command): Use GNU style for
686         metasyntactic variables.
687         (tfind_outside_command): Likewise.
688         (_initialize_tracepoint): Likewise.
689         * remote.c (extended_remote_target::create_inferior): Use GNU
690         style for metasyntactic variables.
691         * sparc64-tdep.c (adi_examine_command): Use GNU style for
692         metasyntactic variables.
693         (adi_assign_command): Likewise.
694
695 2018-09-16  Tom Tromey  <[email protected]>
696
697         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
698         metasyntactic variables.  Print message if no disassembler options
699         are available.
700
701 2018-09-15  Tom Tromey  <[email protected]>
702
703         * infcmd.c (get_inferior_args): Return const char *.
704         * inferior.h (get_inferior_args): Return type now const.
705         * linux-tdep.c (linux_fill_prpsinfo): Update.
706         * procfs.c (procfs_target::make_corefile_notes): Update.
707
708 2018-09-07  Tom Tromey  <[email protected]>
709
710         * python/python.c (execute_gdb_command): Call bpstat_do_actions
711         inside the TRY.
712
713 2018-09-14  Sandra Loosemore  <[email protected]>
714
715         * nios2-tdep.c (nios2_type_align): New.
716         (nios2_gdb_arch_init): Install type_align hook.
717
718 2018-09-10  Andrew Burgess  <[email protected]>
719
720         * eval.c (fake_method::fake_method): Call xzalloc directly for a
721         type that is neither object file owned, nor gdbarch owned.
722         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
723         gdbarch is non-NULL.
724         (alloc_type_instance): Allocate non-objfile owned types on the
725         gdbarch obstack.
726         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
727         using TYPE_ALLOC to ensure memory is allocated on the correct
728         obstack.
729         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
730         obstack, or the gdbarch obstack.
731         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
732
733 2018-09-14  Tom Tromey  <[email protected]>
734
735         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
736         block.
737
738 2018-09-14  Tom Tromey  <[email protected]>
739
740         * nat/fork-inferior.c (get_startup_shell): Remove "static".
741
742 2018-09-13  Tom Tromey  <[email protected]>
743
744         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
745         static.
746
747 2018-09-13  Tom Tromey  <[email protected]>
748
749         * exec.c (try_open_exec_file): Use std::string.
750
751 2018-09-13  Tom Tromey  <[email protected]>
752
753         * utils.h (gdb_bfd_errmsg): Return std::string.
754         * exec.c (exec_file_attach): Update.
755         * compile/compile-object-load.c (compile_object_load): Update.
756         * utils.c (gdb_bfd_errmsg): Return std::string.
757
758 2018-09-13  Tom Tromey  <[email protected]>
759
760         * procfs.c (struct procinfo_deleter): New.
761         (procinfo_up): New typedef.
762         (do_destroy_procinfo_cleanup): Remove.
763         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
764
765 2018-09-13  Tom Tromey  <[email protected]>
766
767         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
768
769 2018-09-13  Simon Marchi  <[email protected]>
770 2018-09-13  Tom Tromey  <[email protected]>
771
772         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
773         (pspy_get_objfiles): New function.
774         (progspace_object_methods): New.
775         (pspace_object_type): Add tp_methods callback.
776         * python/python-internal.h (build_objfiles_list): New
777         declaration.
778         * python/python.c (build_objfiles_list): New function.
779         (gdbpy_objfiles): Implement using build_objfiles_list.
780         * NEWS: Mention the Progspace.objfiles method.
781
782 2018-09-13  Simon Marchi  <[email protected]>
783
784         * python/py-inferior.c (infpy_get_progspace): New function.
785         (inferior_object_getset): Add progspace property.
786         * NEWS: Mention the new property.
787
788 2018-09-13  Tom Tromey  <[email protected]>
789
790         PR rust/23650:
791         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
792
793 2018-09-13  Tom Tromey  <[email protected]>
794
795         PR rust/23626:
796         * rust-lang.c (rust_enum_variant): Now static.
797         (rust_empty_enum_p): New function.
798         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
799         Handle empty enum.
800
801 2018-09-13  Simon Marchi  <[email protected]>
802
803         * python/py-inferior.c (infpy_repr): New.
804         (inferior_object_type): Register infpy_repr.
805         * python/py-objfile.c (objfpy_repr): New.
806         (objfile_object_type): Register objfpy_repr.
807
808 2018-09-12  John Baldwin  <[email protected]>
809
810         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
811
812 2018-09-12  John Baldwin  <[email protected]>
813
814         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
815         typo.
816
817 2018-09-12  Sergio Durigan Junior  <[email protected]>
818
819         * common/common-utils.c: Don't include '<sys/stat.h>'.
820         (is_regular_file): Move to...
821         * common/filestuff.c (is_regular_file): ... here.
822         * common/common-utils.h (is_regular_file): Move to...
823         * common/filestuff.h (is_regular_file): ... here.
824
825 2018-09-12  Simon Marchi  <[email protected]>
826
827         * skip.c (debug_skip): New variable.
828         (skiplist_entry::do_skip_file_p): Add debug output.
829         (skiplist_entry::do_skip_gfile_p): Likewise.
830         (skiplist_entry::skip_function_p): Likewise.
831         (_initialize_step_skip): Create debug command.
832         * NEWS: Mention set/show debug skip.
833
834 2018-09-11  Xavier Roirand  <[email protected]>
835
836         * darwin-nat.c (should_disable_startup_with_shell):
837         New function.
838         (darwin_nat_target::create_inferior): Add call.
839
840 2018-09-11  Xavier Roirand  <[email protected]>
841
842         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
843         inf_port, msg_state>: Initialize.
844         (struct darwin_thread_info) <signaled, single_step>: Change
845         type and initialize.
846         (struct darwin_thread_info) <event>: Initialize.
847
848 2018-09-10  Sergio Durigan Junior  <[email protected]>
849
850         PR gdb/23555
851         PR gdb/23558
852         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
853         guesses.
854
855 2018-09-10  Sergio Durigan Junior  <[email protected]>
856
857         Revert:
858         2018-08-29  Sergio Durigan Junior  <[email protected]>
859
860         PR gdb/23555
861         PR gdb/23558
862         * gnulib/aclocal.m4: Regenerate.
863         * gnulib/config.in: Regenerate.
864         * gnulib/configure: Regenerate.
865         * gnulib/import/Makefile.am: Update.
866         * gnulib/import/Makefile.in: Update.
867         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
868         * gnulib/import/_Noreturn.h: ... this.
869         * gnulib/import/alloca.in.h: Update.
870         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
871         * gnulib/import/arg-nonnull.h: ... this.
872         * gnulib/import/assure.h: Update.
873         * gnulib/import/at-func.c: Update.
874         * gnulib/import/basename-lgpl.c: Update.
875         * gnulib/import/extra/snippet/c++defs.h: Rename to...
876         * gnulib/import/c++defs.h: ... this.
877         * gnulib/import/canonicalize-lgpl.c: Update.
878         * gnulib/import/cdefs.h: Update.
879         * gnulib/import/chdir-long.c: Update.
880         * gnulib/import/chdir-long.h: Update.
881         * gnulib/import/cloexec.c: Update.
882         * gnulib/import/cloexec.h: Update.
883         * gnulib/import/close.c: Update.
884         * gnulib/import/closedir.c: Update.
885         * gnulib/import/config.charset: Update.
886         * gnulib/import/dirent-private.h: Update.
887         * gnulib/import/dirent.in.h: Update.
888         * gnulib/import/dirfd.c: Update.
889         * gnulib/import/dirname-lgpl.c: Update.
890         * gnulib/import/dirname.h: Update.
891         * gnulib/import/dosname.h: Update.
892         * gnulib/import/dup-safer-flag.c: Update.
893         * gnulib/import/dup-safer.c: Update.
894         * gnulib/import/dup.c: Update.
895         * gnulib/import/dup2.c: Update.
896         * gnulib/import/errno.in.h: Update.
897         * gnulib/import/error.c: Update.
898         * gnulib/import/error.h: Update.
899         * gnulib/import/exitfail.c: Update.
900         * gnulib/import/exitfail.h: Update.
901         * gnulib/import/extra/update-copyright: Update.
902         * gnulib/import/fchdir.c: Update.
903         * gnulib/import/fcntl.c: Update.
904         * gnulib/import/fcntl.in.h: Update.
905         * gnulib/import/fd-hook.c: Update.
906         * gnulib/import/fd-hook.h: Update.
907         * gnulib/import/fd-safer-flag.c: Update.
908         * gnulib/import/fd-safer.c: Update.
909         * gnulib/import/fdopendir.c: Update.
910         * gnulib/import/filename.h: Update.
911         * gnulib/import/filenamecat-lgpl.c: Update.
912         * gnulib/import/filenamecat.h: Update.
913         * gnulib/import/flexmember.h: Update.
914         * gnulib/import/float+.h: Update.
915         * gnulib/import/float.c: Update.
916         * gnulib/import/float.in.h: Update.
917         * gnulib/import/fnmatch.c: Update.
918         * gnulib/import/fnmatch.in.h: Update.
919         * gnulib/import/fnmatch_loop.c: Update.
920         * gnulib/import/fpucw.h: Update.
921         * gnulib/import/frexp.c: Update.
922         * gnulib/import/frexpl.c: Update.
923         * gnulib/import/fstat.c: Update.
924         * gnulib/import/fstatat.c: Update.
925         * gnulib/import/getcwd-lgpl.c: Update.
926         * gnulib/import/getcwd.c: Update.
927         * gnulib/import/getdtablesize.c: Update.
928         * gnulib/import/getlogin_r.c: Update.
929         * gnulib/import/getprogname.c: Update.
930         * gnulib/import/getprogname.h: Update.
931         * gnulib/import/gettext.h: Update.
932         * gnulib/import/gettimeofday.c: Update.
933         * gnulib/import/glob-libc.h: Update.
934         * gnulib/import/glob.c: Update.
935         * gnulib/import/glob.in.h: Update.
936         * gnulib/import/glob_internal.h: Update.
937         * gnulib/import/glob_pattern_p.c: Update.
938         * gnulib/import/globfree.c: Update.
939         * gnulib/import/hard-locale.c: Update.
940         * gnulib/import/hard-locale.h: Update.
941         * gnulib/import/intprops.h: Update.
942         * gnulib/import/inttypes.in.h: Update.
943         * gnulib/import/isnan.c: Update.
944         * gnulib/import/isnand-nolibm.h: Update.
945         * gnulib/import/isnand.c: Update.
946         * gnulib/import/isnanl-nolibm.h: Update.
947         * gnulib/import/isnanl.c: Update.
948         * gnulib/import/itold.c: Update.
949         * gnulib/import/libc-config.h: Update.
950         * gnulib/import/limits.in.h: Update.
951         * gnulib/import/localcharset.c: Update.
952         * gnulib/import/localcharset.h: Update.
953         * gnulib/import/localtime-buffer.c: Update.
954         * gnulib/import/localtime-buffer.h: Update.
955         * gnulib/import/lstat.c: Update.
956         * gnulib/import/m4/00gnulib.m4: Update.
957         * gnulib/import/m4/__inline.m4: Update.
958         * gnulib/import/m4/absolute-header.m4: Update.
959         * gnulib/import/m4/alloca.m4: Update.
960         * gnulib/import/m4/builtin-expect.m4: Update.
961         * gnulib/import/m4/canonicalize.m4: Update.
962         * gnulib/import/m4/chdir-long.m4: Update.
963         * gnulib/import/m4/close.m4: Update.
964         * gnulib/import/m4/closedir.m4: Update.
965         * gnulib/import/m4/configmake.m4: Update.
966         * gnulib/import/m4/d-ino.m4: Update.
967         * gnulib/import/m4/d-type.m4: Update.
968         * gnulib/import/m4/dirent_h.m4: Update.
969         * gnulib/import/m4/dirfd.m4: Update.
970         * gnulib/import/m4/dirname.m4: Update.
971         * gnulib/import/m4/double-slash-root.m4: Update.
972         * gnulib/import/m4/dup.m4: Update.
973         * gnulib/import/m4/dup2.m4: Update.
974         * gnulib/import/m4/eealloc.m4: Update.
975         * gnulib/import/m4/environ.m4: Update.
976         * gnulib/import/m4/errno_h.m4: Update.
977         * gnulib/import/m4/error.m4: Update.
978         * gnulib/import/m4/exponentd.m4: Update.
979         * gnulib/import/m4/exponentl.m4: Update.
980         * gnulib/import/m4/extensions.m4: Update.
981         * gnulib/import/m4/extern-inline.m4: Update.
982         * gnulib/import/m4/fchdir.m4: Update.
983         * gnulib/import/m4/fcntl-o.m4: Update.
984         * gnulib/import/m4/fcntl.m4: Update.
985         * gnulib/import/m4/fcntl_h.m4: Update.
986         * gnulib/import/m4/fdopendir.m4: Update.
987         * gnulib/import/m4/filenamecat.m4: Update.
988         * gnulib/import/m4/flexmember.m4: Update.
989         * gnulib/import/m4/float_h.m4: Update.
990         * gnulib/import/m4/fnmatch.m4: Update.
991         * gnulib/import/m4/fnmatch_h.m4: Update.
992         * gnulib/import/m4/fpieee.m4: Update.
993         * gnulib/import/m4/frexp.m4: Update.
994         * gnulib/import/m4/frexpl.m4: Update.
995         * gnulib/import/m4/fstat.m4: Update.
996         * gnulib/import/m4/fstatat.m4: Update.
997         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
998         * gnulib/import/m4/getcwd-path-max.m4: Update.
999         * gnulib/import/m4/getcwd.m4: Update.
1000         * gnulib/import/m4/getdtablesize.m4: Update.
1001         * gnulib/import/m4/getlogin.m4: Update.
1002         * gnulib/import/m4/getlogin_r.m4: Update.
1003         * gnulib/import/m4/getpagesize.m4: Update.
1004         * gnulib/import/m4/getprogname.m4: Update.
1005         * gnulib/import/m4/gettimeofday.m4: Update.
1006         * gnulib/import/m4/glibc21.m4: Update.
1007         * gnulib/import/m4/glob.m4: Update.
1008         * gnulib/import/m4/glob_h.m4: Update.
1009         * gnulib/import/m4/gnulib-cache.m4: Update.
1010         * gnulib/import/m4/gnulib-common.m4: Update.
1011         * gnulib/import/m4/gnulib-comp.m4: Update.
1012         * gnulib/import/m4/gnulib-tool.m4: Update.
1013         * gnulib/import/m4/hard-locale.m4: Update.
1014         * gnulib/import/m4/include_next.m4: Update.
1015         * gnulib/import/m4/inttypes-pri.m4: Update.
1016         * gnulib/import/m4/inttypes.m4: Update.
1017         * gnulib/import/m4/isnand.m4: Update.
1018         * gnulib/import/m4/isnanl.m4: Update.
1019         * gnulib/import/m4/largefile.m4: Update.
1020         * gnulib/import/m4/limits-h.m4: Update.
1021         * gnulib/import/m4/localcharset.m4: Update.
1022         * gnulib/import/m4/locale-fr.m4: Update.
1023         * gnulib/import/m4/locale-ja.m4: Update.
1024         * gnulib/import/m4/locale-zh.m4: Update.
1025         * gnulib/import/m4/localtime-buffer.m4: Update.
1026         * gnulib/import/m4/longlong.m4: Update.
1027         * gnulib/import/m4/lstat.m4: Update.
1028         * gnulib/import/m4/malloc.m4: Update.
1029         * gnulib/import/m4/malloca.m4: Update.
1030         * gnulib/import/m4/math_h.m4: Update.
1031         * gnulib/import/m4/mbrtowc.m4: Update.
1032         * gnulib/import/m4/mbsinit.m4: Update.
1033         * gnulib/import/m4/mbsrtowcs.m4: Update.
1034         * gnulib/import/m4/mbstate_t.m4: Update.
1035         * gnulib/import/m4/memchr.m4: Update.
1036         * gnulib/import/m4/memmem.m4: Update.
1037         * gnulib/import/m4/mempcpy.m4: Update.
1038         * gnulib/import/m4/memrchr.m4: Update.
1039         * gnulib/import/m4/mkdir.m4: Update.
1040         * gnulib/import/m4/mkstemp.m4: Update.
1041         * gnulib/import/m4/mmap-anon.m4: Update.
1042         * gnulib/import/m4/mode_t.m4: Update.
1043         * gnulib/import/m4/msvc-inval.m4: Update.
1044         * gnulib/import/m4/msvc-nothrow.m4: Update.
1045         * gnulib/import/m4/multiarch.m4: Update.
1046         * gnulib/import/m4/nocrash.m4: Update.
1047         * gnulib/import/m4/off_t.m4: Update.
1048         * gnulib/import/m4/onceonly.m4: Update.
1049         * gnulib/import/m4/open-cloexec.m4: Update.
1050         * gnulib/import/m4/open.m4: Update.
1051         * gnulib/import/m4/openat.m4: Update.
1052         * gnulib/import/m4/opendir.m4: Update.
1053         * gnulib/import/m4/pathmax.m4: Update.
1054         * gnulib/import/m4/rawmemchr.m4: Update.
1055         * gnulib/import/m4/readdir.m4: Update.
1056         * gnulib/import/m4/readlink.m4: Update.
1057         * gnulib/import/m4/realloc.m4: Update.
1058         * gnulib/import/m4/rename.m4: Update.
1059         * gnulib/import/m4/rewinddir.m4: Update.
1060         * gnulib/import/m4/rmdir.m4: Update.
1061         * gnulib/import/m4/save-cwd.m4: Update.
1062         * gnulib/import/m4/secure_getenv.m4: Update.
1063         * gnulib/import/m4/setenv.m4: Update.
1064         * gnulib/import/m4/signal_h.m4: Update.
1065         * gnulib/import/m4/ssize_t.m4: Update.
1066         * gnulib/import/m4/stat-time.m4: Update.
1067         * gnulib/import/m4/stat.m4: Update.
1068         * gnulib/import/m4/std-gnu11.m4: Update.
1069         * gnulib/import/m4/stdbool.m4: Update.
1070         * gnulib/import/m4/stddef_h.m4: Update.
1071         * gnulib/import/m4/stdint.m4: Update.
1072         * gnulib/import/m4/stdio_h.m4: Update.
1073         * gnulib/import/m4/stdlib_h.m4: Update.
1074         * gnulib/import/m4/strchrnul.m4: Update.
1075         * gnulib/import/m4/strdup.m4: Update.
1076         * gnulib/import/m4/strerror.m4: Update.
1077         * gnulib/import/m4/string_h.m4: Update.
1078         * gnulib/import/m4/strstr.m4: Update.
1079         * gnulib/import/m4/strtok_r.m4: Update.
1080         * gnulib/import/m4/sys_socket_h.m4: Update.
1081         * gnulib/import/m4/sys_stat_h.m4: Update.
1082         * gnulib/import/m4/sys_time_h.m4: Update.
1083         * gnulib/import/m4/sys_types_h.m4: Update.
1084         * gnulib/import/m4/tempname.m4: Update.
1085         * gnulib/import/m4/time_h.m4: Update.
1086         * gnulib/import/m4/unistd-safer.m4: Update.
1087         * gnulib/import/m4/unistd_h.m4: Update.
1088         * gnulib/import/m4/warn-on-use.m4: Update.
1089         * gnulib/import/m4/wchar_h.m4: Update.
1090         * gnulib/import/m4/wchar_t.m4: Update.
1091         * gnulib/import/m4/wctype_h.m4: Update.
1092         * gnulib/import/m4/wint_t.m4: Update.
1093         * gnulib/import/malloc.c: Update.
1094         * gnulib/import/malloc/scratch_buffer.h: Update.
1095         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1096         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1097         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1098         * gnulib/import/malloca.c: Update.
1099         * gnulib/import/malloca.h: Update.
1100         * gnulib/import/malloca.valgrind: Update.
1101         * gnulib/import/math.in.h: Update.
1102         * gnulib/import/mbrtowc.c: Update.
1103         * gnulib/import/mbsinit.c: Update.
1104         * gnulib/import/mbsrtowcs-impl.h: Update.
1105         * gnulib/import/mbsrtowcs-state.c: Update.
1106         * gnulib/import/mbsrtowcs.c: Update.
1107         * gnulib/import/memchr.c: Update.
1108         * gnulib/import/memmem.c: Update.
1109         * gnulib/import/mempcpy.c: Update.
1110         * gnulib/import/memrchr.c: Update.
1111         * gnulib/import/mkdir.c: Update.
1112         * gnulib/import/mkstemp.c: Update.
1113         * gnulib/import/msvc-inval.c: Update.
1114         * gnulib/import/msvc-inval.h: Update.
1115         * gnulib/import/msvc-nothrow.c: Update.
1116         * gnulib/import/msvc-nothrow.h: Update.
1117         * gnulib/import/open.c: Update.
1118         * gnulib/import/openat-die.c: Update.
1119         * gnulib/import/openat-priv.h: Update.
1120         * gnulib/import/openat-proc.c: Update.
1121         * gnulib/import/openat.c: Update.
1122         * gnulib/import/openat.h: Update.
1123         * gnulib/import/opendir.c: Update.
1124         * gnulib/import/pathmax.h: Update.
1125         * gnulib/import/pipe-safer.c: Update.
1126         * gnulib/import/rawmemchr.c: Update.
1127         * gnulib/import/readdir.c: Update.
1128         * gnulib/import/readlink.c: Update.
1129         * gnulib/import/realloc.c: Update.
1130         * gnulib/import/ref-add.sin: Update.
1131         * gnulib/import/ref-del.sin: Update.
1132         * gnulib/import/rename.c: Update.
1133         * gnulib/import/rewinddir.c: Update.
1134         * gnulib/import/rmdir.c: Update.
1135         * gnulib/import/same-inode.h: Update.
1136         * gnulib/import/save-cwd.c: Update.
1137         * gnulib/import/save-cwd.h: Update.
1138         * gnulib/import/scratch_buffer.h: Update.
1139         * gnulib/import/secure_getenv.c: Update.
1140         * gnulib/import/setenv.c: Update.
1141         * gnulib/import/signal.in.h: Update.
1142         * gnulib/import/stat-time.c: Update.
1143         * gnulib/import/stat-time.h: Update.
1144         * gnulib/import/stat-w32.c: Update.
1145         * gnulib/import/stat-w32.h: Update.
1146         * gnulib/import/stat.c: Update.
1147         * gnulib/import/stdbool.in.h: Update.
1148         * gnulib/import/stddef.in.h: Update.
1149         * gnulib/import/stdint.in.h: Update.
1150         * gnulib/import/stdio.in.h: Update.
1151         * gnulib/import/stdlib.in.h: Update.
1152         * gnulib/import/str-two-way.h: Update.
1153         * gnulib/import/strchrnul.c: Update.
1154         * gnulib/import/strdup.c: Update.
1155         * gnulib/import/streq.h: Update.
1156         * gnulib/import/strerror-override.c: Update.
1157         * gnulib/import/strerror-override.h: Update.
1158         * gnulib/import/strerror.c: Update.
1159         * gnulib/import/string.in.h: Update.
1160         * gnulib/import/stripslash.c: Update.
1161         * gnulib/import/strnlen1.c: Update.
1162         * gnulib/import/strnlen1.h: Update.
1163         * gnulib/import/strstr.c: Update.
1164         * gnulib/import/strtok_r.c: Update.
1165         * gnulib/import/sys_stat.in.h: Update.
1166         * gnulib/import/sys_time.in.h: Update.
1167         * gnulib/import/sys_types.in.h: Update.
1168         * gnulib/import/tempname.c: Update.
1169         * gnulib/import/tempname.h: Update.
1170         * gnulib/import/time.in.h: Update.
1171         * gnulib/import/unistd--.h: Update.
1172         * gnulib/import/unistd-safer.h: Update.
1173         * gnulib/import/unistd.in.h: Update.
1174         * gnulib/import/unsetenv.c: Update.
1175         * gnulib/import/verify.h: Update.
1176         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1177         * gnulib/import/wchar.in.h: Update.
1178         * gnulib/import/wctype.in.h: Update.
1179         * gnulib/import/xalloc-oversized.h: Update.
1180         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1181         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1182
1183 2018-09-10  Simon Marchi  <[email protected]>
1184
1185         * record-btrace.c (get_thread_current_frame): Remove
1186         old_inferior_ptid.
1187
1188 2018-09-10  Jerome Guitton  <[email protected]>
1189
1190         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1191         with check_tag to 1 if and only if the type is tagged and the
1192         component being searched cannot been found in the current
1193         view. Otherwise, always call ada_to_fixed_type with
1194         check_tag to 0.
1195
1196 2018-09-10  Xavier Roirand  <[email protected]>
1197
1198         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1199         declaration.
1200         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1201         * ada-varobj.c (ada_varobj_get_number_of_children,
1202         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1203
1204 2018-09-10  Xavier Roirand  <[email protected]>
1205
1206         * ada-valprint.c (ada_value_print): Use type instead of
1207         enclosing type.
1208
1209 2018-09-10  Xavier Roirand  <[email protected]>
1210
1211         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1212         an array of access to unconstrained array.
1213
1214 2018-09-10  Xavier Roirand  <[email protected]>
1215
1216         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1217         (ada_check_typedef): Use it.
1218
1219 2018-09-10  Xavier Roirand  <[email protected]>
1220
1221         * ada-varobj.c (ada_varobj_describe_struct_child)
1222         (ada_varobj_describe_child): Handle union case like struct one.
1223
1224 2018-09-10  Tom Tromey  <[email protected]>
1225
1226         PR python/18380:
1227         * python/python.c (_initialize_python): Make example in "python"
1228         help work in Python 3.
1229
1230 2018-09-10  Eli Zaretskii  <[email protected]>
1231
1232         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1233         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1234         $(EXEEXT) to the script, as it is not a program.
1235
1236 2018-09-09  Simon Marchi  <[email protected]>
1237
1238         * python/py-prettyprint.c (pretty_print_one_value): Return
1239         gdbpy_ref<>.
1240         (print_string_repr): Adjust.
1241         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1242         * python/python-internal.h (apply_varobj_pretty_printer): Return
1243         gdbpy_ref<>.
1244         * varobj.c (varobj_value_get_print_value): Adjust.
1245
1246 2018-09-08  Tom Tromey  <[email protected]>
1247
1248         PR python/16047:
1249         * python/py-prettyprint.c (pretty_print_one_value): Check for
1250         to_string method.
1251
1252 2018-09-08  Joel Brobecker  <[email protected]>
1253
1254         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1255         replace_operator_with_call.
1256
1257 2018-09-08  Joel Brobecker  <[email protected]>
1258
1259         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1260
1261 2018-09-08  Joel Brobecker  <[email protected]>
1262
1263         * ada-typeprint.c (print_range): Print the bounds using TYPE
1264         rather than its TYPE_TARGET_TYPE.
1265
1266 2018-09-08  Joel Brobecker  <[email protected]>
1267
1268         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1269         call to ada_to_fixed_value_create.
1270
1271 2018-09-08  Jerome Guitton  <[email protected]>
1272
1273         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1274
1275 2018-09-08  Joel Brobecker  <[email protected]>
1276
1277         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1278         by calls to error.
1279
1280 2018-09-08  Joel Brobecker  <[email protected]>
1281
1282         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1283         Move update of loop variable "fi".
1284
1285 2018-09-08  Joel Brobecker  <[email protected]>
1286
1287         * ada-lang.c (value_assign_to_component): In the case of
1288         big-endian targets, extract the bits of the given VAL
1289         using an src_offset of zero if container is not a scalar.
1290
1291 2018-09-06  Simon Ser  <[email protected]>
1292
1293         PR gdb/23105
1294         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1295         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1296         * fbsd-tdep.c (fbsd_make_note_desc): New.
1297         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1298         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1299         * target.h (enum target_object) Add FreeBSD-specific
1300         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1301
1302 2018-09-06  Simon Marchi  <[email protected]>
1303
1304         * compile/compile-c.h (generate_c_for_variable_locations):
1305         Change reference to pointer.
1306         * compile/compile-c-support.c (compile_program) <compute>:
1307         Likewise.
1308         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1309         (generate_c_for_for_one_variable): Likewise
1310         (generate_c_for_variable_locations): Likewise
1311         * compile/compile-c-types.c (compile_c_instance::convert_type):
1312         Likewise
1313         * compile/compile-cplus-symbols.c (convert_one_symbol):
1314         std::move the scope passed to enter_scope.
1315         * compile/compile-cplus-types.c
1316         (compile_cplus_instance::enter_scope): Make parameter
1317         rvalue-reference.
1318         (compile_cplus_instance::new_scope): Change reference to
1319         pointer.
1320         (compile_cplus_instance::convert_type): Likewise
1321         (compile_cplus_convert_typedef): std::move the scope passed to
1322         enter_scope.
1323         (compile_cplus_convert_struct_or_union): Likewise.
1324         (compile_cplus_convert_enum): Likewise.
1325         (compile_cplus_convert_namespace): Likewise.
1326         * compile/compile-cplus.h (compile_cplus_instance)
1327         <enter_scope>: Make parameter rvalue-reference.
1328         * compile/compile-internal.h (compile_instance)
1329         <get_cached_type>: Likewise
1330         * compile/compile-loc2c.c (push): Likewise
1331         (pushf): Likewise
1332         (unary): Likewise
1333         (binary): Likewise
1334         (print_label): Likewise
1335         (pushf_register_address): Likewise
1336         (pushf_register): Likewise
1337         (do_compile_dwarf_expr_to_c): Likewise
1338         (compile_dwarf_expr_to_c): Likewise
1339         (compile_dwarf_bounds_to_c): Likewise
1340         * compile/compile.c (compile_instance::get_cached_type):
1341         Likewise
1342         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1343         (compile_dwarf_bounds_to_c): Likewise
1344         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1345         (dwarf2_compile_property_to_c): Likewise
1346         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1347         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1348         Likewise
1349
1350 2018-09-06  Simon Marchi  <[email protected]>
1351
1352         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1353         * tui/tui-data.c (init_content_element): Don't initialize it.
1354
1355 2018-09-06  Simon Marchi  <[email protected]>
1356
1357         * tui/tui-data.h (struct tui_win_info)
1358         <detail::opaque>: Remove.
1359         * tui/tui-data.c (init_win_info): Remove assignment.
1360
1361 2018-09-05  Tom Tromey  <[email protected]>
1362
1363         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1364         -Wformat-nonliteral.
1365         * target-float.c (host_float_ops<T>::to_string)
1366         (host_float_ops<T>::from_string): Use
1367         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1368         * configure: Rebuild.
1369
1370 2018-09-05  Simon Marchi  <[email protected]>
1371
1372         * printcmd.c (printf_c_string): Use
1373         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1374         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1375
1376 2018-09-05  Tom Tromey  <[email protected]>
1377
1378         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1379
1380 2018-09-05  Tom de Vries  <[email protected]>
1381
1382         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1383         with resolve_abstract_p == true.
1384         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1385         defaulting to false. Propagate resolve_abstract_p to
1386         dwarf2_fetch_die_loc_sect_off.
1387         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1388         parameter, defaulting to false.
1389         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1390         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1391         parameter.
1392         * dwarf2read.h (struct die_info): Forward-declare.
1393         (die_info_ptr): New typedef.
1394         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1395
1396 2018-09-05  Joel Brobecker  <[email protected]>
1397
1398         GDB 8.2 released.
1399
1400 2018-09-04  Sergio Durigan Junior  <[email protected]>
1401             Pedro Alves  <[email protected]>
1402
1403         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1404         "aclocal-m4-deps.mk".  Include file here.
1405         $(srcdir)/aclocal.m4: Add "configure.ac".
1406         * gnulib/aclocal-m4-deps.mk: New file.
1407         * gnulib/update-gnulib.sh: Automatically update
1408         "aclocal-m4-deps.mk".
1409
1410 2018-09-04  Tom Tromey  <[email protected]>
1411
1412         * configure: Rebuild.
1413         * configure.ac: Remove multi-ice code.
1414
1415 2018-09-04  Tom Tromey  <[email protected]>
1416
1417         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1418         (ada-exp.o): Update.
1419
1420 2018-09-04  Tom Tromey  <[email protected]>
1421
1422         * Makefile.in (printcmd.o, target-float.o): Remove.
1423         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1424
1425 2018-09-04  Tom Tromey  <[email protected]>
1426
1427         * gnulib/Makefile.in: Remove obsolete comment.
1428         * Makefile.in: Remove obsolete comment.
1429
1430 2018-09-04  Andrew Burgess  <[email protected]>
1431
1432         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1433         line with '+'.
1434
1435 2018-09-03  Andrew Burgess  <[email protected]>
1436
1437         * riscv-tdep.c: Add 'prologue-value.h' include.
1438         (struct riscv_unwind_cache): New struct.
1439         (riscv_debug_unwinder): New global.
1440         (riscv_scan_prologue): Update arguments, capture register details
1441         from prologue scan.
1442         (riscv_skip_prologue): Reformat arguments line, move end of
1443         prologue calculation into riscv_scan_prologue.
1444         (riscv_frame_cache): Update return type, create
1445         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1446         details.
1447         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1448         (riscv_frame_prev_register): Use the trad_frame within the
1449         riscv_unwind_cache.
1450         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1451         flag.
1452
1453 2018-09-03  Andrew Burgess  <[email protected]>
1454
1455         * trad-frame.h (trad_frame_set_realreg): Declare.
1456         (trad_frame_set_addr): Declare.
1457         * trad-frame.c (trad_frame_set_realreg): Define new function.
1458         (trad_frame_set_addr): Define new function.
1459         (trad_frame_set_reg_realreg): Use new function.
1460         (trad_frame_set_reg_addr): Use new function.
1461
1462 2018-09-01  Keith Seitz  <[email protected]>
1463
1464         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1465         pulongest instead of "%lld".
1466         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1467         ATTRIBUTE_UNUSED.
1468
1469 2018-08-31  Tom Tromey  <[email protected]>
1470
1471         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1472         variant part type.
1473
1474 2018-08-31  Pedro Alves  <[email protected]>
1475
1476         * gdbarch.h: Regenerate.
1477
1478 2018-08-31  Pedro Alves  <[email protected]>
1479
1480         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1481         * target.h (Hardware watchpoint interfaces): Describe
1482         continuable/steppable/non-steppable watchpoints.
1483         * gdbarch.h, gdbarch.c: Regenerate.
1484
1485 2018-08-31  Pedro Alves  <[email protected]>
1486
1487         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1488         Delete.
1489         * s390-linux-nat.c
1490         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1491         * target.h (target_ops::have_continuable_watchpoint): Delete.
1492         (target_have_continuable_watchpoint): Delete.
1493         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1494         * target-delegates.c: Regenerate.
1495
1496 2018-08-31  Sergio Durigan Junior  <[email protected]>
1497
1498         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1499         the files present in "gnulib/import/m4/".
1500
1501 2018-08-30  Andrew Burgess  <[email protected]>
1502
1503         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1504         c.sw, c.swsp, and c.sdsp.
1505
1506 2018-08-30  Andrew Burgess  <[email protected]>
1507
1508         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1509         (riscv_read_misa_reg): Don't cache value read into inferior data.
1510         (riscv_new_inferior_data): Delete.
1511         (riscv_inferior_data_cleanup): Delete.
1512         (riscv_inferior_data): Delete.
1513         (riscv_invalidate_inferior_data): Delete.
1514         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1515
1516 2018-08-30  Simon Marchi  <[email protected]>
1517
1518         * compile/compile-cplus-types.c
1519         (compile_cplus_instance::leave_scope): Take the address of scope
1520         object.
1521         (compile_cplus_instance::convert_qualified_base): Compare quals
1522         to 0.
1523
1524 2018-08-30  Keith Seitz  <[email protected]>
1525
1526         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1527         Use "%s" and host_address_to_string instead of "%p" in printf.
1528
1529 2018-08-29  Keith Seitz  <[email protected]>
1530
1531         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1532         and compile-cplus-types.c.
1533         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1534         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1535         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1536         Declare.
1537         * compile/compile-c-support.c: Include compile-cplus.h.
1538         (load_libcompile): Templatize.
1539         (get_compile_context): "New" function.
1540         (c_get_compile_context): Use get_compile_context.
1541         (cplus_get_compile_context): New function.
1542         (cplus_push_user_expression, cplus_pop_user_expression)
1543         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1544         (cplus_compute_program): Define new structs/functions.
1545         * compile/compile-cplus-symmbols.c: New file.
1546         * compile/compile-cplus-types.c: New file.
1547         * compile/compile-cplus.h: New file.
1548         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1549         Declare.
1550         * compile/compile-object-load.c (get_out_value_type): Use
1551         strncmp_iw when comparing symbol names.
1552         (compile_object_load): Add mst_bss and mst_data.
1553         * compile/compile.c (_initialize_compile): Remove
1554         -Wno-implicit-function-declaration from `compile_args'.
1555         * compile/gcc-cp-plugin.h: New file.
1556         * NEWS: Mention C++ compile support and new debug options.
1557
1558 2018-08-29  Keith Seitz  <[email protected]>
1559
1560         * linespec.c (collect_info::add_symbol): Make virtual.
1561         (struct symbol_searcher_collect_info): New struct.
1562         (symbol_searcher::find_all_symbols): New method.
1563         * symtab.h (class symbol_searcher): New class.
1564
1565 2018-08-29  Keith Seitz  <[email protected]>
1566
1567         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1568         Change to vector of block_symbol.  Update all users.
1569         (struct collect_info) <symbols>: Likewise.
1570         (collect_info::add_symbol): Take block_symbol as argument.
1571         Update all callers.
1572         (decode_compound_collector) <m_symbols>: Change type to vector
1573         of block_symbol.  Update all users.
1574         (decode_compound_collector::operator ()): Change parameter type
1575         to block_symbol.
1576         (find_method, find_function_symbols, find_linespec_symbols)
1577         (find_label_symbols_in_block, find_label_symbols): Change symbol
1578         vectors to block_symbol vectors.
1579         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1580         block_symbol.
1581
1582 2018-08-29  Keith Seitz  <[email protected]>
1583
1584         * linespec.c (symbolp): Remove typedef and VEC definitions.
1585         (bound_minimal_symbol_d): Likewise.
1586
1587 2018-08-29  Keith Seitz  <[email protected]>
1588
1589         * linespec.c (decode_compound_collector::decode_compound_collector):
1590         Remove initialization for `m_symtabs'.
1591         (decode_compound_collector::release_symbols): Change return type
1592         to std::vector.  Update all callers.
1593         (class decode_compound_collector) <m_symbols>: Change type to
1594         std::vector.
1595         (lookup_prefix_sym): Change return type to std::vector.  Update all
1596         callers.
1597         (compare_symbols): Remove.
1598         (std_compare_symbols): Rename to `compare_symbols'.
1599         (find_method): Change `sym_classes' parameter to std::vector.
1600         Update all callers.  Use std::sort to sort sym_classes.
1601         (find_linespec_symbols): Remove cleanup.
1602
1603 2018-08-29  Keith Seitz  <[email protected]>
1604
1605         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1606         std::vector.  Update all users.
1607         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1608         (struct collect_info) <minimal_symbols>: Likewise.
1609         (compare_msymbols): Return bool.  Change parameters to const
1610         bound_minimal_symbol references.
1611         (find_method, find_function_symbols, find_linespec_symbols): Change
1612         `minsyms' parameter to std::vector.  Update all callers.
1613
1614 2018-08-29  Keith Seitz  <[email protected]>
1615
1616         * linespec.c (struct linespec) <label_symbols>: Change type to
1617         std::vector.  Update all users.
1618         (find_label_symbols_in_block): Change `result' parameter to
1619         std::vector.  Update all callers.
1620         (find_label_symbols): Return std::vector.  Update all callers.
1621
1622 2018-08-29  Keith Seitz  <[email protected]>
1623
1624         * linespec.c (struct linespec) <function_symbols>: Change type to
1625         std::vector.  Update all users.
1626         (struct collect_info) <function_symbols>: Likewise.
1627         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1628         (std_compare_symbols): New function.
1629         (find_method, find_function_symbols, find_linespec_symbols)
1630         (find_label_symbols_in_block): Change `symbols' parameter to
1631         std::vector.  Update all callers.
1632         (find_label_symbols): Likewise for `function_symbols' and
1633         `label_funcs_ret'.
1634
1635 2018-08-29  Keith Seitz  <[email protected]>
1636
1637         * linespec.c (symtab_vector_up): Define.
1638         (struct linespec) <file_symtabs>: Change type to std::vector *.
1639         Update all uses.
1640         (struct collect_info) <file_symtabs>: Likewise.
1641         (collect_symtabs_from_filename): Return symtab_vector_up.
1642         Update all callers.
1643         (decode_objc): Remove cleanup.
1644         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1645         (symtab_collector::release_symtabs): Return symtab_vector_up.
1646         Update all callers.
1647         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1648         Update all users.
1649         (collect_symtabs_from_filename, symtabs_from_filename): Return
1650         symtab_vector_up.  Update all callers.
1651
1652 2018-08-29  Tom Tromey  <[email protected]>
1653
1654         * csky-tdep.c (csky_analyze_prologue): Use
1655         core_addr_to_string_nz.
1656
1657 2018-08-29  Tom Tromey  <[email protected]>
1658
1659         * windows-nat.c (struct xlate_exception) <them>: Change type to
1660         DWORD.
1661         (xlate): Fix formatting.  Remove last entry.
1662         (struct xlate_exception, xlate): Comment out.
1663         (windows_nat_target::resume): Use ranged for.
1664
1665 2018-08-29  Jim Wilson  <[email protected]>
1666
1667         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1668         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1669         of NT_PRFPREG.
1670         (riscv_linux_nat_target::store_registers): Likewise.
1671
1672 2018-08-29  Sergio Durigan Junior  <[email protected]>
1673
1674         PR gdb/23555
1675         PR gdb/23558
1676         * gnulib/aclocal.m4: Regenerate.
1677         * gnulib/config.in: Regenerate.
1678         * gnulib/configure: Regenerate.
1679         * gnulib/import/Makefile.am: Update.
1680         * gnulib/import/Makefile.in: Update.
1681         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1682         * gnulib/import/_Noreturn.h: ... this.
1683         * gnulib/import/alloca.in.h: Update.
1684         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1685         * gnulib/import/arg-nonnull.h: ... this.
1686         * gnulib/import/assure.h: Update.
1687         * gnulib/import/at-func.c: Update.
1688         * gnulib/import/basename-lgpl.c: Update.
1689         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1690         * gnulib/import/c++defs.h: ... this.
1691         * gnulib/import/canonicalize-lgpl.c: Update.
1692         * gnulib/import/cdefs.h: Update.
1693         * gnulib/import/chdir-long.c: Update.
1694         * gnulib/import/chdir-long.h: Update.
1695         * gnulib/import/cloexec.c: Update.
1696         * gnulib/import/cloexec.h: Update.
1697         * gnulib/import/close.c: Update.
1698         * gnulib/import/closedir.c: Update.
1699         * gnulib/import/config.charset: Update.
1700         * gnulib/import/dirent-private.h: Update.
1701         * gnulib/import/dirent.in.h: Update.
1702         * gnulib/import/dirfd.c: Update.
1703         * gnulib/import/dirname-lgpl.c: Update.
1704         * gnulib/import/dirname.h: Update.
1705         * gnulib/import/dosname.h: Update.
1706         * gnulib/import/dup-safer-flag.c: Update.
1707         * gnulib/import/dup-safer.c: Update.
1708         * gnulib/import/dup.c: Update.
1709         * gnulib/import/dup2.c: Update.
1710         * gnulib/import/errno.in.h: Update.
1711         * gnulib/import/error.c: Update.
1712         * gnulib/import/error.h: Update.
1713         * gnulib/import/exitfail.c: Update.
1714         * gnulib/import/exitfail.h: Update.
1715         * gnulib/import/extra/update-copyright: Update.
1716         * gnulib/import/fchdir.c: Update.
1717         * gnulib/import/fcntl.c: Update.
1718         * gnulib/import/fcntl.in.h: Update.
1719         * gnulib/import/fd-hook.c: Update.
1720         * gnulib/import/fd-hook.h: Update.
1721         * gnulib/import/fd-safer-flag.c: Update.
1722         * gnulib/import/fd-safer.c: Update.
1723         * gnulib/import/fdopendir.c: Update.
1724         * gnulib/import/filename.h: Update.
1725         * gnulib/import/filenamecat-lgpl.c: Update.
1726         * gnulib/import/filenamecat.h: Update.
1727         * gnulib/import/flexmember.h: Update.
1728         * gnulib/import/float+.h: Update.
1729         * gnulib/import/float.c: Update.
1730         * gnulib/import/float.in.h: Update.
1731         * gnulib/import/fnmatch.c: Update.
1732         * gnulib/import/fnmatch.in.h: Update.
1733         * gnulib/import/fnmatch_loop.c: Update.
1734         * gnulib/import/fpucw.h: Update.
1735         * gnulib/import/frexp.c: Update.
1736         * gnulib/import/frexpl.c: Update.
1737         * gnulib/import/fstat.c: Update.
1738         * gnulib/import/fstatat.c: Update.
1739         * gnulib/import/getcwd-lgpl.c: Update.
1740         * gnulib/import/getcwd.c: Update.
1741         * gnulib/import/getdtablesize.c: Update.
1742         * gnulib/import/getlogin_r.c: Update.
1743         * gnulib/import/getprogname.c: Update.
1744         * gnulib/import/getprogname.h: Update.
1745         * gnulib/import/gettext.h: Update.
1746         * gnulib/import/gettimeofday.c: Update.
1747         * gnulib/import/glob-libc.h: Update.
1748         * gnulib/import/glob.c: Update.
1749         * gnulib/import/glob.in.h: Update.
1750         * gnulib/import/glob_internal.h: Update.
1751         * gnulib/import/glob_pattern_p.c: Update.
1752         * gnulib/import/globfree.c: Update.
1753         * gnulib/import/hard-locale.c: Update.
1754         * gnulib/import/hard-locale.h: Update.
1755         * gnulib/import/intprops.h: Update.
1756         * gnulib/import/inttypes.in.h: Update.
1757         * gnulib/import/isnan.c: Update.
1758         * gnulib/import/isnand-nolibm.h: Update.
1759         * gnulib/import/isnand.c: Update.
1760         * gnulib/import/isnanl-nolibm.h: Update.
1761         * gnulib/import/isnanl.c: Update.
1762         * gnulib/import/itold.c: Update.
1763         * gnulib/import/libc-config.h: Update.
1764         * gnulib/import/limits.in.h: Update.
1765         * gnulib/import/localcharset.c: Update.
1766         * gnulib/import/localcharset.h: Update.
1767         * gnulib/import/localtime-buffer.c: Update.
1768         * gnulib/import/localtime-buffer.h: Update.
1769         * gnulib/import/lstat.c: Update.
1770         * gnulib/import/m4/00gnulib.m4: Update.
1771         * gnulib/import/m4/__inline.m4: Update.
1772         * gnulib/import/m4/absolute-header.m4: Update.
1773         * gnulib/import/m4/alloca.m4: Update.
1774         * gnulib/import/m4/builtin-expect.m4: Update.
1775         * gnulib/import/m4/canonicalize.m4: Update.
1776         * gnulib/import/m4/chdir-long.m4: Update.
1777         * gnulib/import/m4/close.m4: Update.
1778         * gnulib/import/m4/closedir.m4: Update.
1779         * gnulib/import/m4/configmake.m4: Update.
1780         * gnulib/import/m4/d-ino.m4: Update.
1781         * gnulib/import/m4/d-type.m4: Update.
1782         * gnulib/import/m4/dirent_h.m4: Update.
1783         * gnulib/import/m4/dirfd.m4: Update.
1784         * gnulib/import/m4/dirname.m4: Update.
1785         * gnulib/import/m4/double-slash-root.m4: Update.
1786         * gnulib/import/m4/dup.m4: Update.
1787         * gnulib/import/m4/dup2.m4: Update.
1788         * gnulib/import/m4/eealloc.m4: Update.
1789         * gnulib/import/m4/environ.m4: Update.
1790         * gnulib/import/m4/errno_h.m4: Update.
1791         * gnulib/import/m4/error.m4: Update.
1792         * gnulib/import/m4/exponentd.m4: Update.
1793         * gnulib/import/m4/exponentl.m4: Update.
1794         * gnulib/import/m4/extensions.m4: Update.
1795         * gnulib/import/m4/extern-inline.m4: Update.
1796         * gnulib/import/m4/fchdir.m4: Update.
1797         * gnulib/import/m4/fcntl-o.m4: Update.
1798         * gnulib/import/m4/fcntl.m4: Update.
1799         * gnulib/import/m4/fcntl_h.m4: Update.
1800         * gnulib/import/m4/fdopendir.m4: Update.
1801         * gnulib/import/m4/filenamecat.m4: Update.
1802         * gnulib/import/m4/flexmember.m4: Update.
1803         * gnulib/import/m4/float_h.m4: Update.
1804         * gnulib/import/m4/fnmatch.m4: Update.
1805         * gnulib/import/m4/fnmatch_h.m4: Update.
1806         * gnulib/import/m4/fpieee.m4: Update.
1807         * gnulib/import/m4/frexp.m4: Update.
1808         * gnulib/import/m4/frexpl.m4: Update.
1809         * gnulib/import/m4/fstat.m4: Update.
1810         * gnulib/import/m4/fstatat.m4: Update.
1811         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1812         * gnulib/import/m4/getcwd-path-max.m4: Update.
1813         * gnulib/import/m4/getcwd.m4: Update.
1814         * gnulib/import/m4/getdtablesize.m4: Update.
1815         * gnulib/import/m4/getlogin.m4: Update.
1816         * gnulib/import/m4/getlogin_r.m4: Update.
1817         * gnulib/import/m4/getpagesize.m4: Update.
1818         * gnulib/import/m4/getprogname.m4: Update.
1819         * gnulib/import/m4/gettimeofday.m4: Update.
1820         * gnulib/import/m4/glibc21.m4: Update.
1821         * gnulib/import/m4/glob.m4: Update.
1822         * gnulib/import/m4/glob_h.m4: Update.
1823         * gnulib/import/m4/gnulib-cache.m4: Update.
1824         * gnulib/import/m4/gnulib-common.m4: Update.
1825         * gnulib/import/m4/gnulib-comp.m4: Update.
1826         * gnulib/import/m4/gnulib-tool.m4: Update.
1827         * gnulib/import/m4/hard-locale.m4: Update.
1828         * gnulib/import/m4/include_next.m4: Update.
1829         * gnulib/import/m4/inttypes-pri.m4: Update.
1830         * gnulib/import/m4/inttypes.m4: Update.
1831         * gnulib/import/m4/isnand.m4: Update.
1832         * gnulib/import/m4/isnanl.m4: Update.
1833         * gnulib/import/m4/largefile.m4: Update.
1834         * gnulib/import/m4/limits-h.m4: Update.
1835         * gnulib/import/m4/localcharset.m4: Update.
1836         * gnulib/import/m4/locale-fr.m4: Update.
1837         * gnulib/import/m4/locale-ja.m4: Update.
1838         * gnulib/import/m4/locale-zh.m4: Update.
1839         * gnulib/import/m4/localtime-buffer.m4: Update.
1840         * gnulib/import/m4/longlong.m4: Update.
1841         * gnulib/import/m4/lstat.m4: Update.
1842         * gnulib/import/m4/malloc.m4: Update.
1843         * gnulib/import/m4/malloca.m4: Update.
1844         * gnulib/import/m4/math_h.m4: Update.
1845         * gnulib/import/m4/mbrtowc.m4: Update.
1846         * gnulib/import/m4/mbsinit.m4: Update.
1847         * gnulib/import/m4/mbsrtowcs.m4: Update.
1848         * gnulib/import/m4/mbstate_t.m4: Update.
1849         * gnulib/import/m4/memchr.m4: Update.
1850         * gnulib/import/m4/memmem.m4: Update.
1851         * gnulib/import/m4/mempcpy.m4: Update.
1852         * gnulib/import/m4/memrchr.m4: Update.
1853         * gnulib/import/m4/mkdir.m4: Update.
1854         * gnulib/import/m4/mkstemp.m4: Update.
1855         * gnulib/import/m4/mmap-anon.m4: Update.
1856         * gnulib/import/m4/mode_t.m4: Update.
1857         * gnulib/import/m4/msvc-inval.m4: Update.
1858         * gnulib/import/m4/msvc-nothrow.m4: Update.
1859         * gnulib/import/m4/multiarch.m4: Update.
1860         * gnulib/import/m4/nocrash.m4: Update.
1861         * gnulib/import/m4/off_t.m4: Update.
1862         * gnulib/import/m4/onceonly.m4: Update.
1863         * gnulib/import/m4/open-cloexec.m4: Update.
1864         * gnulib/import/m4/open.m4: Update.
1865         * gnulib/import/m4/openat.m4: Update.
1866         * gnulib/import/m4/opendir.m4: Update.
1867         * gnulib/import/m4/pathmax.m4: Update.
1868         * gnulib/import/m4/rawmemchr.m4: Update.
1869         * gnulib/import/m4/readdir.m4: Update.
1870         * gnulib/import/m4/readlink.m4: Update.
1871         * gnulib/import/m4/realloc.m4: Update.
1872         * gnulib/import/m4/rename.m4: Update.
1873         * gnulib/import/m4/rewinddir.m4: Update.
1874         * gnulib/import/m4/rmdir.m4: Update.
1875         * gnulib/import/m4/save-cwd.m4: Update.
1876         * gnulib/import/m4/secure_getenv.m4: Update.
1877         * gnulib/import/m4/setenv.m4: Update.
1878         * gnulib/import/m4/signal_h.m4: Update.
1879         * gnulib/import/m4/ssize_t.m4: Update.
1880         * gnulib/import/m4/stat-time.m4: Update.
1881         * gnulib/import/m4/stat.m4: Update.
1882         * gnulib/import/m4/std-gnu11.m4: Update.
1883         * gnulib/import/m4/stdbool.m4: Update.
1884         * gnulib/import/m4/stddef_h.m4: Update.
1885         * gnulib/import/m4/stdint.m4: Update.
1886         * gnulib/import/m4/stdio_h.m4: Update.
1887         * gnulib/import/m4/stdlib_h.m4: Update.
1888         * gnulib/import/m4/strchrnul.m4: Update.
1889         * gnulib/import/m4/strdup.m4: Update.
1890         * gnulib/import/m4/strerror.m4: Update.
1891         * gnulib/import/m4/string_h.m4: Update.
1892         * gnulib/import/m4/strstr.m4: Update.
1893         * gnulib/import/m4/strtok_r.m4: Update.
1894         * gnulib/import/m4/sys_socket_h.m4: Update.
1895         * gnulib/import/m4/sys_stat_h.m4: Update.
1896         * gnulib/import/m4/sys_time_h.m4: Update.
1897         * gnulib/import/m4/sys_types_h.m4: Update.
1898         * gnulib/import/m4/tempname.m4: Update.
1899         * gnulib/import/m4/time_h.m4: Update.
1900         * gnulib/import/m4/unistd-safer.m4: Update.
1901         * gnulib/import/m4/unistd_h.m4: Update.
1902         * gnulib/import/m4/warn-on-use.m4: Update.
1903         * gnulib/import/m4/wchar_h.m4: Update.
1904         * gnulib/import/m4/wchar_t.m4: Update.
1905         * gnulib/import/m4/wctype_h.m4: Update.
1906         * gnulib/import/m4/wint_t.m4: Update.
1907         * gnulib/import/malloc.c: Update.
1908         * gnulib/import/malloc/scratch_buffer.h: Update.
1909         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1910         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1911         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1912         * gnulib/import/malloca.c: Update.
1913         * gnulib/import/malloca.h: Update.
1914         * gnulib/import/malloca.valgrind: Update.
1915         * gnulib/import/math.in.h: Update.
1916         * gnulib/import/mbrtowc.c: Update.
1917         * gnulib/import/mbsinit.c: Update.
1918         * gnulib/import/mbsrtowcs-impl.h: Update.
1919         * gnulib/import/mbsrtowcs-state.c: Update.
1920         * gnulib/import/mbsrtowcs.c: Update.
1921         * gnulib/import/memchr.c: Update.
1922         * gnulib/import/memmem.c: Update.
1923         * gnulib/import/mempcpy.c: Update.
1924         * gnulib/import/memrchr.c: Update.
1925         * gnulib/import/mkdir.c: Update.
1926         * gnulib/import/mkstemp.c: Update.
1927         * gnulib/import/msvc-inval.c: Update.
1928         * gnulib/import/msvc-inval.h: Update.
1929         * gnulib/import/msvc-nothrow.c: Update.
1930         * gnulib/import/msvc-nothrow.h: Update.
1931         * gnulib/import/open.c: Update.
1932         * gnulib/import/openat-die.c: Update.
1933         * gnulib/import/openat-priv.h: Update.
1934         * gnulib/import/openat-proc.c: Update.
1935         * gnulib/import/openat.c: Update.
1936         * gnulib/import/openat.h: Update.
1937         * gnulib/import/opendir.c: Update.
1938         * gnulib/import/pathmax.h: Update.
1939         * gnulib/import/pipe-safer.c: Update.
1940         * gnulib/import/rawmemchr.c: Update.
1941         * gnulib/import/readdir.c: Update.
1942         * gnulib/import/readlink.c: Update.
1943         * gnulib/import/realloc.c: Update.
1944         * gnulib/import/ref-add.sin: Update.
1945         * gnulib/import/ref-del.sin: Update.
1946         * gnulib/import/rename.c: Update.
1947         * gnulib/import/rewinddir.c: Update.
1948         * gnulib/import/rmdir.c: Update.
1949         * gnulib/import/same-inode.h: Update.
1950         * gnulib/import/save-cwd.c: Update.
1951         * gnulib/import/save-cwd.h: Update.
1952         * gnulib/import/scratch_buffer.h: Update.
1953         * gnulib/import/secure_getenv.c: Update.
1954         * gnulib/import/setenv.c: Update.
1955         * gnulib/import/signal.in.h: Update.
1956         * gnulib/import/stat-time.c: Update.
1957         * gnulib/import/stat-time.h: Update.
1958         * gnulib/import/stat-w32.c: Update.
1959         * gnulib/import/stat-w32.h: Update.
1960         * gnulib/import/stat.c: Update.
1961         * gnulib/import/stdbool.in.h: Update.
1962         * gnulib/import/stddef.in.h: Update.
1963         * gnulib/import/stdint.in.h: Update.
1964         * gnulib/import/stdio.in.h: Update.
1965         * gnulib/import/stdlib.in.h: Update.
1966         * gnulib/import/str-two-way.h: Update.
1967         * gnulib/import/strchrnul.c: Update.
1968         * gnulib/import/strdup.c: Update.
1969         * gnulib/import/streq.h: Update.
1970         * gnulib/import/strerror-override.c: Update.
1971         * gnulib/import/strerror-override.h: Update.
1972         * gnulib/import/strerror.c: Update.
1973         * gnulib/import/string.in.h: Update.
1974         * gnulib/import/stripslash.c: Update.
1975         * gnulib/import/strnlen1.c: Update.
1976         * gnulib/import/strnlen1.h: Update.
1977         * gnulib/import/strstr.c: Update.
1978         * gnulib/import/strtok_r.c: Update.
1979         * gnulib/import/sys_stat.in.h: Update.
1980         * gnulib/import/sys_time.in.h: Update.
1981         * gnulib/import/sys_types.in.h: Update.
1982         * gnulib/import/tempname.c: Update.
1983         * gnulib/import/tempname.h: Update.
1984         * gnulib/import/time.in.h: Update.
1985         * gnulib/import/unistd--.h: Update.
1986         * gnulib/import/unistd-safer.h: Update.
1987         * gnulib/import/unistd.in.h: Update.
1988         * gnulib/import/unsetenv.c: Update.
1989         * gnulib/import/verify.h: Update.
1990         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1991         * gnulib/import/wchar.in.h: Update.
1992         * gnulib/import/wctype.in.h: Update.
1993         * gnulib/import/xalloc-oversized.h: Update.
1994         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1995         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1996
1997 2018-08-16  Gary Benson <[email protected]>
1998
1999         PR gdb/13000:
2000         * gdb/main.c (captured_main_1): Exit with nonzero status
2001         in batch mode if the last command to be executed failed.
2002         * NEWS: Mention the above.
2003
2004 2018-08-29  Simon Marchi  <[email protected]>
2005
2006         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2007         end of warning message.
2008
2009 2018-08-29  Alan Hayward  <[email protected]>
2010
2011         PR gdb/22943:
2012         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2013         (aarch64_extract_return_value): Use
2014         aapcs_is_vfp_call_or_return_candidate.
2015         (aarch64_return_in_memory): Likewise.
2016         (aarch64_store_return_value): Likewise.
2017
2018 2018-08-29  Alan Hayward  <[email protected]>
2019
2020         * aarch64-tdep.c
2021         (aapcs_is_vfp_call_or_return_candidate): Make static
2022         (pass_in_v_or_stack): Remove function.
2023         (pass_in_v_vfp_candidate): New function.
2024         (aarch64_push_dummy_call): Check for float register candidates.
2025
2026 2018-08-29  Alan Hayward  <[email protected]>
2027
2028         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2029         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2030         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2031
2032 2018-08-28  Simon Marchi  <[email protected]>
2033
2034         PR build/23399
2035         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2036         (struct ipa_sym_addresses): Rename to...
2037         (struct ipa_sym_addresses_common): ... this.
2038         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2039
2040 2018-08-28  Tom Tromey  <[email protected]>
2041
2042         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2043         (token_fifo): Now a std::vector.
2044         (yylex, c_parse): Update.
2045         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2046         (token_fifo): Now a std::vector.
2047         (yylex, d_parse): Update.
2048         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2049         (token_fifo): Now a std::vector.
2050         (yylex, go_parse): Update.
2051
2052 2018-08-28  Simon Marchi  <[email protected]>
2053
2054         * parser-defs.h (struct type_stack) <elements>: Change type to
2055         std::vector<union type_stack_elt>.
2056         <depth, size>: Remove.
2057         * parse.c (parse_exp_in_context_1): Adjust.
2058         (type_stack_reserve): Remove.
2059         (check_type_stack_depth): Remove.
2060         (insert_into_type_stack): Adjust to std::vector.
2061         (insert_type): Likewise.
2062         (push_type): Likewise.
2063         (push_type_int): Likewise.
2064         (insert_type_address_space): Likewise.
2065         (pop_type): Likewise.
2066         (pop_type_int): Likewise.
2067         (pop_typelist): Likewise.
2068         (pop_type_stack): Likewise.
2069         (append_type_stack): Likewise.
2070         (push_type_stack): Likewise.
2071         (get_type_stack): Likewise.
2072         (type_stack_cleanup): Likewise.
2073         (push_typelist): Likewise.
2074         (follow_types): Likewise.
2075         (_initialize_parse): Likewise.
2076
2077 2018-08-28  Hafiz Abid Qadeer  <[email protected]>
2078
2079         * NEWS: Mention csky target.
2080
2081 2018-08-28  Jiangshuai Li  <[email protected]>
2082             Hafiz Abid Qadeer  <[email protected]>
2083             Don Breazeal  <[email protected]>
2084
2085         * csky-linux-tdep.c: New file.
2086         * csky-tdep.c: Likewise.
2087         * csky-tdep.h: Likewise.
2088         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2089         csky-tdep.o.
2090         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2091         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2092         * configure.tgt: Add csky support.
2093
2094 2018-08-27  Jan Vrany  <[email protected]>
2095
2096         * python/py-framefilter.c (py_print_frame): Print frame architecture
2097         when printing on an MI output.
2098
2099 2018-08-27  Tom Tromey  <[email protected]>
2100
2101         PR build/23087:
2102         * configure: Rebuild.
2103         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2104
2105 2018-08-27  Tom Tromey  <[email protected]>
2106
2107         * aarch64-linux-tdep.c
2108         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2109         casts to int.
2110
2111 2018-08-27  Tom Tromey  <[email protected]>
2112
2113         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2114         unsigned.
2115         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2116         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2117         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2118         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2119         unsigned.
2120
2121 2018-08-27  Tom Tromey  <[email protected]>
2122
2123         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2124         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2125
2126 2018-08-27  Tom Tromey  <[email protected]>
2127
2128         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2129         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2130         ULONGEST_MAX.
2131         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2132         ULONGEST_MAX.
2133         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2134         ULONGEST_MAX.
2135         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2136         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2137         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2138         ULONGEST_MAX.
2139         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2140         (ppc64_linux_sigaction_tramp_frame)
2141         (ppc32_linux_sighandler_tramp_frame)
2142         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2143         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2144         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2145         * mn10300-linux-tdep.c (am33_linux_sigframe)
2146         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2147         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2148         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2149         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2150         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2151         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2152         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2153         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2154         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2155         * microblaze-linux-tdep.c
2156         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2157         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2158         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2159         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2160         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2161         * common/common-types.h (ULONGEST_MAX): New define.
2162         (CORE_ADDR_MAX): Fix formatting.
2163         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2164         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2165         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2166         (arm_linux_rt_sigreturn_tramp_frame)
2167         (arm_eabi_linux_sigreturn_tramp_frame)
2168         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2169         (thumb2_eabi_linux_sigreturn_tramp_frame)
2170         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2171         (arm_linux_restart_syscall_tramp_frame)
2172         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2173         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2174         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2175         ULONGEST_MAX.
2176         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2177
2178 2018-08-27  Tom Tromey  <[email protected]>
2179
2180         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2181         CORE_ADDR_MAX.
2182         * mips-tdep.c (mips_deal_with_atomic_sequence)
2183         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2184         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2185         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2186         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2187         CORE_ADDR_MAX.
2188         * aarch64-tdep.c (aarch64_software_single_step): Use
2189         CORE_ADDR_MAX.
2190
2191 2018-08-27  Tom Tromey  <[email protected]>
2192
2193         * linespec.c (complete_linespec_component): Add cast to "char".
2194         * completer.c (completion_tracker::build_completion_result): Add
2195         cast to "char".
2196
2197 2018-08-26  Simon Marchi  <[email protected]>
2198
2199         * solist.h (struct solist, struct target_so_ops): Fix
2200         indentation.
2201
2202 2018-08-26  Simon Marchi  <[email protected]>
2203
2204         * ada-tasks.c (ada_task_info_s): Remove typedef.
2205         (DEF_VEC_O(ada_task_info_s)): Remove.
2206         (struct ada_tasks_inferior_data): Initialize fields.
2207         <task_list>: Make an std::vector.
2208         (get_ada_tasks_inferior_data): Allocate with new.
2209         (ada_get_task_number): Adjust.
2210         (get_task_number_from_id): Likewise.
2211         (valid_task_id): Likewise.
2212         (ada_get_task_info_from_ptid): Likewise.
2213         (iterate_over_live_ada_tasks): Likewise.
2214         (add_ada_task): Likewise.
2215         (read_known_tasks): Likewise.
2216         (ada_build_task_list): Likewise.
2217         (print_ada_task_info): Likewise.
2218         (info_task): Likewise.
2219         (task_command_1): Likewise.
2220
2221 2018-08-26  Simon Marchi  <[email protected]>
2222
2223         * ada-lang.c (add_angle_brackets): Return std::string.
2224
2225 2018-08-25  Simon Marchi  <[email protected]>
2226
2227         * python/py-threadevent.c (py_get_event_thread): Initialize
2228         pythread.
2229
2230 2018-08-24  Pedro Alves  <[email protected]>
2231
2232         * python/py-bpevent.c (create_breakpoint_event_object): Use
2233         copy-initialization.
2234         * python/py-continueevent.c (emit_continue_event): Use
2235         copy-initialization.
2236         * python/py-exitedevent.c (create_exited_event_object): Return a
2237         gdbpy_ref<>.
2238         (emit_exited_event): Use copy-initialization.
2239         * python/py-inferior.c (python_new_inferior)
2240         (python_inferior_deleted, add_thread_object): Use
2241         copy-initialization.
2242         * python/py-infevents.c (create_inferior_call_event_object)
2243         (create_register_changed_event_object)
2244         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2245         (emit_inferior_call_event, emit_memory_changed_event)
2246         (emit_register_changed_event): Use copy-initialization.
2247         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2248         Return a gdbpy_ref<>.
2249         (emit_new_objfile_event): Use copy-initialization.
2250         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2251         (emit_clear_objfiles_event): Use copy-initialization.
2252         * python/py-signalevent.c (create_signal_event_object): Use
2253         copy-initialization.
2254         * python/py-threadevent.c (create_thread_event_object): Use
2255         copy-initialization.
2256
2257 2018-08-24  Pedro Alves  <[email protected]>
2258             Simon Marchi  <[email protected]>
2259
2260         PR gdb/23379
2261         * python/py-continueevent.c: Include "gdbthread.h".
2262         (create_continue_event_object): Add intro comment.  Add 'ptid'
2263         parameter.  Use it to find thread to pass to
2264         create_thread_event_object.
2265         (emit_continue_event): Pass PTID down to
2266         create_continue_event_object.
2267         * python/py-event.h (py_get_event_thread): Declare.
2268         (create_thread_event_object): Remove default from 'thread'
2269         parameter.
2270         * python/py-stopevent.c (create_stop_event_object): Use
2271         py_get_event_thread.
2272         * python/py-threadevent.c (get_event_thread): Rename to ...
2273         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2274         and use it to find the thread.
2275         (create_thread_event_object): Assert that THREAD isn't null.
2276         Don't find the event thread here.
2277
2278 2018-08-23  Kevin Buettner  <[email protected]>
2279
2280         * block.h (blockrange, blockranges): New struct declarations.
2281         (struct block): Add new field named `ranges'.
2282         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2283         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2284         macros for accessing ranges in struct block.
2285         (make_blockranges): New declaration.
2286         block.c (make_blockranges): New function.
2287         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2288         for block.
2289         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2290         * blockframe.c (cache_pc_function_block): New static global.
2291         (clear_pc_function_cache): Clear cache_pc_function_block.
2292         (find_pc_partial_function): Move comment to symtab.h.  Add
2293         support for non-contiguous blocks.
2294         * cli/cli-cmds.c (block.h): Include.
2295         (print_disassembly): Handle printing of non-contiguous blocks.
2296         (disassemble_current_function): Likewise.
2297         (disassemble_command): Likewise.
2298
2299         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2300         BLOCK_START.
2301         * blockframe.c (get_pc_function_start): Likewise.
2302         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2303         (gcc_symbol_address): Likewise.
2304         * compile/compile-object-run.c (compile_object_run): Likewise.
2305         * compile/compile.c (get_expr_block_and_pc): Likewise.
2306         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2307         (func_addr_to_tail_call_list): Likewise.
2308         * findvar.c (default_read_var_value): Likewise.
2309         * inline-frame.c (inline_frame_this_id): Likewise.
2310         (skip-inline_frames): Likewise.
2311         * infcmd.c (until_next_command): Likewise.
2312         * linespec.c (convert_linespec_to_sals): Likewise.
2313         * parse.c (parse_exp_in_context_1): Likewise.
2314         * printcmd.c (build_address_symbolic): likewise.
2315         (info_address_command): Likewise.
2316         symtab.c (find_function_start_sal): Likewise.
2317         (skip_prologue_sal): Likewise.
2318         (find_function_alias_target): Likewise.
2319         (find_gnu_ifunc): Likewise.
2320         * stack.c (find_frame_funname): Likewise.
2321         * symtab.c (fixup_symbol_section): Likewise.
2322         (find_function_start_sal): Likewise.
2323         (skip_prologue_sal): Likewsie.
2324         (find_function_alias_target): Likewise.
2325         (find_gnu_ifunc): Likewise.
2326         * tracepoint.c (info_scope_command): Likewise.
2327         * value.c (value_fn_field): Likewise.
2328
2329         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2330         in place of find_pc_partial_function.
2331         * blockframe.c (find_function_entry_range_from_pc): New function.
2332         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2333         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2334         for each range in a block.
2335
2336
2337 2018-08-23  Xavier Roirand  <[email protected]>
2338
2339         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2340         incrementation.
2341
2342 2018-08-22  Simon Marchi  <[email protected]>
2343
2344         * solib-svr4.c (read_program_headers_from_bfd): Return
2345         gdb::optional<gdb::byte_vector>.
2346         (svr4_exec_displacement): Adjust.
2347
2348 2018-08-22  Simon Marchi  <[email protected]>
2349
2350         * solib-svr4.c (read_program_header): Return
2351         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2352         (find_program_interpreter): Return
2353         gdb::optional<gdb::byte_vector>.
2354         (scan_dyntag_auxv): Adjust.
2355         (enable_break): Adjust.
2356         (svr4_exec_displacement): Adjust.
2357
2358 2018-08-22  Simon Marchi  <[email protected]>
2359
2360         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2361         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2362
2363 2018-08-22  Simon Marchi  <[email protected]>
2364
2365         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2366         string_vprintf.
2367         * guile/scm-utils.c (gdbscm_printf): Likewise.
2368         * serial.c (serial_printf): Likewise.
2369         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2370
2371 2018-08-22  Jan Vrany  <[email protected]>
2372
2373         * stack.c (print_frame): Print frame architecture when printing on
2374         an MI output.
2375         * NEWS: Mention new "arch" attribute in frame output.
2376
2377 2018-08-21  Alan Hayward  <[email protected]>
2378
2379         * arch/aarch64.h (aarch64_regnum): Update comment.
2380
2381 2018-08-21  Alan Hayward  <[email protected]>
2382
2383         * NEWS: Add SVE to 8.2 section.
2384
2385 2018-08-21  Pedro Alves  <[email protected]>
2386
2387         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2388         out from gdbscm_parse_function_args.
2389         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2390         gdbscm_parse_function_args_1.
2391
2392 2018-08-21  Simon Marchi  <[email protected]>
2393
2394         PR gdb/17816
2395         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2396         operator.
2397
2398 2018-08-19  Simon Marchi  <[email protected]>
2399
2400         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2401
2402 2018-08-19  Michael Spang  <[email protected]>
2403
2404         PR gdb/11786
2405         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2406         for PT_TLS segments.
2407
2408 2018-08-18  Kevin Buettner  <[email protected]>
2409
2410         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2411         dwarf_variable_value.
2412         * dwarf2-frame.c (class dwarf_expr_executor):
2413         Add override for dwarf_variable_value.
2414         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2415         (class symbol_needs_eval_context): Likewise.
2416         (indirect_synthetic_pointer): Add forward declaration.
2417         (sect_variable_value): New function.
2418         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2419         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2420         for DW_OP_GNU_variable_value.
2421
2422 2018-08-16  Tom Tromey  <[email protected]>
2423
2424         * top.c (read_command_file): Update.
2425         (command_line_input): Remove "repeat" argument.
2426         * ada-lang.c (get_selections): Update.
2427         * linespec.c (decode_line_2): Update.
2428         * defs.h (command_line_input): Remove argument.
2429         * cli/cli-script.c (read_next_line): Update.
2430         * python/py-gdb-readline.c: Update.
2431
2432 2018-08-17  Tom Tromey  <[email protected]>
2433
2434         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2435         command_line_input.
2436
2437 2018-08-15  Tom Tromey  <[email protected]>
2438
2439         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2440
2441 2018-08-14  Jan Vrany  <[email protected]>
2442
2443         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2444         If used, use find_pc_partial_function to find address range
2445         to disassemble.
2446         * mi/mi-main.c (mi_cmd_list_features): Report
2447         "data-disassemble-a-option" feature.
2448         * NEWS: Mention new -data-disassemble option -a.
2449
2450 2018-08-13  Tom Tromey  <[email protected]>
2451
2452         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2453
2454 2018-08-13  Alan Hayward  <[email protected]>
2455
2456         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2457         (aarch64_linux_collect_sve_regset): Likewise.
2458         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2459         * regcache.h (regcache_map_entry_size): New function.
2460
2461 2018-08-13  Alan Hayward  <[email protected]>
2462
2463         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2464         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2465         (SVE_HEADER_VL_LENGTH): Likewise.
2466         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2467         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2468         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2469         (SVE_HEADER_SIZE_OFFSET): Likewise.
2470         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2471         (SVE_HEADER_VL_OFFSET): Likewise.
2472         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2473         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2474         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2475         (SVE_HEADER_SIZE): Likewise.
2476         (aarch64_linux_core_read_vq): Add function.
2477         (aarch64_linux_core_read_description): Check for SVE section.
2478
2479 2018-08-13  Alan Hayward  <[email protected]>
2480
2481         * aarch64-fbsd-tdep.c
2482         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2483         collect_size.
2484         * aarch64-linux-tdep.c
2485         (aarch64_linux_iterate_over_regset_sections): Likewise.
2486         * alpha-linux-tdep.c
2487         (alpha_linux_iterate_over_regset_sections):
2488         * alpha-nbsd-tdep.c
2489         (alphanbsd_iterate_over_regset_sections): Likewise.
2490         * amd64-fbsd-tdep.c
2491         (amd64fbsd_iterate_over_regset_sections): Likewise.
2492         * amd64-linux-tdep.c
2493         (amd64_linux_iterate_over_regset_sections): Likewise.
2494         * arm-bsd-tdep.c
2495         (armbsd_iterate_over_regset_sections): Likewise.
2496         * arm-fbsd-tdep.c
2497         (arm_fbsd_iterate_over_regset_sections): Likewise.
2498         * arm-linux-tdep.c
2499         (arm_linux_iterate_over_regset_sections): Likewise.
2500         * corelow.c (get_core_registers_cb): Likewise.
2501         (core_target::fetch_registers): Likewise.
2502         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2503         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2504         * gdbarch.h (void): Regenerate.
2505         * gdbarch.sh: Add supply_size and collect_size.
2506         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2507         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2508         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2509         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2510         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2511         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2512         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2513         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2514         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2515         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2516         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2517         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2518         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2519         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2520         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2521         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2522         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2523         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2524         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2525         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2526         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2527         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2528         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2529         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2530         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2531         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2532         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2533         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2534         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2535         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2536
2537 2018-08-10  Simon Marchi  <[email protected]>
2538
2539         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2540         with string_printf.
2541
2542 2018-08-10  Keith Seitz  <[email protected]>
2543
2544         * compile/compile-c-support.c (add_code_header, add_code_footer):
2545         Move into policy class.
2546         (c_push_user_expression, pop_user_expression_nop)
2547         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2548         (compile_program): New host class.
2549         (c_compile_program): New typedef.
2550         (c_compute_porgram): Use c_compile_program.
2551
2552 2018-08-10  Keith Seitz  <[email protected]>
2553
2554         * compile/compile-internal.h (compile_instance::~compile_instance):
2555         Remove calls to htab_delete.
2556         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2557         * compile.c (compile_instance::compile_instance): Initialize
2558         htab unique pointers.
2559         (compile_instance::get_cached_type, compile_instance::insert_type)
2560         (compile_instance::error_symbol_once): Update for unique_ptr.
2561
2562 2018-08-10  Keith Seitz  <[email protected]>
2563
2564         * compile/compile-c-symbols.c (struct symbol_error)
2565         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2566         (compile_instance::insert_symbol_error)
2567         (compile_instance::error_symbol_once): Move to ...
2568         * compile/compile.c: ... here.
2569
2570 2018-08-10  Keith Seitz  <[email protected]>
2571
2572         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2573         instead of `new_compile_instance'.
2574         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2575         Update description.
2576         If the symbol error map is not initialized, create it.
2577         (generate_c_for_for_one_symbol): Do not check/initialize
2578         the symbol error map.
2579         * compile/compile-c-types.c (compile_c_instance): Make a class.
2580         Update all callers.
2581         (compile_instance::compile_instance): Initialize the type cache.
2582         (get_cached_type): New function.
2583         (insert_type): Update description.
2584         (compile_c_instance::m_default_cflags): Define.
2585         (convert_type): Update description.  Use get_cached_type.
2586         (delete_instance): Moved to destructor.
2587         (new_compile_instance): Moved to constructor.
2588         * compile/compile-c.h (compile_c_instance): Make class inheriting
2589         from compile_instance.
2590         <base>: Remove field.
2591         <type_map, symbol_err_map>: Move to base class.
2592         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2593         * compile/compile-internal.h (compile_instance): Make class.
2594         <type_map_t, symbol_err_map_t>: Define.
2595         <fe>: Rename to `m_gcc_fe'.
2596         <scope, block, gcc_target_options>: Add `m_' prefix.
2597         <m_type_map, m_symbol_err_map>: New fields, moved from
2598         compile_c_instance.
2599         <destroy>: Remove.
2600         (convert_type, new_compile_instance): Remove.
2601         * compile/compile.c (cleanup_compile_instance): Remove.
2602         (compile_to_object): Use unique_ptr to eliminate cleanups.
2603         (compile_instance::set_print_callback, compile_instance::version)
2604         (compile_instance::set_verbose)
2605         (compile_instance::set_driver_filename)
2606         (compile_instance::set_triplet_regexp)
2607         (compile_instance::set_arguments)
2608         (compile_instance::set_source_file)
2609         (compile_instance::compile): Define.
2610
2611 2018-08-10  Keith Seitz  <[email protected]>
2612
2613         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2614         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2615         gcc-c-fe.def to define C plugin.
2616         (delete_instance): Delete `c_plugin'.
2617         (new_compile_instance): Initialize `c_plugin'.
2618         * compile/compile-c.h: Include gcc_c_plugin.h.
2619         (struct compile_c_instance) <c_plugin>: New member.
2620         * gcc-c-plugin.h: New file.
2621         Update all callers with API change.
2622
2623 2018-08-10  Keith Seitz  <[email protected]>
2624
2625         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2626         (HFILES_NO_SRCDIR): ... to here.
2627         Add compile-internal.h and compile-c.h.
2628         * compile/compile-c-support.c: Include compile-c.h.
2629         * compile/compile-c-symbols.c: Include compile-c.h.
2630         (generate_c_for_variable_locations): Update comment.
2631         * compile/compile-c-types.c: Include compile-c.h.
2632         * compile/compile-c.h: New file -- moved C language declarations
2633         from other files here.
2634         * compile/compile-internal.h: Do not include hashtab.h or
2635         common/enum-flags.h.
2636         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2637         (gcc_convert_symbol, gcc_symbol_address)
2638         (generate_c_for_variable_locations, c_get_mode_for_size)
2639         (c_get_range_decl_name): Definitions moved to compile-c.h.
2640         * compile/compile-loc2c.c: Include compile-c.h.
2641
2642 2018-08-10  Keith Seitz  <[email protected]>
2643
2644         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2645         (c_symbol_substitution_name): ... this.
2646         Update all callers.
2647
2648 2018-08-10  Keith Seitz  <[email protected]>
2649
2650         * compile/compile-c-support.c (c_compute_program): Use
2651         unique_xmalloc_ptr to eliminate cleanup.
2652         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2653         Return a unique_xmalloc_ptr and eliminate cleanup.
2654         * compile/compile-internal.h (generate_c_for_variable_locations):
2655         Return unique_xmalloc_ptr and update description.
2656
2657 2018-08-10  Alan Hayward  <[email protected]>
2658
2659         * corelow.c (core_target::get_core_register_section): Rename
2660         min_size to section_min_size.
2661
2662 2018-08-09  Jim Wilson  <[email protected]>
2663
2664         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2665         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2666         * NEWS: Mention new GNU/Linux RISC-V target.
2667         * configure.host: Add riscv*-*-linux*.
2668         * configure.nat: Add riscv*.
2669         * configure.tgt: Add riscv*-*-linux*.
2670         * riscv-linux-nat.c: New file.
2671         * riscv-linux-tdep.c: New file.
2672
2673 2018-08-09  Andrew Burgess  <[email protected]>
2674
2675         * infrun.c (resume): Make static, add forward declaration.
2676         (proceed): Update header comment.
2677         * infrun.h (resume): Delete declaration.
2678
2679 2018-08-09  Tom Tromey  <[email protected]>
2680
2681         * riscv-tdep.h: Minor formatting fixes.
2682
2683 2018-08-09  Simon Marchi  <[email protected]>
2684
2685         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2686         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2687         (test_mkdir_recursive): Likewise.
2688         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2689
2690 2018-08-09  Andrew Burgess  <[email protected]>
2691
2692         * valarith.c (value_subscripted_rvalue): If an array is not in
2693         memory, and we don't know the upper bound, then we can't know that
2694         the requested element exists or not.
2695
2696 2018-08-08  Simon Marchi  <[email protected]>
2697
2698         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2699         (target_options_to_string): Add comment.
2700
2701 2018-08-08  Tom Tromey  <[email protected]>
2702
2703         * unittests/scoped_mmap-selftests.c: Check result of "write".
2704
2705 2018-08-08  Jim Wilson  <[email protected]>
2706
2707         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2708         (decode_register_index_short): New.
2709         (decode_j_type_insn, decode_cj_type_insn): New.
2710         (decode_b_type_insn, decode_cb_type_insn): New.
2711         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2712         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2713         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2714         is_c_sw_insn instead of is_sw_insn.
2715         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2716         (riscv_software_single_step): New.
2717         * riscv-tdep.h (riscv_software_single_step): Declare.
2718
2719         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2720         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2721
2722 2018-08-08  Andrew Burgess  <[email protected]>
2723
2724         PR gdb/18050:
2725         * target.c (dispose_inferior): Don't dispose of inferiors that are
2726         already killed.
2727
2728 2018-08-08  Szabolcs Nagy  <[email protected]>
2729
2730         * remote.c (remote_target::download_tracepoint): Change char* to
2731         const char*.
2732
2733 2018-08-07  Simon Marchi  <[email protected]>
2734
2735         * target.h (target_options_to_string): Return an std::string.
2736         * target.c (str_comma_list_concat_elem): Return void, use
2737         std::string.
2738         (do_option): Likewise.
2739         (target_options_to_string): Return an std::string.
2740         * linux-nat.c (linux_nat_target::wait): Adjust.
2741         * target-debug.h (target_debug_print_options): Adjust.
2742
2743 2018-08-07  Tom Tromey  <[email protected]>
2744
2745         * Makefile.in (CPPFLAGS): New variable.
2746         (INTERNAL_CPPFLAGS): Use it.
2747
2748 2018-08-07  Simon Marchi  <[email protected]>
2749
2750         * NEWS: Mention the index cache.
2751
2752 2018-08-07  Simon Marchi  <[email protected]>
2753
2754         * common/pathstuff.h (get_standard_cache_dir): New.
2755         * common/pathstuff.c (get_standard_cache_dir): New.
2756         * build-id.h (build_id_to_string): New.
2757         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2758         DEBUG_STR_SUFFIX): Move to here.
2759         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2760         DEBUG_STR_SUFFIX): Move from there.
2761         (write_psymtabs_to_index): Make non-static, add basename
2762         parameter.  Write to temporary files, rename when done.
2763         (save_gdb_index_command): Adjust call to
2764         write_psymtabs_to_index.
2765         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2766         field.
2767         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2768         (get_gdb_index_contents_from_cache): New.
2769         (get_gdb_index_contents_from_cache_dwz): New.
2770         (dwarf2_initialize_objfile): Read index from cache.
2771         (dwarf2_build_psymtabs): Save to index.
2772         * dwarf-index-cache.h: New file.
2773         * dwarf-index-cache.c: New file.
2774         * dwarf-index-write.h: New file.
2775
2776 2018-08-07  Simon Marchi  <[email protected]>
2777
2778         * gnulib/aclocal.m4: Re-generate.
2779         * gnulib/config.in: Re-generate.
2780         * gnulib/configure: Re-generate.
2781         * gnulib/import/Makefile.am: Re-generate.
2782         * gnulib/import/Makefile.in: Re-generate.
2783         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2784         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2785         * gnulib/import/m4/mkdir.m4: New file.
2786         * gnulib/import/mkdir.c: New file.
2787         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2788         module.
2789
2790 2018-08-07  Simon Marchi  <[email protected]>
2791
2792         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2793         * common/scoped_mmap.c: New file.
2794         * common/scoped_mmap.h (destroy): New method.
2795         (~scoped_mmap, reset): Use destroy.
2796         (scoped_mmap): New move constructor.
2797         (mmap_file): New declaration.
2798         * unittests/scoped_mmap-selftests.c (test_normal,
2799         test_invalid_filename, run_tests): New functions.
2800         (_initialize_scoped_mmap_selftests): Register selftest.
2801
2802 2018-08-07  Simon Marchi  <[email protected]>
2803
2804         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2805         (read_gdb_index_from_buffer): ... this.  Remove section
2806         parameter, add buffer parameter.
2807         (get_gdb_index_contents_ftype,
2808         get_gdb_index_contents_dwz_ftype): New typedefs.
2809         (dwarf2_read_gdb_index): Add callback parameters to get the
2810         index contents.
2811         (get_gdb_index_contents_from_section): New.
2812         (dwarf2_initialize_objfile): Update call to
2813         dwarf2_read_gdb_index.
2814
2815 2018-08-07  Simon Marchi  <[email protected]>
2816
2817         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2818         (gdb_open_cloexec): Likewise.
2819         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2820         (commandline_from_pid): Likewise.
2821         (linux_xfer_osdata_threads): Likewise.
2822         (linux_xfer_osdata_fds): Likewise.
2823         * ada-lang.c (is_package_name): Likewise.
2824         * auxv.c (procfs_xfer_auxv): Likewise.
2825         * breakpoint.c (print_one_breakpoint_location): Use
2826         uiout::field_fmt.
2827         (print_one_catch_solib): Use string_printf.
2828         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2829         (add_pe_forwarded_sym): Likewise.
2830         * dwarf2read.c (create_type_unit_group): Likewise.
2831         (build_error_marker_type): Likewise.
2832         * infcall.c (get_function_name): Likewise.
2833         * valprint.c (print_converted_chars_to_obstack): Likewise.
2834         * xtensa-tdep.c (xtensa_register_type): Likewise.
2835
2836 2018-08-06  Simon Marchi  <[email protected]>
2837
2838         * remote.c (remote_target::download_tracepoint): Fix format
2839         string errors.
2840
2841 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2842
2843         * tracefile.c: Include common/byte-vector.h.
2844         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2845         with trace_regblock_size if needed.  Update uses of buf.
2846
2847 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2848
2849         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2850         std::vector<unsigned char>.
2851         * tracepoint.c (collection_list::collection_list): Remove
2852         m_regs_mask initializer from initializer list.  Resize
2853         m_regs_mask using the largest remote register number.
2854         (collection_list::add_remote_register): Remove size check on
2855         m_regs_mask.  Use at to access element.
2856         (collection_list::stringify): Change type of temp_buf to
2857         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2858         stringify the register mask.  Use pack_hex_byte for the register
2859         mask.
2860
2861 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2862
2863         * tracepoint.h (class collection_list) <add_register>: Remove.
2864         <add_remote_register, add_ax_registers, add_local_register>:
2865         Declare.
2866         <add_memrange>: Add scope parameter.
2867         * tracepoint.c (encode_actions_1): Likewise.
2868         (collection_list::add_register): Rename to ...
2869         (collection_list::add_remote_register): ... this.  Update
2870         comment.
2871         (collection_list::add_ax_registers, add_local_register): New
2872         methods.
2873         (collection_list::add_memrange): Add scope parameter.  Call
2874         add_local_register instead of add_register.
2875         (finalize_tracepoint_aexpr): New function.
2876         (collection_list::collect_symbol): Update calls to add_memrange.
2877         Call add_local_register instead of add_register.  Call
2878         add_ax_registers.  Call finalize_tracepoint_aexpr.
2879         (encode_actions_1): Get remote regnos for $reg action.  Call
2880         add_remote_register, add_ax_registers, and add_local_register.
2881         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2882         (validate_actionline): Call finalize_tracepoint_aexpr.
2883
2884 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2885
2886         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2887         Replace array buf with gdb::char_vector buf, of size
2888         get_remote_packet_size ().  Replace references to buf and
2889         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2890         and xsnprintf with snprintf.  Raise errors if the buffer is too
2891         small.
2892
2893 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2894
2895         * remote.c (remote_target::download_tracepoint): Fix the has_more
2896         predicate in the QTDP action list iteration.
2897
2898 2018-08-06  Pedro Franco de Carvalho  <[email protected]>
2899
2900         * remote.c (remote_target::download_tracepoint): Fix indentation
2901         in for block.
2902
2903 2018-08-06  Rainer Orth  <[email protected]>
2904
2905         * proc-api.c (_initialize_proc_api): Remove c, unused.
2906         * procfs.c (procfs_init_inferior): Remove signals, unused.
2907         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2908         unused.
2909
2910 2018-08-06  Sergey Korolev  <[email protected]>
2911             Andrew Burgess  <[email protected]>
2912
2913         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2914         'W_STOPCODE (0)' as this could be ambiguous.
2915
2916 2018-08-03  Sergio Durigan Junior  <[email protected]>
2917
2918         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2919         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2920         "ai_socktype").
2921
2922 2018-08-02  Tom Tromey  <[email protected]>
2923
2924         PR symtab/16842.
2925         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2926         symbols.
2927         (process_structure_scope): Likewise.
2928
2929 2018-08-02  Xavier Roirand  <[email protected]>
2930
2931         PR gdb/22629:
2932         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2933         kill inferior.
2934
2935 2018-08-02  Tom Tromey  <[email protected]>
2936
2937         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2938         (darwin_suspend_inferior, darwin_resume_inferior)
2939         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2940         (darwin_check_new_threads): Check result of get_darwin_inferior.
2941
2942 2018-07-31  Joel Brobecker  <[email protected]>
2943
2944         GDB 8.1.1 released.
2945
2946 2018-07-31  Jan Vrany  <[email protected]>
2947
2948         * varobj.c (varobj_get_path_expr_parent): Report an error if
2949         parent is a dynamic varobj.
2950
2951 2018-07-31  Simon Marchi  <[email protected]>
2952
2953         * gnulib/aclocal.m4: Re-generate.
2954         * gnulib/config.in: Re-generate.
2955         * gnulib/configure: Re-generate.
2956         * gnulib/import/Makefile.in: Re-generate.
2957         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2958         * gnulib/import/m4/onceonly.m4: Re-generate.
2959
2960 2018-07-31  Simon Marchi  <[email protected]>
2961
2962         * target-descriptions.c (struct xml_test_tdesc): New.
2963         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2964         (record_xml_tdesc): Update.
2965         (maintenance_check_xml_descriptions): Update.
2966         * target-descriptions.h (record_xml_tdesc): Update comment.
2967
2968 2018-07-30  Andrew Burgess  <[email protected]>
2969
2970         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2971         checking array bounds are defined.
2972
2973 2018-07-30  Tom Tromey  <[email protected]>
2974
2975         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2976         irreflexivity violation.
2977
2978 2018-07-30  Tom Tromey  <[email protected]>
2979
2980         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2981         * value.c (unpack_long): Remove lint code.
2982         * valops.c (value_ind): Remove lint code.
2983         * valarith.c (value_x_binop, value_x_unop, value_equal)
2984         (value_pos): Remove lint code.
2985
2986 2018-07-28  Tom de Vries  <[email protected]>
2987
2988         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2989         with undefined upper bound as <optimized out>.
2990
2991 2018-07-27  Sergio Durigan Junior  <[email protected]>
2992
2993         * gcore.in: Rename variable "name" to "prefix".  Expand
2994         "usage" text.
2995
2996 2018-07-14  Jon Turney  <[email protected]>
2997
2998         * windows-nat.c (windows_nat_target::create_inferior): Update to
2999         call close() in global namespace.
3000
3001 2018-07-26  Tom Tromey  <[email protected]>
3002
3003         * dwarf-index-write.c (add_address_entry): Don't add objfile
3004         offsets.
3005         * dbxread.c (find_stab_function): Rename from
3006         find_stab_function_addr.  Return a bound_minimal_symbol.
3007         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3008         Don't add objfile offsets.
3009         (end_psymtab): Use raw_text_low, raw_text_high,
3010         MSYMBOL_VALUE_RAW_ADDRESS.
3011         (read_ofile_symtab): Update.
3012         (process_one_symbol): Update.
3013         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3014         offsets.
3015         (dw2_relocate): Remove.
3016         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3017         searching addrmap.
3018         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3019         Update.
3020         (process_psymtab_comp_unit_reader, add_partial_symbol)
3021         (add_partial_subprogram, dwarf2_ranges_read): Update.
3022         (load_partial_dies): Update.
3023         (add_address_entry): Don't add objfile offsets.
3024         (dwarf2_build_include_psymtabs): Update.
3025         (create_addrmap_from_aranges): Don't add objfile offsets.
3026         (dw2_find_pc_sect_compunit_symtab): Update.
3027         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3028         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3029         Update.
3030         (parse_partial_symbols): Don't add objfile offsets.  Use
3031         raw_text_low, raw_text_high.  Update.
3032         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3033         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3034         or call 'relocate' quick function.  Clear psymbol_map.
3035         * psympriv.h (struct partial_symbol) <address>: Add section
3036         offset.
3037         <set_unrelocated_address>: Rename from set_address.
3038         <raw_text_low, raw_text_high>: New methods.
3039         <text_low, text_high>: Add objfile parameter.
3040         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3041         set_unrelocated_address.
3042         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3043         (find_pc_psymbol): Update.
3044         (fixup_psymbol_section, relocate_psymtabs): Remove.
3045         (dump_psymtab, psym_functions): Update.
3046         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3047         parameter.
3048         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3049         (start_psymtab_common): Update.
3050         * symfile-debug.c (debug_qf_relocate): Remove.
3051         (debug_sym_quick_functions): Update.
3052         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3053         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3054         Update.
3055
3056 2018-07-26  Tom Tromey  <[email protected]>
3057
3058         * dbxread.c (end_psymtab): Use text_high_valid and
3059         text_low_valid.
3060         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3061         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3062         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3063         Update comment.
3064         <text_low_valid, text_high_valid>: New fields.
3065         <set_text_low, set_text_high>: Update.
3066         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3067
3068 2018-07-26  Tom Tromey  <[email protected]>
3069
3070         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3071         Update.
3072         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3073         textlow and texthigh fields.
3074         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3075         Update.
3076         * mdebugread.c (parse_lines, parse_partial_symbols)
3077         (psymtab_to_symtab_1): Update.
3078         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3079         Rename fields.  Update comment.  Now private.
3080         <text_low, text_high, set_text_low, set_text_high>: New methods.
3081         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3082         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3083         (start_psymtab_common, maintenance_info_psymtabs)
3084         (maintenance_check_psymtabs): Update.
3085         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3086         texthigh fields.
3087         (scan_xcoff_symtab): Update.
3088
3089 2018-07-26  Tom Tromey  <[email protected]>
3090
3091         * psympriv.h (struct partial_symbol) <unrelocated_address,
3092         address, set_address>: New methods.
3093         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3094         (fixup_psymbol_section, relocate_psymtabs): Update.
3095         (print_partial_symbols): Add 'objfile' parameter.  Update.
3096         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3097         Update.
3098
3099 2018-07-26  Tom Tromey  <[email protected]>
3100
3101         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3102         (debug_names::write_psymbols): Update.
3103         * psympriv.h (struct partial_symbol): Derive from
3104         general_symbol_info.
3105         <obj_section>: New method.
3106         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3107         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3108         (find_pc_sect_psymbol, fixup_psymbol_section)
3109         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3110         (print_partial_symbols, recursively_search_psymtabs)
3111         (compare_psymbols, psymbol_hash, psymbol_compare)
3112         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3113         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3114
3115 2018-07-26  Tom Tromey  <[email protected]>
3116
3117         * dbxread.c (end_psymtab): Remove dead code.
3118
3119 2018-07-26  Andrew Burgess  <[email protected]>
3120
3121         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3122         DWARF unwinders are disabled.
3123         * dwarf2-frame.c: Add dwarf2read.h include.
3124         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3125         disabled.
3126         (dwarf2_frame_unwinders_enabled_p): Define.
3127         (show_dwarf_unwinders_enabled_p): New function.
3128         (_initialize_dwarf2_frame): Register switch to control DWARF
3129         unwinder use.
3130         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3131         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3132         (show_dwarf_cmdlist): Remove static keyword.
3133         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3134         (show_dwarf_cmdlist): Declare.
3135         * NEWS: Document new feature.
3136
3137 2018-07-26  Tom de Vries  <[email protected]>
3138
3139         PR breakpoints/23366
3140         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3141
3142 2018-07-26  Tom de Vries  <[email protected]>
3143
3144         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3145         DW_AT_count can't be translated to a dynamic prop.
3146
3147 2018-07-25  Tom de Vries  <[email protected]>
3148
3149         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3150         try/catch.
3151
3152 2018-07-25  Jan Vrany  <[email protected]>
3153
3154         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3155
3156 2018-07-25  Joel Brobecker  <[email protected]>
3157
3158         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3159
3160 2018-07-24  Keith Seitz  <[email protected]
3161
3162         PR symtab/23010
3163         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3164         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3165         instead of add_symbol_to_list.
3166         (read_file_scope): Call prepare_one_comp_unit before reading
3167         any other DIEs.
3168
3169 2018-07-24  Simon Marchi  <[email protected]>
3170
3171         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3172
3173 2018-07-24  Tom Tromey  <[email protected]>
3174
3175         * utils.c (malloc, realloc, free): Don't declare.
3176         * configure, config.in: Rebuild.
3177         * configure.ac: Don't check for declarations of free, malloc, or
3178         realloc.
3179
3180 2018-07-22  Simon Marchi  <[email protected]>
3181
3182         * aarch64-linux-nat.c
3183         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3184         variable.
3185         * arm-linux-nat.c (fetch_regs): Likewise.
3186         (store_regs): Likewise.
3187         (fetch_vfp_regs): Likewise.
3188         (store_vfp_regs): Likewise.
3189         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3190         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3191         (arm_linux_nat_target::insert_watchpoint): Likewise.
3192         (arm_linux_nat_target::remove_watchpoint): Likewise.
3193         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3194         Likewise.
3195         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3196         Likewise.
3197         * ppc-linux-nat.c (fetch_register): Likewise.
3198         (fetch_all_gp_regs): Likewise.
3199         (fetch_ppc_registers): Likewise.
3200         (store_all_gp_regs): Likewise.
3201         (store_ppc_registers): Likewise.
3202         (hwdebug_insert_point): Likewise.
3203         (can_use_watchpoint_cond_accel): Likewise.
3204         * remote-sim.c (gdb_os_write_stdout): Likewise.
3205
3206 2018-07-22  Simon Marchi  <[email protected]>
3207             Tom Tromey  <[email protected]>
3208
3209         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3210         test for it.
3211         * configure: Rebuild.
3212
3213 2018-07-22  Tom Tromey  <[email protected]>
3214
3215         * regformats/regdat.sh: Define xmltarget_${name} inside
3216         #ifndef IN_PROCESS_AGENT.
3217
3218 2018-07-22  Tom Tromey  <[email protected]>
3219
3220         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3221
3222 2018-07-22  Tom Tromey  <[email protected]>
3223
3224         * symfile.c (reread_symbols): Notify iter, not objfile.
3225
3226 2018-07-22  Tom Tromey  <[email protected]>
3227
3228         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3229         Use arch_ops.
3230         (ravenscar_thread_target::prepare_to_store): Likewise.
3231
3232 2018-07-22  Tom Tromey  <[email protected]>
3233
3234         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3235         unused variable.  Call value_fetch_lazy when needed.
3236         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3237         Remove unused variable.  Call value_fetch_lazy when needed.
3238
3239 2018-07-22  Tom Tromey  <[email protected]>
3240
3241         * m32c-tdep.c (mark_dma): Return void.
3242         (make_regs): Remove unused declarations.
3243
3244 2018-07-22  Tom Tromey  <[email protected]>
3245
3246         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3247         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3248         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3249         bkscm_get_valid_block_smob_arg_unsafe for effect.
3250
3251 2018-07-22  Tom Tromey  <[email protected]>
3252
3253         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3254         value_type.
3255
3256 2018-07-22  Tom Tromey  <[email protected]>
3257
3258         * windows-nat.c (saved_context): Conditionally define.
3259         * remote.c (remote_target::remote_btrace_maybe_reopen):
3260         Conditionally declare "warned".
3261         * inflow.c (sigquit_ours): Conditionally define.
3262         (new_tty): Move "tty" declaration inside #if.
3263         * guile/guile.c (guile_datadir): Conditionally define.
3264         * charset.c (set_be_le_names): Move some declarations inside #if.
3265         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3266         #if.
3267         (parse_xml_btrace_conf): Likewise.
3268
3269 2018-07-22  Tom Tromey  <[email protected]>
3270
3271         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3272
3273 2018-07-22  Tom Tromey  <[email protected]>
3274
3275         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3276         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3277         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3278         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3279         * stack.c (frame_apply_level_command): Remove unused variable.
3280         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3281         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3282         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3283         unused variable.
3284         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3285         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3286         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3287         variable.
3288         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3289         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3290         variable.
3291         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3292         Remove unused variable.
3293         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3294         variable.
3295         * common/tdesc.c (print_xml_feature::visit): Remove unused
3296         variable.
3297         * compile/compile-object-load.c (store_regs): Remove unused
3298         variables.
3299         * complaints.c (clear_complaints): Remove unused variable.
3300         * corelow.c (core_target_open): Remove unused variable.
3301         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3302         variable.
3303         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3304         variable.
3305         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3306         variable.
3307         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3308         variable.
3309         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3310         variable.
3311         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3312         variable.
3313         * ia64-tdep.c (examine_prologue): Remove unused variable.
3314         * infcall.c (run_inferior_call): Remove unused variable.
3315         * inferior.c (exit_inferior): Remove unused variable.
3316         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3317         * linespec.c (decode_line_2): Remove unused variable.
3318         * linux-nat.c (super_close): Remove.
3319         * linux-tdep.c (linux_info_proc): Remove unused variable.
3320         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3321         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3322         Remove unused variable.
3323         * parse.c (find_minsym_type_and_address): Remove unused variable.
3324         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3325         variable.
3326         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3327         variable.
3328         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3329         variables.
3330         * record-btrace.c (record_btrace_target::store_registers): Remove
3331         unused variable.
3332         (cmd_show_record_btrace_cpu): Remove unused variable.
3333         * riscv-tdep.c (riscv_register_reggroup_p)
3334         (riscv_push_dummy_call, riscv_return_value): Remove unused
3335         variable.
3336         * rust-exp.y (literal): Remove unused variable.
3337         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3338         unused variable.
3339         <STRUCTOP_ANONYMOUS>: Likewise.
3340         * s390-linux-tdep.c (s390_linux_init_abi_31)
3341         (s390_linux_init_abi_64): Remove unused variable.
3342         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3343         (file_select_thread, net_windows_open, _initialize_ser_windows):
3344         Remove unused variables.
3345         * symtab.c (find_pc_sect_line): Remove unused variable.
3346         * target-memory.c (compute_garbled_blocks): Remove unused
3347         variable.
3348         (target_write_memory_blocks): Remove unused variable.
3349         * target.c (target_stack::unpush): Remove unused variables.
3350         * tracepoint.c (start_tracing, all_tracepoint_actions)
3351         (merge_uploaded_trace_state_variables)
3352         (print_one_static_tracepoint_marker): Remove unused variable.
3353         * unittests/basic_string_view/element_access/char/1.cc (test01):
3354         Remove unused variable.
3355         * windows-nat.c (windows_continue, windows_add_all_dlls)
3356         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3357         Remove unused variables.
3358
3359 2018-07-21  Simon Marchi  <[email protected]>
3360
3361         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3362         attr_profile in HAVE_ELF.
3363         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3364         HAVE_ELF.
3365
3366 2018-07-20  Simon Marchi  <[email protected]>
3367
3368         * frame.c (frame_register_unwind): Change parameter name.
3369         (frame_unwind_register): Likewise.
3370         (frame_unwind_register_value): Likewise.
3371         (frame_unwind_register_signed): Likewise.
3372         (frame_unwind_register_unsigned): Likewise.
3373         * frame.h (frame_register_unwind): Likewise.
3374         (frame_unwind_register): Likewise.
3375         (frame_unwind_register_value): Likewise.
3376         (frame_unwind_register_signed): Likewise.
3377         (frame_unwind_register_unsigned): Likewise.
3378         (frame_unwind_arch): Likewise.
3379
3380 2018-07-20  Maciej W. Rozycki  <[email protected]>
3381
3382         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3383         ISA maintenance.
3384
3385 2018-07-20  Maciej W. Rozycki  <[email protected]>
3386
3387         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3388         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3389         hand.
3390
3391 2018-07-20  Keith Seitz  <[email protected]>
3392
3393         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3394         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3395         m_compunit_symtab, m_language>: Add "m_" prefix.
3396         Update all uses.
3397         * buildsym.c: Update all uses.
3398
3399 2018-07-20  Tom Tromey  <[email protected]>
3400
3401         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3402         * buildsym.h (record_line_ftype): Remove typedef.
3403
3404 2018-07-20  Tom Tromey  <[email protected]>
3405
3406         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3407         (end_expandable_symtab): Likewise.
3408         (end_symtab_get_static_block): Likewise.
3409         (end_symtab_from_static_block): Likewise.
3410         * buildsym-legacy.c (augment_type_symtab): Remove.
3411         (end_expandable_symtab): Remove.
3412         (end_symtab_get_static_block): Remove.
3413         (end_symtab_from_static_block): Remove.
3414
3415 2018-07-20  Tom Tromey  <[email protected]>
3416
3417         * dwarf2read.c: Include buildsym.h.
3418         (struct dwarf2_cu) <builder>: New method.
3419         (fixup_go_packaging): Update.
3420         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3421         use scoped_free_pendings.
3422         (using_directives): Add "cu" parameter, remove "language".
3423         (read_import_statement, setup_type_unit_groups, )
3424         (read_func_scope, read_lexical_block_scope)
3425         (dwarf2_record_block_ranges, read_namespace): Update.
3426         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3427         (lnp_state_machine::handle_end_sequence): Update.
3428         (class lnp_state_machine) <m_cu>: New member.
3429         <m_record_line_callback>: Remove.
3430         <m_currently_recording_lines>: New member.
3431         (lnp_state_machine::handle_set_file): Update.
3432         (noop_record_line): Remove.
3433         (dwarf_record_line_p): Add cu parameter.
3434         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3435         (lnp_state_machine::record_line)
3436         (lnp_state_machine::lnp_state_machine)
3437         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3438         (dwarf_decode_lines): Update.
3439         (dwarf2_start_subfile): Add cu parameter.
3440         (dwarf2_start_symtab, new_symbol): Update.
3441         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3442         Remove dwarf2_per_objfile parameter.
3443         (dwarf_decode_macros): Update.
3444
3445 2018-07-20  Tom Tromey  <[email protected]>
3446
3447         * stabsread.c (define_symbol): Update.
3448         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3449         * dwarf2read.c (new_symbol): Update.
3450         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3451         * cp-namespace.c: Include buildsym.h.
3452         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3453         * buildsym-legacy.c (get_buildsym_compunit): New function.
3454
3455 2018-07-20  Tom Tromey  <[email protected]>
3456
3457         * xcoffread.c: Include buildsym-legacy.h.
3458         * windows-nat.c: Include buildsym-legacy.h.
3459         * stabsread.c: Include buildsym-legacy.h.
3460         * mdebugread.c: Include buildsym-legacy.h.
3461         * buildsym-legacy.h: New file.
3462         * buildsym-legacy.c: New file, from buildsym.c.
3463         * go32-nat.c: Include buildsym-legacy.h.
3464         * dwarf2read.c: Include buildsym-legacy.h.
3465         * dbxread.c: Include buildsym-legacy.h.
3466         * cp-namespace.c: Include buildsym-legacy.h.
3467         * coffread.c: Include buildsym-legacy.h.
3468         * buildsym.h: Move some contents to buildsym-legacy.h.
3469         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3470         buildsym-legacy.c.
3471         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3472
3473 2018-07-20  Tom Tromey  <[email protected]>
3474
3475         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3476         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3477         (buildsym_compunit::buildsym_compunit)
3478         (buildsym_compunit::~buildsym_compunit)
3479         (buildsym_compunit::get_macro_table): Define.
3480
3481 2018-07-20  Tom Tromey  <[email protected]>
3482
3483         * buildsym.c (reset_symtab_globals): Remove.
3484         (buildsym_compunit::end_symtab_from_static_block): Update.
3485         (buildsym_compunit::augment_type_symtab): Update.
3486         (end_symtab_from_static_block): Call free_buildsym_compunit.
3487         (augment_type_symtab, end_symtab, end_expandable_symtab):
3488         Likewise.
3489
3490 2018-07-20  Tom Tromey  <[email protected]>
3491
3492         * arch-utils.c: Do not include buildsym.h.
3493         * mipsread.c: Do not include buildsym.h.
3494         * machoread.c: Do not include buildsym.h.
3495         * elfread.c: Do not include buildsym.h.
3496
3497 2018-07-20  Tom Tromey  <[email protected]>
3498
3499         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3500         initialization.
3501         (buildsym_compunit): Add new constructor.
3502         (struct buildsym_compunit) <get_last_source_file, finish_block,
3503         record_block_range, start_subfile, patch_subfile_names,
3504         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3505         set_last_source_start_addr, get_last_source_start_addr,
3506         get_local_using_directives, set_local_using_directives,
3507         get_global_using_directives, outermost_context_p,
3508         get_current_context_stack, get_context_stack_depth,
3509         get_current_subfile, get_local_symbols, get_file_symbols,
3510         get_global_symbols, record_debugformat, record_producer,
3511         push_context, pop_context, end_symtab_get_static_block,
3512         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3513         New public methods.
3514         <record_pending_block, finish_block_internal, make_blockvector,
3515         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3516         private methods.
3517         Update all users.
3518
3519 2018-05-22  Tom Tromey  <[email protected]>
3520
3521         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3522         parameter.
3523         (finish_block_internal): Update.
3524
3525 2018-07-20  Tom Tromey  <[email protected]>
3526
3527         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3528         parameter.
3529         (finish_block_internal): Update.
3530
3531 2018-07-20  Tom Tromey  <[email protected]>
3532
3533         * buildsym.h (EXTERN): Don't define or undef.
3534         * buildsym.c (EXTERN): Don't define.
3535
3536 2018-07-20  Tom Tromey  <[email protected]>
3537
3538         * buildsym.c: Remove TODO comment.
3539
3540 2018-07-20  Tom Tromey  <[email protected]>
3541
3542         * coffread.c (coff_symtab_read): Update.
3543         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3544         (xcoff_new_init): Update.
3545         * mipsread.c (mipscoff_new_init): Update.
3546         * mdebugread.c (mdebug_build_psymtabs): Update.
3547         * elfread.c (elf_new_init): Update.
3548         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3549         Update.
3550         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3551         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3552         (stabsect_build_psymtabs): Update.
3553         * buildsym.h (buildsym_init): Don't declare.
3554         * buildsym.c: Update comment.
3555         (prepare_for_building): Remove.
3556         (start_symtab, restart_symtab): Update.
3557         (reset_symtab_globals): Update comment.
3558         (buildsym_init): Remove.
3559
3560 2018-07-20  Tom Tromey  <[email protected]>
3561
3562         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3563         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3564         (read_enum_type, common_block_start, common_block_end)
3565         (cleanup_undefined_types_1, finish_global_stabs): Update.
3566         * mdebugread.c (psymtab_to_symtab_1): Update.
3567         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3568         (read_lexical_block_scope, new_symbol): Update.
3569         * dbxread.c (process_one_symbol): Update.
3570         * coffread.c (coff_symtab_read, process_coff_symbol)
3571         (coff_read_enum_type): Update.
3572         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3573         declare.
3574         (get_local_symbols, get_file_symbols, get_global_symbols): New
3575         functions.
3576         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3577         m_global_symbols.
3578         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3579         (~scoped_free_pendings): Update.
3580         (finish_block, prepare_for_building, reset_symtab_globals)
3581         (end_symtab_get_static_block, end_symtab_with_blockvector)
3582         (augment_type_symtab, push_context): Update.
3583         (get_local_symbols, get_file_symbols, get_global_symbols): New
3584         functions.
3585         (buildsym_init): Update.
3586
3587 2018-07-20  Tom Tromey  <[email protected]>
3588
3589         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3590         (process_full_type_unit): Likewise.
3591         (dwarf2_start_symtab): Set list_in_scope.
3592
3593 2018-07-20  Tom Tromey  <[email protected]>
3594
3595         * dwarf2read.c (process_psymtab_comp_unit_reader)
3596         (build_type_psymtabs_reader): Do not set list_in_scope.
3597
3598 2018-07-20  Tom Tromey  <[email protected]>
3599
3600         * buildsym.c (free_pendings): Remove.
3601         (add_symbol_to_list, scoped_free_pendings)
3602         (finish_block_internal, buildsym_init): Update.
3603
3604 2018-07-20  Tom Tromey  <[email protected]>
3605
3606         * xcoffread.c (read_xcoff_symtab): Update.
3607         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3608         Update.
3609         * dbxread.c (process_one_symbol): Update.
3610         * coffread.c (coff_symtab_read): Update.
3611         * buildsym.h (finish_block): Update.
3612         * buildsym.c (finish_block): Remove "listhead" argument.
3613         (end_symtab_get_static_block): Update.
3614
3615 2018-07-20  Tom Tromey  <[email protected]>
3616
3617         * buildsym.h (class scoped_free_pendings): Remove constructor.
3618         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3619         method.
3620         <m_pending_block_obstack, m_pending_blocks>: New members.
3621         (pending_block_obstack, pending_blocks): Remove.
3622         (scoped_free_pendings::scoped_free_pendings): Default.
3623         (~scoped_free_pendings): Update.
3624         (free_pending_blocks): Remove.
3625         (finish_block_internal, record_pending_block, make_blockvector)
3626         (end_symtab_get_static_block, augment_type_symtab, push_context)
3627         (buildsym_init): Update.
3628
3629 2018-07-20  Tom Tromey  <[email protected]>
3630
3631         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3632         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3633         members.
3634         (pending_addrmap, pending_addrmap_obstack)
3635         (pending_addrmap_interesting): Remove.
3636         (scoped_free_pendings, record_block_range, make_blockvector)
3637         (prepare_for_building, reset_symtab_globals, buildsym_init):
3638         Update.
3639
3640 2018-07-20  Tom Tromey  <[email protected]>
3641
3642         * xcoffread.c (process_linenos): Update.
3643         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3644         * mdebugread.c (psymtab_to_symtab_1): Update.
3645         * dwarf2read.c (setup_type_unit_groups)
3646         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3647         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3648         * dbxread.c (process_one_symbol): Update.
3649         * coffread.c (coff_symtab_read, enter_linenos)
3650         (process_coff_symbol): Update.
3651         * buildsym.h (current_subfile): Don't declare.
3652         (get_current_subfile): Declare.
3653         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3654         member.
3655         (start_subfile, free_buildsym_compunit, push_subfile)
3656         (prepare_for_building, start_symtab): Update.
3657         (get_current_subfile): New function.
3658
3659 2018-07-20  Tom Tromey  <[email protected]>
3660
3661         * coffread.c (coff_symtab_read): Update.
3662         * xcoffread.c (read_xcoff_symtab): Update.
3663         * dwarf2read.c (new_symbol): Update.
3664         (read_func_scope, read_lexical_block_scope): Update.
3665         * dbxread.c (process_one_symbol): Update.
3666         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3667         (outermost_context_p): Remove macro.
3668         (outermost_context_p, get_current_context_stack)
3669         (get_context_stack_depth): Declare.
3670         (pop_context): Return struct context_stack.
3671         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3672         member.
3673         (context_stack_size): Remove.
3674         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3675         (prepare_for_building, end_symtab_get_static_block)
3676         (augment_type_symtab, push_context): Update.
3677         (pop_context): Return struct context_stack.
3678         (outermost_context_p, get_current_context_stack)
3679         (get_context_stack_depth): New functions.
3680         (buildsym_init): Update.
3681
3682 2018-07-20  Tom Tromey  <[email protected]>
3683
3684         * rust-exp.y: Now a pure parser.  Update all rules.
3685         (%union): Move earlier.
3686         (current_parser, work_obstack): Remove globals.
3687         (rust_parser, ~rust_parser): Update.
3688         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3689         lex_character, lex_number, lex_string, lex_identifier,
3690         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3691         convert_name, convert_params_to_expression,
3692         convert_ast_to_expression, ast_basic_type, ast_operation,
3693         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3694         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3695         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3696         ast_array_type, ast_slice_type, ast_reference_type,
3697         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3698         (rust_parse): Update.
3699         (rustyyerror, rustyylex): Add parser parameter.
3700         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3701         (rust_lex_stringish_test, rust_lex_test_sequence)
3702         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3703         (rust_lex_test_push_back, rust_lex_tests): Update.
3704
3705 2018-07-19  Pedro Alves  <[email protected]>
3706
3707         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3708         gdb::unique_xmalloc_ptr.
3709         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3710         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3711         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3712         copy-initialization.
3713         * guile/scm-pretty-print.c (ppscm_print_children): Use
3714         gdb::unique_xmalloc_ptr instead of cleanups.
3715         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3716         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3717         gdb::unique_xmalloc_ptr.
3718         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3719         Adjust to use gdb::unique_xmalloc_ptr.
3720         * guile/scm-utils.c (extract_arg): Adjust.
3721         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3722         gdb::unique_xmalloc_ptr instead of a cleanup.
3723
3724 2018-07-19  Tom Tromey  <[email protected]>
3725
3726         * utils.c (do_value_free_to_mark)
3727         (make_cleanup_value_free_to_mark): Remove.
3728         * utils.h (make_cleanup_value_free_to_mark): Remove.
3729
3730 2018-07-19  Pedro Alves  <[email protected]>
3731
3732         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3733         forwarding reference.
3734
3735 2018-07-18  Pedro Alves  <[email protected]>
3736
3737         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3738         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3739         cleanup.
3740
3741 2018-07-18  Pedro Alves  <[email protected]>
3742
3743         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3744         exceptions.
3745         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3746         (gdbscm_wrap): New.
3747         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3748         directly instead of a cleanup.
3749         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3750         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3751         (vlscm_binop_gdbthrow): New, factored out from ...
3752         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3753         (vlscm_rich_compare): Use gdbscm_wrap.
3754         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3755         instead of a cleanup.
3756         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3757         cleanup.
3758         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3759         Use xfree directly instead of a cleanup.
3760         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3761         Adjust to use gdbscm_wrap and scoped_value_mark.
3762         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3763         (gdbscm_value_address, gdbscm_value_dereference)
3764         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3765         scoped_value_mark.
3766         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3767         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3768         scoped_value_mark.
3769         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3770         gdbscm_wrap and scoped_value_mark.
3771         (gdbscm_value_to_string): Use xfree directly instead of a
3772         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3773         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3774         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3775         scoped_value_mark.
3776         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3777         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3778         scoped_value_mark.
3779         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3780         gdbscm_wrap.
3781
3782 2018-07-18  Tom de Vries  <[email protected]>
3783
3784         * findvar.c (default_read_var_value): Also resolve dynamic type for
3785         LOC_OPTIMIZED_OUT vars.
3786
3787 2018-07-18  Maciej W. Rozycki  <[email protected]>
3788
3789         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3790         decoding.
3791
3792 2018-07-17  Tom Tromey  <[email protected]>
3793
3794         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3795         (compute_enum_list, pascm_set_param_value_x)
3796         (gdbscm_parameter_value): Update.
3797         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3798         (gdbscm_scm_to_host_string): Update.
3799         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3800         Update.
3801         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3802         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3803         * guile/scm-string.c (gdbscm_scm_to_string): Return
3804         unique_xmalloc_ptr.
3805         (gdbscm_scm_to_host_string): Likewise.
3806
3807 2018-07-17  Tom Tromey  <[email protected]>
3808
3809         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3810         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3811         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3812         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3813         unique_xmalloc_ptr.
3814
3815 2018-07-17  Tom Tromey  <[email protected]>
3816
3817         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3818         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3819         Update.
3820         * guile/scm-cmd.c (cmdscm_function): Update.
3821         * guile/scm-pretty-print.c
3822         (ppscm_print_exception_unless_memory_error): Update.
3823         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3824         Return unique_xmalloc_ptr.
3825
3826 2018-07-17  Tom Tromey  <[email protected]>
3827
3828         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3829         Use string_printf.
3830
3831 2018-07-17  Jim Wilson  <[email protected]>
3832
3833         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3834         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3835         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3836         unecessary braces after EF_RISCV_RVC test.  Delete call to
3837         set_gdbarch_decr_pc_after_break.
3838
3839         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3840         RISCV_LAST_FP_REGNUM + 1.
3841         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3842
3843 2018-07-17  Tom Tromey  <[email protected]>
3844
3845         * configure.ac: Remove --disable-gdbcli.
3846         * configure: Rebuild.
3847         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3848         (SUBDIR_CLI_CFLAGS): Remove.
3849         (SFILES): Use SUBDIR_CLI_SRCS.
3850         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3851
3852 2018-07-17  Tom Tromey  <[email protected]>
3853
3854         PR gdb/18624:
3855         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3856
3857 2018-07-16  Jim Wilson  <[email protected]>
3858
3859         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3860
3861 2018-07-16  Simon Marchi  <[email protected]>
3862
3863         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3864         variable.
3865         (libunwind_frame_sniffer): Likewise.
3866         (libunwind_frame_prev_register): Likewise.
3867         (libunwind_sigtramp_frame_sniffer): Likewise.
3868         * ia64-tdep.c (ia64_access_reg): Likewise.
3869         (ia64_access_rse_reg): Likewise.
3870         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3871         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3872
3873 2018-07-16  Simon Marchi  <[email protected]>
3874
3875         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3876
3877 2018-07-16  Simon Marchi  <[email protected]>
3878
3879         * remote-sim.c (gdbsim_target::close,
3880         gdbsim_target::mourn_inferior): Remove unused variables.
3881
3882 2018-07-16  Simon Marchi  <[email protected]>
3883
3884         * ia64-tdep.c (ktab_buf): New global.
3885         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3886         (get_kernel_table): Adjust.
3887
3888 2018-07-16  Tom Tromey  <[email protected]>
3889
3890         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3891         * dwarf2read.c (using_directives, new_symbol): Use
3892         outermost_context_p.
3893         * dbxread.c (process_one_symbol): Use outermost_context_p.
3894         * coffread.c (coff_symtab_read): Use outermost_context_p.
3895
3896 2018-07-16  Tom Tromey  <[email protected]>
3897
3898         * dwarf2read.c (using_directives, read_func_scope)
3899         (read_lexical_block_scope): Update.
3900         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3901         * buildsym.h (local_using_directives, global_using_directives):
3902         Don't declare.
3903         (get_local_using_directives, set_local_using_directives)
3904         (get_global_using_directives): Declare.
3905         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3906         m_global_using_directives>: New members.
3907         (finish_block_internal, prepare_for_building)
3908         (reset_symtab_globals, end_symtab_get_static_block)
3909         (push_context): Update.
3910         (get_local_using_directives, set_local_using_directives)
3911         (get_global_using_directives): New functions.
3912         (buildsym_init): Update.
3913
3914 2018-07-16  Tom Tromey  <[email protected]>
3915
3916         * xcoffread.c (xcoff_initial_scan): Don't call
3917         free_pending_blocks.
3918         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3919         * buildsym.h (class scoped_free_pendings): Add constructor.
3920         (free_pending_blocks): Don't declare.
3921         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3922         (free_pending_blocks): Now static.
3923
3924 2018-07-16  Tom Tromey  <[email protected]>
3925
3926         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3927         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3928         member.
3929         (struct subfile_stack): Remove.
3930         (subfile_stack): Remove.
3931         (push_subfile, pop_subfile, buildsym_init): Update.
3932
3933 2018-07-16  Tom Tromey  <[email protected]>
3934
3935         * buildsym.c (push_subfile): Use gdb_assert.
3936         (pop_subfile): Use gdb_assert.
3937
3938 2018-07-16  Tom Tromey  <[email protected]>
3939
3940         * buildsym.h (merge_symbol_lists): Remove.
3941         * buildsym.c (merge_symbol_lists): Remove.
3942
3943 2018-07-16  Tom Tromey  <[email protected]>
3944
3945         * stabsread.c (scan_file_globals): Update comment.
3946         * stabsread.h (scan_file_globals): Move from buildsym.h.
3947         * buildsym.h (scan_file_globals): Move to stabsread.h.
3948
3949 2018-07-16  Tom Tromey  <[email protected]>
3950
3951         * xcoffread.c (xcoff_new_init): Update.
3952         * mipsread.c (mipscoff_new_init): Update.
3953         * mdebugread.c (mdebug_build_psymtabs): Update.
3954         * elfread.c (elf_new_init): Update.
3955         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3956         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3957         * buildsym.h (buildsym_new_init): Don't declare.
3958         * buildsym.c (buildsym_new_init): Remove.
3959
3960 2018-07-16  Tom Tromey  <[email protected]>
3961
3962         * stabsread.h (within_function): Move from buildsym.h.
3963         * stabsread.c (start_stabs): Clear within_function.
3964         * coffread.c (coff_start_symtab): Clear within_function.
3965         * buildsym.h (within_function): Move to stabsread.h.
3966         * buildsym.c (prepare_for_building): Update.
3967
3968 2018-07-16  Tom Tromey  <[email protected]>
3969
3970         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3971         * dwarf2read.c (dwarf2_start_symtab): Don't set
3972         processing_gcc_compilation.
3973         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3974
3975 2018-07-16  Tom Tromey  <[email protected]>
3976
3977         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3978         (next_symbol_text_func): Move from buildsym.h.
3979         * stabsread.c (hashname): Move from buildsym.c.
3980         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3981         (next_symbol_text_func, hashname): Move to stabsread.h.
3982         * buildsym.c: Don't include bcache.h
3983         (hashname): Move to stasbread.c.
3984
3985 2018-07-16  Tom Tromey  <[email protected]>
3986
3987         * buildsym.h (context_stack_size): Don't declare.
3988         * buildsym.c (context_stack_size): New global.
3989
3990 2018-07-16  Tom Tromey  <[email protected]>
3991
3992         * dbxread.c (processing_acc_compilation): New global.
3993         * buildsym.h (processing_acc_compilation): Don't declare.
3994
3995 2018-07-16  Tom Tromey  <[email protected]>
3996
3997         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3998         * dbxread.c (read_ofile_symtab): Update.
3999         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4000         * buildsym.h (last_source_start_addr): Remove.
4001         (set_last_source_start_addr, get_last_source_start_addr):
4002         Declare.
4003         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4004         parameter.
4005         (struct buildsym_compunit) <m_last_source_start_addr>: New
4006         member.
4007         (prepare_for_building): Remove start_addr parameter.
4008         (start_symtab, restart_symtab, end_symtab_get_static_block)
4009         (end_symtab_with_blockvector): Update.
4010         (set_last_source_start_addr, get_last_source_start_addr): New
4011         functions.
4012
4013 2018-07-16  Tom Tromey  <[email protected]>
4014
4015         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4016         member.
4017         (have_line_numbers): Remove.
4018         (record_line, prepare_for_building, end_symtab_get_static_block)
4019         (augment_type_symtab): Update.
4020
4021 2018-07-16  Tom Tromey  <[email protected]>
4022
4023         * buildsym.c (~buildsym_compunit): Free the macro table.
4024         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4025         methods.
4026         <m_pending_macros>: New member.
4027         (pending_macros): Remove.
4028         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4029         (reset_symtab_globals, end_symtab_get_static_block)
4030         (end_symtab_with_blockvector, augment_type_symtab)
4031         (buildsym_init): Update.
4032
4033 2018-07-16  Tom Tromey  <[email protected]>
4034
4035         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4036         parameter.
4037         (buildsym_compunit::set_last_source_file): New method.
4038         <m_last_source_file>: New member.
4039         (prepare_for_building): Remove "name" parameter.
4040         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4041         (last_source_file): Remove.
4042         (set_last_source_file, get_last_source_file): Update.
4043
4044 2018-07-16  Tom Tromey  <[email protected]>
4045
4046         * buildsym.c (prepare_for_building): Add assert.
4047
4048 2018-07-16  Tom Tromey  <[email protected]>
4049
4050         * buildsym.c (~buildsym_compunit): Update.
4051         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4052         (start_subfile, patch_subfile_names)
4053         (end_symtab_with_blockvector): Update.
4054
4055 2018-07-16  Tom Tromey  <[email protected]>
4056
4057         * buildsym.c (struct buildsym_compunit): Add constructor,
4058         destructor, initializers.
4059         (start_buildsym_compunit): Remove.
4060         (free_buildsym_compunit): Use "delete".
4061         (start_symtab, restart_symtab): Use "new".
4062
4063 2018-07-13  Simon Marchi  <[email protected]>
4064
4065         * symfile.c (set_objfile_default_section_offset): Remove struct
4066         keyword.
4067
4068 2018-07-14  Stafford Horne  <[email protected]>
4069
4070         * (Responsible Maintainers): Add myself as or1k maintainer.
4071
4072 2018-07-13  Tom Tromey  <[email protected]>
4073
4074         * symfile.c (set_objfile_default_section_offset): Use extra braces
4075         around initializer.
4076
4077 2018-07-13  Andreas Arnez  <[email protected]>
4078
4079         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4080         non-branching basr.
4081
4082 2018-07-12  Philippe Waroquiers  <[email protected]>
4083
4084         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4085         unittests/cli-utils-selftests.c
4086         * unittests/cli-utils-selftests.c: New file.
4087
4088 2018-07-12  Philippe Waroquiers  <[email protected]>
4089
4090         * NEWS: Mention new commands. Mention change to 'thread apply'.
4091
4092 2018-07-12  Philippe Waroquiers  <[email protected]>
4093
4094         * thread.c (thr_try_catch_cmd): New function.
4095         (thread_apply_all_command): Handle qcs flags.
4096         (thread_apply_command): Handle qcs flags.
4097         (taas_command): New function.
4098         (tfaas_command): New function.
4099         (_initialize_thread): Update to setup the new commands 'taas
4100         and 'tfaas'. Change doc string for 'thread apply'.
4101
4102 2018-07-12  Philippe Waroquiers  <[email protected]>
4103
4104         * stack.c: (trailing_outermost_frame): New function, mostly
4105         extracted from backtrace_command_1.
4106         (leading_innermost_frame): New function.
4107         (backtrace_command_1): Update to call trailing_outermost_frame.
4108         (frame_apply_command_count): New function.
4109         (frame_apply_level_command): New function.
4110         (frame_apply_all_command): New function.
4111         (frame_apply_command): New function.
4112         (faas_command): New function.
4113         (frame_cmd_list): New variable.
4114         (_initialize_stack): Update to setup the new commands 'frame apply'
4115         and 'faas'.
4116
4117 2018-07-12  Philippe Waroquiers  <[email protected]>
4118
4119         * cli-utils.c (number_or_range_parser::get_number): Only handle
4120         numbers or convenience var as numbers.
4121         (parse_flags): New function.
4122         (parse_flags_qcs): New function.
4123         (number_or_range_parser::finished): Ensure parsing end is detected
4124         before end of string.
4125         * cli-utils.h (parse_flags): New function.
4126         (parse_flags_qcs): New function.
4127         (number_or_range_parser): Remove m_finished bool.
4128         (number_or_range_parser::skip_range): Set m_in_range to false.
4129
4130 2018-07-12  Sergio Durigan Junior  <[email protected]>
4131
4132         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4133         on Windows.
4134
4135 2018-07-11  Sergio Durigan Junior  <[email protected]>
4136             Jan Kratochvil  <[email protected]>
4137             Paul Fertser  <[email protected]>
4138             Tsutomu Seki  <[email protected]>
4139             Pedro Alves  <[email protected]>
4140
4141         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4142         'unittests/parse-connection-spec-selftests.c'.
4143         (COMMON_SFILES): Add 'common/netstuff.c'.
4144         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4145         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4146         * common/netstuff.c: New file.
4147         * common/netstuff.h: New file.
4148         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4149         (wait_for_connect): Update comment.  New parameter
4150         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4151         Use 'sock' directly instead of 'scb->fd'.
4152         (try_connect): New function, with code from 'net_open'.
4153         (net_open): Rewrite main loop to deal with multiple
4154         sockets/addresses.  Handle IPv6-style hostnames; implement
4155         support for IPv6 connections.
4156         * unittests/parse-connection-spec-selftests.c: New file.
4157
4158 2018-07-11  Pedro Alves  <[email protected]>
4159
4160         PR gdb/23377
4161         * remote.c (remote_target::remote_detach_pid): Call
4162         set_current_process.
4163
4164 2018-07-11  Pedro Alves  <[email protected]>
4165
4166         * h8300-tdep.c (h8300_gdbarch_init): Remove
4167         set_gdbarch_ecoff_reg_to_regnum calls.
4168
4169 2018-07-11  Sergio Durigan Junior  <[email protected]>
4170
4171         PR c++/23373
4172         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4173         offsets/sizes for static members of a class/struct.
4174
4175 2018-07-11  Alan Hayward  <[email protected]>
4176
4177         * target-descriptions.c (tdesc_register_bitsize): Rename.
4178         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4179         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4180         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4181
4182 2018-07-10  Tom Tromey  <[email protected]>
4183
4184         * breakpoint.c (moribund_locations): Now static and a
4185         std::vector.
4186         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4187         (build_bpstat_chain, update_global_location_list)
4188         (breakpoint_retire_moribund): Update.
4189         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4190         VEC.
4191
4192 2018-07-10  Andrew Burgess  <[email protected]>
4193
4194         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4195         (riscv_register_reggroup_p): Use new function, remove unneeded
4196         parenthesis.
4197         (riscv_push_dummy_call): Extend assert to compare against xlen or
4198         flen based on register type.
4199
4200 2018-07-10  Andrew Burgess  <[email protected]>
4201
4202         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4203
4204 2018-07-09  Andrew Burgess  <[email protected]>
4205
4206         * remote.c (show_hardware_watchpoint_limit): New function.
4207         (show_hardware_watchpoint_length_limit): New function.
4208         (show_hardware_breakpoint_limit): New function.
4209         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4210         where appropriate, update help text.
4211
4212 2018-07-09  Tom Tromey  <[email protected]>
4213
4214         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4215         (CLIBS): Don't mention NAT_CLIBS.
4216
4217 2018-07-09  Tom Tromey  <[email protected]>
4218
4219         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4220         (LIBGDB_OBS, clean mostlyclean): Update.
4221         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4222
4223 2018-07-09  Tom Tromey  <[email protected]>
4224
4225         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4226         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4227         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4228
4229 2018-07-09  Tom Tromey  <[email protected]>
4230
4231         * Makefile.in (ALLDEPFILES): Remove exec.c.
4232         (COMMON_OBS): Remove exec.o.
4233         (COMMON_SFILES): Add exec.c.
4234
4235 2018-07-09  Tom Tromey  <[email protected]>
4236
4237         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4238
4239 2018-07-09  Tom Tromey  <[email protected]>
4240
4241         * Makefile.in (clean mostlyclean): Remove stamp-version.
4242         (version.c): Depend on stamp-version.
4243         (stamp-version): New rule, from version.c rule.
4244
4245 2018-07-09  Tom Tromey  <[email protected]>
4246
4247         * Makefile.in (init.c): Depend on stamp-init.
4248         (stamp-init): New rule, from init.c rule.
4249         (clean mostlyclean): Remove stamp-init.
4250
4251 2018-07-09  Tom Tromey  <[email protected]>
4252
4253         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4254         SUBDIR_GCC_COMPILE_SRCS.
4255
4256 2018-07-09  Tom Tromey  <[email protected]>
4257
4258         * Makefile.in (init.c): Remove some unused sed rules.
4259
4260 2018-07-09  Tom Tromey  <[email protected]>
4261
4262         * Makefile.in (TSOBS): Remove.
4263         (INIT_FILES): Update.
4264         (LIBGDB_OBS): Update.
4265         (COMMON_SFILES): Add inflow.c.
4266         (SFILES): Remove inflow.c.
4267
4268 2018-07-07  Jan Kratochvil  <[email protected]>
4269
4270         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4271
4272 2018-07-07  Simon Marchi  <[email protected]>
4273
4274         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4275         get_saveloc_name, is_signal_frame_name, step_name,
4276         init_remote_name, create_addr_space_name,
4277         destroy_addr_space_name, search_unwind_table_name,
4278         find_dyn_list_name): Constify.
4279
4280 2018-07-05  Simon Marchi  <[email protected]>
4281
4282         * darwin-nat.c (darwin_pthread_kill): New function.
4283         (darwin_resume_thread): Use darwin_pthread_kill.
4284
4285 2018-07-05  Tom de Vries  <[email protected]>
4286
4287         * macroexp.c (macro_buffer) <operator=>: New member function.
4288
4289 2018-07-04  Tom Tromey  <[email protected]>
4290
4291         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4292
4293 2018-07-04  Simon Marchi  <[email protected]>
4294
4295         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4296         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4297         * maint.c: Likewise.
4298         * top.c: Likewise.
4299
4300 2018-07-04  Joel Brobecker  <[email protected]>
4301
4302         * NEWS: Create a new section for the next release branch.
4303         Rename the section of the current branch, now that it has
4304         been cut.
4305
4306 2018-07-04  Joel Brobecker  <[email protected]>
4307
4308         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4309         * version.in: Bump version to 8.2.50.DATE-git.
4310
4311 2018-07-04  Vyacheslav Barinov  <[email protected]>
4312             Pedro Alves  <[email protected]>
4313
4314         * linux-nat.c (linux_init_ptrace): Rename to ...
4315         (linux_init_ptrace_procfs): ... this.  Call
4316         linux_proc_init_warnings.
4317         (linux_nat_target::post_attach)
4318         (linux_nat_target::post_startup_inferior): Adjust.
4319         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4320         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4321
4322 2018-07-04  Tom de Vries  <[email protected]>
4323
4324         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4325         check ...
4326         (read_comp_unit_head): ... here.
4327
4328 2018-07-03  Tom Tromey  <[email protected]>
4329
4330         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4331         (stop_tracing, tstatus_command)
4332         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4333         (print_one_static_tracepoint_marker): Update.
4334         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4335         std::vector.
4336         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4337         VEC.
4338         (all_tracepoints, static_tracepoints_here): Return std::vector.
4339
4340 2018-07-03  Tom Tromey  <[email protected]>
4341
4342         * common/ptid.c (ptid_equal): Remove.
4343         * common/ptid.h (ptid_equal): Don't declare.
4344         * ada-tasks.c: Update.
4345         * breakpoint.c: Update.
4346         * common/agent.c: Update.
4347         * corelow.c: Update.
4348         * darwin-nat-info.c: Update.
4349         * darwin-nat.c: Update.
4350         * dcache.c: Update.
4351         * dtrace-probe.c: Update.
4352         * dummy-frame.c: Update.
4353         * fbsd-nat.c: Update.
4354         * frame.c: Update.
4355         * gdbthread.h: Update.
4356         * gnu-nat.c: Update.
4357         * go32-nat.c: Update.
4358         * inf-loop.c: Update.
4359         * inf-ptrace.c: Update.
4360         * infcall.c: Update.
4361         * infcmd.c: Update.
4362         * inflow.c: Update.
4363         * infrun.c: Update.
4364         * linux-fork.c: Update.
4365         * linux-nat.c: Update.
4366         * linux-thread-db.c: Update.
4367         * mi/mi-cmd-var.c: Update.
4368         * mi/mi-interp.c: Update.
4369         * mi/mi-main.c: Update.
4370         * nto-procfs.c: Update.
4371         * ppc-linux-tdep.c: Update.
4372         * procfs.c: Update.
4373         * python/py-inferior.c: Update.
4374         * python/py-record-btrace.c: Update.
4375         * python/py-record.c: Update.
4376         * ravenscar-thread.c: Update.
4377         * regcache.c: Update.
4378         * remote-sim.c: Update.
4379         * remote.c: Update.
4380         * sol-thread.c: Update.
4381         * solib.c: Update.
4382         * target.c: Update.
4383         * tui/tui-stack.c: Update.
4384         * varobj.c: Update.
4385         * windows-nat.c: Update.
4386         * windows-tdep.c: Update.
4387
4388 2018-07-03  Tom Tromey  <[email protected]>
4389
4390         * common/ptid.c (ptid_match): Remove.
4391         * common/ptid.h (ptid_match): Don't declare.
4392         * fbsd-nat.c: Update.
4393         * infcmd.c: Update.
4394         * infrun.c: Update.
4395         * linux-nat.c: Update.
4396         * record-btrace.c: Update.
4397         * regcache.c: Update.
4398         * remote.c: Update.
4399
4400 2018-07-03  Tom Tromey  <[email protected]>
4401
4402         * common/ptid.c (ptid_tid_p): Remove.
4403         * common/ptid.h (ptid_tid_p): Don't declare.
4404         * sol-thread.c: Update.
4405
4406 2018-07-03  Tom Tromey  <[email protected]>
4407
4408         * common/ptid.c (ptid_lwp_p): Remove.
4409         * common/ptid.h (ptid_lwp_p): Don't declare.
4410         * fbsd-nat.c: Update.
4411         * linux-nat.c: Update.
4412         * nat/linux-procfs.c: Update.
4413         * nat/x86-linux-dregs.c: Update.
4414         * sol-thread.c: Update.
4415
4416 2018-07-03  Tom Tromey  <[email protected]>
4417
4418         * common/ptid.c (ptid_is_pid): Remove.
4419         * common/ptid.h (ptid_is_pid): Don't declare.
4420         * infrun.c: Update.
4421         * linux-nat.c: Update.
4422         * mi/mi-interp.c: Update.
4423         * remote.c: Update.
4424         * thread.c: Update.
4425
4426 2018-07-03  Tom Tromey  <[email protected]>
4427
4428         * common/ptid.c (ptid_get_tid): Remove.
4429         * common/ptid.h (ptid_get_tid): Don't declare.
4430         * ada-tasks.c: Update.
4431         * aix-thread.c: Update.
4432         * bsd-uthread.c: Update.
4433         * darwin-nat.c: Update.
4434         * fbsd-nat.c: Update.
4435         * i386-darwin-nat.c: Update.
4436         * infrun.c: Update.
4437         * linux-tdep.c: Update.
4438         * nto-procfs.c: Update.
4439         * ppc-ravenscar-thread.c: Update.
4440         * python/py-infthread.c: Update.
4441         * ravenscar-thread.c: Update.
4442         * sol-thread.c: Update.
4443         * sparc-ravenscar-thread.c: Update.
4444         * windows-nat.c: Update.
4445
4446 2018-07-03  Tom Tromey  <[email protected]>
4447
4448         * common/ptid.c (ptid_get_lwp): Remove.
4449         * common/ptid.h (ptid_get_lwp): Don't declare.
4450         * aarch64-linux-nat.c: Update.
4451         * ada-tasks.c: Update.
4452         * aix-thread.c: Update.
4453         * amd64-linux-nat.c: Update.
4454         * arm-linux-nat.c: Update.
4455         * corelow.c: Update.
4456         * fbsd-nat.c: Update.
4457         * fbsd-tdep.c: Update.
4458         * gnu-nat.c: Update.
4459         * i386-cygwin-tdep.c: Update.
4460         * i386-gnu-nat.c: Update.
4461         * i386-linux-nat.c: Update.
4462         * ia64-linux-nat.c: Update.
4463         * inf-ptrace.c: Update.
4464         * infrun.c: Update.
4465         * linux-fork.c: Update.
4466         * linux-nat.c: Update.
4467         * linux-tdep.c: Update.
4468         * linux-thread-db.c: Update.
4469         * mips-linux-nat.c: Update.
4470         * nat/aarch64-linux-hw-point.c: Update.
4471         * nat/aarch64-linux.c: Update.
4472         * nat/linux-btrace.c: Update.
4473         * nat/linux-osdata.c: Update.
4474         * nat/linux-procfs.c: Update.
4475         * nat/x86-linux-dregs.c: Update.
4476         * obsd-nat.c: Update.
4477         * ppc-fbsd-nat.c: Update.
4478         * ppc-linux-nat.c: Update.
4479         * procfs.c: Update.
4480         * python/py-infthread.c: Update.
4481         * ravenscar-thread.c: Update.
4482         * remote.c: Update.
4483         * s390-linux-nat.c: Update.
4484         * sol-thread.c: Update.
4485         * sol2-tdep.c: Update.
4486         * spu-linux-nat.c: Update.
4487         * x86-linux-nat.c: Update.
4488         * xtensa-linux-nat.c: Update.
4489
4490 2018-07-03  Tom Tromey  <[email protected]>
4491
4492         * common/ptid.c (ptid_get_pid): Remove.
4493         * common/ptid.h (ptid_get_pid): Don't declare.
4494         * aarch64-linux-nat.c: Update.
4495         * ada-lang.c: Update.
4496         * aix-thread.c: Update.
4497         * alpha-bsd-nat.c: Update.
4498         * amd64-fbsd-nat.c: Update.
4499         * amd64-linux-nat.c: Update.
4500         * arm-linux-nat.c: Update.
4501         * arm-nbsd-nat.c: Update.
4502         * auxv.c: Update.
4503         * break-catch-syscall.c: Update.
4504         * breakpoint.c: Update.
4505         * bsd-uthread.c: Update.
4506         * corelow.c: Update.
4507         * ctf.c: Update.
4508         * darwin-nat.c: Update.
4509         * fbsd-nat.c: Update.
4510         * fbsd-tdep.c: Update.
4511         * gcore.c: Update.
4512         * gnu-nat.c: Update.
4513         * hppa-nbsd-nat.c: Update.
4514         * hppa-obsd-nat.c: Update.
4515         * i386-fbsd-nat.c: Update.
4516         * ia64-linux-nat.c: Update.
4517         * inf-ptrace.c: Update.
4518         * infcmd.c: Update.
4519         * inferior.c: Update.
4520         * inferior.h: Update.
4521         * inflow.c: Update.
4522         * infrun.c: Update.
4523         * linux-fork.c: Update.
4524         * linux-nat.c: Update.
4525         * linux-tdep.c: Update.
4526         * linux-thread-db.c: Update.
4527         * m68k-bsd-nat.c: Update.
4528         * mi/mi-interp.c: Update.
4529         * mi/mi-main.c: Update.
4530         * mips-linux-nat.c: Update.
4531         * mips-nbsd-nat.c: Update.
4532         * mips64-obsd-nat.c: Update.
4533         * nat/aarch64-linux-hw-point.c: Update.
4534         * nat/aarch64-linux.c: Update.
4535         * nat/linux-btrace.c: Update.
4536         * nat/linux-osdata.c: Update.
4537         * nat/linux-procfs.c: Update.
4538         * nat/x86-linux-dregs.c: Update.
4539         * nto-procfs.c: Update.
4540         * obsd-nat.c: Update.
4541         * ppc-linux-nat.c: Update.
4542         * ppc-nbsd-nat.c: Update.
4543         * ppc-obsd-nat.c: Update.
4544         * proc-service.c: Update.
4545         * procfs.c: Update.
4546         * python/py-inferior.c: Update.
4547         * python/py-infthread.c: Update.
4548         * ravenscar-thread.c: Update.
4549         * record.c: Update.
4550         * remote-sim.c: Update.
4551         * remote.c: Update.
4552         * rs6000-nat.c: Update.
4553         * s390-linux-nat.c: Update.
4554         * sh-nbsd-nat.c: Update.
4555         * sol-thread.c: Update.
4556         * sparc-nat.c: Update.
4557         * sparc64-tdep.c: Update.
4558         * spu-linux-nat.c: Update.
4559         * spu-tdep.c: Update.
4560         * target-debug.h: Update.
4561         * target.c: Update.
4562         * thread.c: Update.
4563         * tid-parse.c: Update.
4564         * tracefile-tfile.c: Update.
4565         * vax-bsd-nat.c: Update.
4566         * windows-nat.c: Update.
4567         * x86-linux-nat.c: Update.
4568         * x86-nat.c: Update.
4569
4570 2018-07-03  Tom Tromey  <[email protected]>
4571
4572         * common/ptid.c (pid_to_ptid): Remove.
4573         * common/ptid.h (pid_to_ptid): Don't declare.
4574         * aix-thread.c: Update.
4575         * arm-linux-nat.c: Update.
4576         * common/ptid.c: Update.
4577         * common/ptid.h: Update.
4578         * corelow.c: Update.
4579         * ctf.c: Update.
4580         * darwin-nat.c: Update.
4581         * fbsd-nat.c: Update.
4582         * fork-child.c: Update.
4583         * gnu-nat.c: Update.
4584         * go32-nat.c: Update.
4585         * inf-ptrace.c: Update.
4586         * infcmd.c: Update.
4587         * inferior.c: Update.
4588         * infrun.c: Update.
4589         * linux-fork.c: Update.
4590         * linux-nat.c: Update.
4591         * nat/aarch64-linux-hw-point.c: Update.
4592         * nat/fork-inferior.c: Update.
4593         * nat/x86-linux-dregs.c: Update.
4594         * nto-procfs.c: Update.
4595         * obsd-nat.c: Update.
4596         * procfs.c: Update.
4597         * progspace.c: Update.
4598         * remote.c: Update.
4599         * rs6000-nat.c: Update.
4600         * s390-linux-nat.c: Update.
4601         * sol-thread.c: Update.
4602         * spu-linux-nat.c: Update.
4603         * target.c: Update.
4604         * top.c: Update.
4605         * tracefile-tfile.c: Update.
4606         * windows-nat.c: Update.
4607
4608 2018-07-03  Tom Tromey  <[email protected]>
4609
4610         * common/ptid.h (ptid_build): Don't declare.
4611         * common/ptid.c (ptid_build): Remove.
4612         * aix-thread.c: Update.
4613         * bsd-kvm.c: Update.
4614         * bsd-uthread.c: Update.
4615         * common/agent.c: Update.
4616         * common/ptid.c: Update.
4617         * common/ptid.h: Update.
4618         * corelow.c: Update.
4619         * darwin-nat.c: Update.
4620         * fbsd-nat.c: Update.
4621         * gnu-nat.c: Update.
4622         * linux-fork.c: Update.
4623         * linux-nat.c: Update.
4624         * linux-thread-db.c: Update.
4625         * nat/linux-osdata.c: Update.
4626         * nat/linux-procfs.c: Update.
4627         * nto-procfs.c: Update.
4628         * obsd-nat.c: Update.
4629         * proc-service.c: Update.
4630         * procfs.c: Update.
4631         * ravenscar-thread.c: Update.
4632         * remote-sim.c: Update.
4633         * remote.c: Update.
4634         * sol-thread.c: Update.
4635         * target.c: Update.
4636         * windows-nat.c: Update.
4637
4638 2018-07-03  Tom Tromey  <[email protected]>
4639
4640         * infrun.c (follow_exec): Use exit_inferior_silent.
4641         * inferior.c (exit_inferior_num_silent): Remove.
4642         * inferior.h (exit_inferior_num_silent): Don't declare.
4643
4644 2018-07-03  Tom Tromey  <[email protected]>
4645
4646         PR cli/23340:
4647         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4648         inferior_ptid on error.
4649
4650 2018-07-02  Maciej W. Rozycki  <[email protected]>
4651             Simon Marchi  <[email protected]>
4652
4653         PR tdep/8282
4654         * disasm.h (gdb_disassembler): Add
4655         `m_disassembler_options_holder'. member
4656         * disasm.c (get_all_disassembler_options): New function.
4657         (gdb_disassembler::gdb_disassembler): Use it.
4658         (gdb_buffered_insn_length_init_dis): Likewise.
4659         (gdb_buffered_insn_length): Adjust accordingly.
4660         (set_disassembler_options): Handle options with arguments.
4661         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4662         line if showing options with descriptions.
4663         (disassembler_options_completer): Adapt to using the
4664         `disasm_options_and_args_t' structure.
4665         * mips-tdep.c (mips_disassembler_options): New variable.
4666         (mips_disassembler_options_o32): Likewise.
4667         (mips_disassembler_options_n32): Likewise.
4668         (mips_disassembler_options_n64): Likewise.
4669         (gdb_print_insn_mips): Don't set `disassembler_options'.
4670         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4671         functions.
4672         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4673         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4674         `gdbarch_disassembler_options_implicit' and
4675         `gdbarch_valid_disassembler_options'.
4676         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4677         `disasm_options_and_args_t' structure.
4678         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4679         method.
4680         (valid_disassembler_options): Switch from `disasm_options_t' to
4681         the `disasm_options_and_args_t' structure.
4682         * NEWS: Document `set disassembler-options' support for the MIPS
4683         target.
4684         * gdbarch.h: Regenerate.
4685         * gdbarch.c: Regenerate.
4686
4687 2018-07-02  Sebastian Huber  <[email protected]>
4688
4689         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4690
4691 2018-06-29  Joel Brobecker  <[email protected]>
4692
4693         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4694         parameter in call to amd64_target_description.
4695         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4696         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4697         (amd64fbsd_init_abi): Likewise.
4698         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4699         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4700         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4701         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4702
4703 2018-06-29  Pedro Alves  <[email protected]>
4704
4705         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4706         "segments" parameter.
4707         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4708         (_initialize_amd64_tdep): Update call to
4709         amd64_create_target_description.
4710         (amd64_target_description): Add "segments" parameter.  Adjust
4711         the implementation to use it.
4712         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4713         call to amd64_create_target_description.
4714         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4715         * gdb/arch/amd64.h (amd64_create_target_description): Add
4716         "segments" register.
4717         * gdb/arch/amd64.c (amd64_create_target_description): Add
4718         "segments" parameter.  Call create_feature_i386_64bit_segments
4719         only if SEGMENTS is true.
4720         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4721         call to amd64_create_target_description.
4722
4723 2018-06-29  Pedro Alves  <[email protected]>
4724
4725         * thread.c (thread_target_id_str): New, factored out from ...
4726         (print_thread_info_1): ... here.  Use it to compute the max
4727         "Target Id" column width.
4728
4729 2018-06-29  Pedro Alves  <[email protected]>
4730
4731         * remote.c (remote_target::extra_thread_info): Delete
4732         'display_buf' and 'n' locals.  from the cache, regardless of
4733         packet mechanims is in use.  Use cache for qThreadExtra and qP
4734         methods too.
4735
4736 2018-06-29  Pedro Alves  <[email protected]>
4737
4738         * blockframe.c (find_pc_sect_containing_function): New function.
4739         * breakpoint.c (print_breakpoint_location): Don't call
4740         find_pc_sect_function.
4741         * linespec.c (create_sals_line_offset): Record the location's
4742         symbol in the sal.
4743         * linespec.c (convert_address_location_to_sals): Fill in sal's
4744         symbol with find_pc_sect_containing_function.
4745         * symtab.c (find_function_start_sal): Rename to ...
4746         (find_function_start_sal_1): ... this.
4747         (find_function_start_sal): Reimplement as wrapper around
4748         find_function_start_sal_1, and use
4749         find_pc_sect_containing_function to fill in the sal's symbol.
4750         (find_function_start_sal(symbol*, bool)): Adjust.
4751         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4752         comments.
4753         (find_pc_sect_containing_function): Declare.
4754
4755 2018-06-29  Pedro Alves  <[email protected]>
4756
4757         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4758         true if the the location has no symbol.
4759
4760 2018-06-28  Tom Tromey  <[email protected]>
4761
4762         * NEWS: Mention --enable-codesign.
4763         * silent-rules.mk (ECHO_SIGN): New variable.
4764         * configure.ac: Add --enable-codesign.
4765         * configure: Rebuild.
4766         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4767         (gdb$(EXEEXT)): Optionally invoke codesign.
4768
4769 2018-06-28  Pedro Alves  <[email protected]>
4770
4771         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4772         comments.
4773         (switch_to_thread_no_regs): Adjust comment.
4774         * infcmd.c (stop_pc): Delete.
4775         (post_create_inferior, info_program_command): Replace references
4776         to stop_pc with references to thread_info->suspend.stop_pc.
4777         * inferior.h (stop_pc): Delete declaration.
4778         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4779         (handle_inferior_event_1, handle_signal_stop)
4780         (process_event_stop_test, keep_going_stepped_thread)
4781         (handle_step_into_function, handle_step_into_function_backward)
4782         (print_stop_location): Replace references to stop_pc with
4783         references to thread_info->suspend.stop_pc.
4784         (struct infcall_suspend_state) <stop_pc>: Delete field.
4785         (save_infcall_suspend_state, restore_infcall_suspend_state):
4786         Remove references to inf_stat->stop_pc.
4787         * linux-fork.c (fork_load_infrun_state): Likewise.
4788         * record-btrace.c (record_btrace_set_replay): Likewise.
4789         * record-full.c (record_full_goto_entry): Likewise.
4790         * remote.c (print_one_stopped_thread): Likewise.
4791         * target.c (target_resume): Extend comment.
4792         * thread.c (set_executing_thread): New.
4793         (set_executing): Use it.
4794         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4795         Remove references to stop_pc.
4796
4797 2018-06-28  Pedro Alves  <[email protected]>
4798
4799         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4800         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4801
4802 2018-06-28  Tom Tromey  <[email protected]>
4803
4804         * coffread.c (coff_symfile_finish): Update.
4805         * xcoffread.c (xcoff_symfile_finish): Update.
4806         * elfread.c (elf_symfile_finish): Update.
4807         * symfile.h (dwarf2_free_objfile): Don't declare.
4808         * dwarf2read.c (_initialize_dwarf2_read): Use
4809         register_objfile_data_with_cleanup.
4810         (dwarf2_free_objfile): Now static.  Change signature.
4811
4812 2018-06-28  Petr Tesarik  <[email protected]>
4813
4814         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4815         option "-o" to add-symbol-file-load to add an offset to each
4816         section's load address.
4817         * symfile.c (set_objfile_default_section_offset): New function.
4818
4819 2018-06-28  Petr Tesarik  <[email protected]>
4820
4821         * symfile.c (add_symbol_file_command): Make sure that sections
4822         with the same name are sorted in the same order.
4823
4824 2018-06-28  Petr Tesarik  <[email protected]>
4825
4826         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4827         require the second argument.  If omitted, load sections at the
4828         addresses specified in the file.
4829
4830 2018-06-28  Petr Tesarik  <[email protected]>
4831
4832         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4833         (_initialize_symfile): Add option "-o" to symbol-file to add an
4834         offset to each section of the symbol file.
4835
4836 2018-06-28  Petr Tesarik  <[email protected]>
4837
4838         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4839
4840 2018-06-27  Tom Tromey  <[email protected]>
4841
4842         * stack.c (_initialize_stack): Update "func" help text.
4843
4844 2018-06-27  Tom Tromey  <[email protected]>
4845
4846         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4847         std::vector.
4848         (unwind_infopy_str, pyuw_create_unwind_info)
4849         (unwind_infopy_add_saved_register, pyuw_sniffer)
4850         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4851         Update.
4852         (struct saved_reg): Add constructor.
4853         <value>: Now a gdbpy_ref<>.
4854
4855 2018-06-27  Tom Tromey  <[email protected]>
4856
4857         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4858
4859 2018-06-27  Simon Marchi  <[email protected]>
4860
4861         * gdb-gdb.py.in: Format using autopep8.
4862
4863 2018-06-27  Simon Marchi  <[email protected]>
4864
4865         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4866         (type_lookup_function): Recognize CORE_ADDR values.
4867
4868 2018-06-27  Simon Marchi  <[email protected]>
4869
4870         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4871         print tag_name.
4872
4873 2018-06-27  Simon Marchi  <[email protected]>
4874
4875         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4876         <__lt__>: Add.
4877
4878 2018-06-27  Simon Marchi  <[email protected]>
4879
4880         * gdb-gdb.py: Move to...
4881         * gdb-gdb.py.in: ... here.
4882         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4883         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4884         dependencies.
4885         (distclean): Remove gdb-gdb.py when cleaning.
4886         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4887         * configure: Re-generate.
4888
4889 2018-06-27  Pedro Alves  <[email protected]>
4890
4891         * proc-service.c (get_ps_regcache): New.
4892         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4893         (ps_lsetfpregs): Use it.
4894
4895 2018-06-27  Omair Javaid  <[email protected]>
4896
4897         PR gdb/21695
4898         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4899         (dwarf_decode_lines_1): Adjust.
4900
4901 2018-06-27  Simon Marchi  <[email protected]>
4902
4903         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4904         override.
4905         <info_proc>: Likewise.
4906
4907 2018-06-26  Joel Brobecker  <[email protected]>
4908
4909         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4910         to windows_fetch_one_register, and only handle the case of
4911         fetching one register.  Move the code that reloads the context
4912         and iterates over all registers if R is negative to...
4913         (windows_nat_target::fetch_registers): ... here.
4914         (do_windows_store_inferior_registers): Rename to
4915         windows_store_one_register, and only handle the case of storing
4916         one register.  Move the code that handles the case where r is
4917         negative to...
4918         (windows_nat_target::store_registers) ... here.
4919
4920 2018-06-26  Tom Tromey  <[email protected]>
4921
4922         PR rust/22574:
4923         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4924         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4925         Update.
4926         (rust_internal_print_type): Add podata parameter.
4927         (rust_print_type): Update.
4928
4929 2018-06-26  Tom Tromey  <[email protected]>
4930
4931         * typeprint.h (struct print_offset_data) <update, finish,
4932         maybe_print_hole>: New methods.
4933         <indentation>: New constant.
4934         * typeprint.c (print_offset_data::indentation): Define.
4935         (print_offset_data::maybe_print_hole, print_offset_data::update)
4936         (print_offset_data::finish): Move from c-typeprint.c and rename.
4937         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4938         (print_spaces_filtered_with_print_options): Update.
4939         (c_print_type_union_field_offset, maybe_print_hole)
4940         (c_print_type_struct_field_offset): Move to typeprint.c and
4941         rename.
4942         (c_type_print_base_struct_union): Update.
4943
4944 2018-06-25  Pedro Alves  <[email protected]>
4945
4946         * gdbthread.h (thread_info_ref, delete_thread)
4947         (delete_thread_silent, first_thread_of_inferior)
4948         (any_thread_of_inferior, switch_to_thread)
4949         (enable_thread_stack_temporaries)
4950         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4951         (get_last_thread_stack_temporary)
4952         (value_in_thread_stack_temporaries, can_access_registers_thread):
4953         Spell out "struct thread_info" instead of just "thread_info".
4954         * inferior.h (notice_new_inferior): Likewise.
4955
4956 2018-06-25  Pedro Alves  <[email protected]>
4957
4958         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4959         pass thread_info pointer to delete_thread.
4960         (windows_nat_target::detach): Pass inferior pointer to
4961         detach_inferior.
4962         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4963         delete_thread.
4964         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4965         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4966         and pass a thread_info pointer to delete_thread.
4967         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4968         pass thread_info pointer to delete_thread.
4969         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4970         delete_thread_silent call.
4971         * procfs.c (procfs_target::detach): Pass inferior pointer to
4972         detach_inferior.
4973         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4974         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4975         delete_thread_silent call.
4976         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4977         pass thread_info pointer to delete_thread.
4978         (windows_nat_target::detach): Pass inferior pointer to
4979         delete_inferior.
4980
4981 2018-06-22  Alan Hayward  <[email protected]>
4982
4983         * regcache.c (readable_regcache::read_part): Fix asserts.
4984         (reg_buffer::raw_collect_part): New function.
4985         (regcache::write_part): Fix asserts.
4986         (reg_buffer::raw_supply_part): New function.
4987         (regcache::transfer_regset_register): New helper function.
4988         (regcache::transfer_regset): Call new functions.
4989         (regcache_supply_regset): Use gdb_byte*.
4990         (regcache::supply_regset): Likewise.
4991         (regcache_collect_regset): Likewise.
4992         (regcache::collect_regset): Likewise.
4993         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4994         (reg_buffer::raw_supply_part): Likewise.
4995         (regcache::transfer_regset_register): Likewise.
4996         (regcache::transfer_regset): Use gdb_byte*.
4997
4998 2018-06-22  Alan Hayward  <[email protected]>
4999
5000         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5001
5002 2018-06-21  Pedro Alves  <[email protected]>
5003
5004         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5005         instead of a ptid_t.  All callers adjusted.
5006         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5007         adjusted.
5008         (print_ada_task_info, display_current_task_id, task_command_1):
5009         Adjust.
5010         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5011         inferior_thread.
5012         (breakpoint_kind): Adjust.
5013         (remove_breakpoints_pid): Rename to ...
5014         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5015         pointer.  All callers adjusted.
5016         (bpstat_clear_actions): Use inferior_thread.
5017         (get_bpstat_thread): New.
5018         (bpstat_do_actions): Use it.
5019         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5020         to take a thread_info pointer.  All callers adjusted.
5021         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5022         (breakpoint_re_set_thread): Use inferior_thread.
5023         * breakpoint.h (struct inferior): Forward declare.
5024         (bpstat_stop_status): Update.
5025         (remove_breakpoints_pid): Delete.
5026         (remove_breakpoints_inf): New.
5027         * bsd-uthread.c (bsd_uthread_target::wait)
5028         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5029         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5030         (maint_btrace_packet_history_cmd)
5031         (maint_btrace_clear_packet_history_cmd): Adjust.
5032         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5033         inferior_thread.
5034         * cli/cli-interp.c: Include "inferior.h".
5035         * common/refcounted-object.h (struct
5036         refcounted_object_ref_policy): New.
5037         * compile/compile-object-load.c: Include gdbthread.h.
5038         (store_regs): Use inferior_thread.
5039         * corelow.c (core_target::close): Use current_inferior.
5040         (core_target_open): Adjust to use first_thread_of_inferior and use
5041         the current inferior.
5042         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5043         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5044         <thread>: ... this new field.  All references adjusted.
5045         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5046         Take a thread_info pointer instead of a ptid_t.
5047         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5048         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5049         thread_info pointer instead of a ptid_t.
5050         * elfread.c: Include "inferior.h".
5051         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5052         Use inferior_thread.
5053         * eval.c (evaluate_subexp): Likewise.
5054         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5055         inferior_thread.
5056         * gdb_proc_service.h (struct thread_info): Forward declare.
5057         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5058         <thread>: ... this new field.  All references adjusted.
5059         * gdbarch.h, gdbarch.c: Regenerate.
5060         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5061         'thread' parameter.  All implementations and callers adjusted.
5062         * gdbthread.h (thread_info) <set_running>: New method.
5063         (delete_thread, delete_thread_silent): Take a thread_info pointer
5064         instead of a ptid.
5065         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5066         (first_thread_of_process): Delete, replaced by ...
5067         (first_thread_of_inferior): ... this new function.  All callers
5068         adjusted.
5069         (any_live_thread_of_process): Delete, replaced by ...
5070         (any_live_thread_of_inferior): ... this new function.  All callers
5071         adjusted.
5072         (switch_to_thread, switch_to_no_thread): Declare.
5073         (is_executing): Delete.
5074         (enable_thread_stack_temporaries): Update comment.
5075         <enable_thread_stack_temporaries>: Take a thread_info pointer
5076         instead of a ptid_t.  Incref the thread.
5077         <~enable_thread_stack_temporaries>: Decref the thread.
5078         <m_ptid>: Delete
5079         <m_thr>: New.
5080         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5081         (get_last_thread_stack_temporary)
5082         (value_in_thread_stack_temporaries, can_access_registers_thread):
5083         Take a thread_info pointer instead of a ptid_t.  All callers
5084         adjusted.
5085         * infcall.c (get_call_return_value): Use inferior_thread.
5086         (run_inferior_call): Work with thread pointers instead of ptid_t.
5087         (call_function_by_hand_dummy): Work with thread pointers instead
5088         of ptid_t.  Use thread_info_ref.
5089         * infcmd.c (proceed_thread_callback): Access thread's state
5090         directly.
5091         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5092         access thread's state directly.
5093         (continue_command): Use inferior_thread.
5094         (info_program_command): Use find_thread_ptid and access thread
5095         state directly.
5096         (proceed_after_attach_callback): Use thread state directly.
5097         (notice_new_inferior): Take a thread_info pointer instead of a
5098         ptid_t.  All callers adjusted.
5099         (exit_inferior): Take an inferior pointer instead of a pid.  All
5100         callers adjusted.
5101         (exit_inferior_silent): New.
5102         (detach_inferior): Delete.
5103         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5104         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5105         (detach_inferior_command, kill_inferior_command): Use
5106         find_inferior_id instead of valid_gdb_inferior_id and
5107         gdb_inferior_id_to_pid.
5108         (inferior_command): Use inferior and thread pointers.
5109         * inferior.h (struct thread_info): Forward declare.
5110         (notice_new_inferior): Take a thread_info pointer instead of a
5111         ptid_t.  All callers adjusted.
5112         (detach_inferior): Delete declaration.
5113         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5114         instead of a pid.  All callers adjusted.
5115         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5116         (valid_gdb_inferior_id): Delete.
5117         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5118         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5119         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5120         ...
5121         <inf>: ... this new field.
5122         <step_ptid>: Delete, replaced by ...
5123         <step_thread>: ... this new field.
5124         (get_displaced_stepping_state): Take an inferior pointer instead
5125         of a pid.  All callers adjusted.
5126         (displaced_step_in_progress_any_inferior): Adjust.
5127         (displaced_step_in_progress_thread): Take a thread pointer instead
5128         of a ptid_t.  All callers adjusted.
5129         (displaced_step_in_progress, add_displaced_stepping_state): Take
5130         an inferior pointer instead of a pid.  All callers adjusted.
5131         (get_displaced_step_closure_by_addr): Adjust.
5132         (remove_displaced_stepping_state): Take an inferior pointer
5133         instead of a pid.  All callers adjusted.
5134         (displaced_step_prepare_throw, displaced_step_prepare)
5135         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5136         All callers adjusted.
5137         (start_step_over): Adjust.
5138         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5139         displaced step queue.
5140         (do_target_resume): Adjust.
5141         (fetch_inferior_event): Use inferior_thread.
5142         (context_switch, get_inferior_stop_soon): Take an
5143         execution_control_state pointer instead of a ptid_t.  All callers
5144         adjusted.
5145         (switch_to_thread_cleanup): Delete.
5146         (stop_all_threads): Use scoped_restore_current_thread.
5147         * inline-frame.c: Include "gdbthread.h".
5148         (inline_state) <inline_state>: Take a thread pointer instead of a
5149         ptid_t.  All callers adjusted.
5150         <ptid>: Delete, replaced by ...
5151         <thread>: ... this new field.
5152         (find_inline_frame_state): Take a thread pointer instead of a
5153         ptid_t.  All callers adjusted.
5154         (skip_inline_frames, step_into_inline_frame)
5155         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5156         pointer instead of a ptid_t.  All callers adjusted.
5157         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5158         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5159         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5160         pointers directly.
5161         * linux-nat.c (get_detach_signal): Likewise.
5162         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5163         (thread_db_notice_clone): Adjust.
5164         (thread_db_find_new_threads_silently)
5165         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5166         a thread pointer instead of a ptid_t.  All callers adjusted.
5167         * mi/mi-cmd-var.c: Include "inferior.h".
5168         (mi_cmd_var_update_iter): Update to use thread pointers.
5169         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5170         inferior directly.
5171         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5172         out to ...
5173         (mi_output_running): ... this new function.
5174         (mi_on_resume_1): Adjust to use it.
5175         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5176         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5177         directly.
5178         (interrupt_thread_callback): : Adjust to use thread and inferior
5179         pointers.
5180         * proc-service.c: Include "gdbthread.h".
5181         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5182         * progspace-and-thread.c: Include "inferior.h".
5183         * progspace.c: Include "inferior.h".
5184         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5185         hold a reference to an inferior_object.
5186         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5187         inferior_thread.
5188         * python/py-inferior.c (struct inferior_object): Give the type a
5189         tag name instead of a typedef.
5190         (python_on_normal_stop): No need to check if the current thread is
5191         listed.
5192         (inferior_to_inferior_object): Change return type to
5193         inferior_object.  All callers adjusted.
5194         (find_thread_object): Delete, bits factored out to ...
5195         (thread_to_thread_object): ... this new function.
5196         * python/py-infthread.c (create_thread_object): Use
5197         inferior_to_inferior_object.
5198         (thpy_is_stopped): Use thread pointer directly.
5199         (gdbpy_selected_thread): Use inferior_thread.
5200         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5201         field, replaced with ...
5202         <thread>: ... this new field.  All users adjusted.
5203         (btpy_insn_or_gap_new): Drop const.
5204         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5205         callers adjusted.
5206         * python/py-record.c: Include "gdbthread.h".
5207         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5208         a ptid_t.  All callers adjusted.
5209         (gdbpy_current_recording): Use inferior_thread.
5210         * python/py-record.h (recpy_record_object) <ptid>: Delete
5211         field, replaced with ...
5212         <thread>: ... this new field.  All users adjusted.
5213         (recpy_element_object) <ptid>: Delete
5214         field, replaced with ...
5215         <thread>: ... this new field.  All users adjusted.
5216         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5217         a ptid_t.  All callers adjusted.
5218         * python/py-threadevent.c: Include "gdbthread.h".
5219         (get_event_thread): Use thread_to_thread_object.
5220         * python/python-internal.h (struct inferior_object): Forward
5221         declare.
5222         (find_thread_object, find_inferior_object): Delete declarations.
5223         (thread_to_thread_object, inferior_to_inferior_object): New
5224         declarations.
5225         * record-btrace.c: Include "inferior.h".
5226         (require_btrace_thread): Use inferior_thread.
5227         (record_btrace_frame_sniffer)
5228         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5229         (get_thread_current_frame): Use scoped_restore_current_thread and
5230         switch_to_thread.
5231         (get_thread_current_frame): Use thread pointer directly.
5232         (record_btrace_replay_at_breakpoint): Use thread's inferior
5233         pointer directly.
5234         * record-full.c: Include "inferior.h".
5235         * regcache.c: Include "gdbthread.h".
5236         (get_thread_arch_regcache): Use the inferior's address space
5237         directly.
5238         (get_thread_regcache, registers_changed_thread): New.
5239         * regcache.h (get_thread_regcache(thread_info *thread)): New
5240         overload.
5241         (registers_changed_thread): New.
5242         (remote_target) <remote_detach_1>: Swap order of parameters.
5243         (remote_add_thread): <remote_add_thread>: Return the new thread.
5244         (get_remote_thread_info(ptid_t)): New overload.
5245         (remote_target::remote_notice_new_inferior): Use thread pointers
5246         directly.
5247         (remote_target::process_initial_stop_replies): Use
5248         thread_info::set_running.
5249         (remote_target::remote_detach_1, remote_target::detach)
5250         (extended_remote_target::detach): Adjust.
5251         * stack.c (frame_show_address): Use inferior_thread.
5252         * target-debug.h (target_debug_print_thread_info_pp): New.
5253         * target-delegates.c: Regenerate.
5254         * target.c (default_thread_address_space): Delete.
5255         (memory_xfer_partial_1): Use current_inferior.
5256         (target_detach): Use current_inferior.
5257         (target_thread_address_space): Delete.
5258         (generic_mourn_inferior): Use current_inferior.
5259         * target.h (struct target_ops) <thread_address_space>: Delete.
5260         (target_thread_address_space): Delete.
5261         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5262         pointers directly.
5263         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5264         thread pointer instead of a ptid_t.  Adjust all callers.
5265         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5266         (first_thread_of_process): Delete, replaced by ...
5267         (first_thread_of_inferior): ... this new function.  All callers
5268         adjusted.
5269         (any_thread_of_process): Rename to ...
5270         (any_thread_of_inferior): ... this, and take an inferior pointer.
5271         (any_live_thread_of_process): Rename to ...
5272         (any_live_thread_of_inferior): ... this, and take an inferior
5273         pointer.
5274         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5275         (value_in_thread_stack_temporaries)
5276         (get_last_thread_stack_temporary): Take a thread pointer instead
5277         of a ptid_t.  Adjust all callers.
5278         (thread_info::set_running): New.
5279         (validate_registers_access): Use inferior_thread.
5280         (can_access_registers_ptid): Rename to ...
5281         (can_access_registers_thread): ... this, and take a thread
5282         pointer.
5283         (print_thread_info_1): Adjust to compare thread pointers instead
5284         of ptids.
5285         (switch_to_no_thread, switch_to_thread): Make extern.
5286         (scoped_restore_current_thread::~scoped_restore_current_thread):
5287         Use m_thread pointer directly.
5288         (scoped_restore_current_thread::scoped_restore_current_thread):
5289         Use inferior_thread.
5290         (thread_command): Use thread pointer directly.
5291         (thread_num_make_value_helper): Use inferior_thread.
5292         * top.c (execute_command): Use inferior_thread.
5293         * tui/tui-interp.c: Include "inferior.h".
5294         * varobj.c (varobj_create): Use inferior_thread.
5295         (value_of_root_1): Use find_thread_global_id instead of
5296         global_thread_id_to_ptid.
5297
5298 2018-06-21  Alan Hayward  <[email protected]>
5299
5300         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5301         possible.
5302         (regcache::write_part): Likewise.
5303         (readable_regcache::cooked_read_part): Update comment.
5304         (readable_regcache::cooked_write_part): Likewise.
5305         * regcache.h: (readable_regcache::read_part): Likewise.
5306         (regcache::write_part): Likewise.
5307
5308 2018-06-21  Richard Bunt  <[email protected]>
5309             Dirk Schubert  <[email protected]>
5310
5311         * aarch64-linux-nat.c (post_attach): New.
5312         (aarch64_linux_nat_target::post_attach): Override post_attach to
5313         record the number of hardware debug registers.
5314
5315 2018-06-20  Tom Tromey  <[email protected]>
5316
5317         * python/py-param.c (add_setshow_generic): Make parameters const.
5318         (parmpy_init): Update.
5319
5320 2018-06-20  Simon Marchi  <[email protected]>
5321
5322         * regcache.h (regcache_cooked_read_ftype): Rename to...
5323         (register_read_ftype): ...this, change type to function_view.
5324         (class reg_buffer) <save>: Remove src parameter.
5325         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5326         parameter non-const in first overload.  Remove src parameter in
5327         second overload.
5328         * regcache.c (do_cooked_read): Remove.
5329         (readonly_detached_regcache::readonly_detached_regcache): Make
5330         parameter non-const, adjust call to other constructor.
5331         (reg_buffer::save): Remove src parameter.
5332         * frame.c (do_frame_register_read): Remove.
5333         (frame_save_as_regcache): Use lambda function.
5334         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5335         parameter to ppu2spu_data *.
5336         (ppu2spu_sniffer): Use lambda function.
5337
5338 2018-06-20  Simon Marchi  <[email protected]>
5339
5340         * record-full.c (record_full_target::insert_breakpoint): Remove
5341         "struct" keyword, add const.
5342
5343 2018-06-19  Simon Marchi  <[email protected]>
5344
5345         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5346         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5347         * configure.ac: Remove AC_PREREQ, add missing quoting.
5348         * gnulib/configure.ac: Modernize usage of
5349         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5350         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5351         (AUTOMAKE_VERSION): Bump to 1.15.1.
5352         * configure: Re-generate.
5353         * config.in: Re-generate.
5354         * aclocal.m4: Re-generate.
5355         * gnulib/aclocal.m4: Re-generate.
5356         * gnulib/config.in: Re-generate.
5357         * gnulib/configure: Re-generate.
5358         * gnulib/import/Makefile.in: Re-generate.
5359
5360 2018-06-19  Pedro Alves  <[email protected]>
5361
5362         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5363         (lookup_minimal_symbol_by_pc_section): ... here with
5364         gdb_assert_not_reached added.
5365
5366 2018-06-19  Pedro Alves  <[email protected]>
5367
5368         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5369         parameter with a block parameter.  Compare location's block symbol
5370         with the frame's block instead of addresses.
5371         (skip_inline_frames): Pass the current block instead of the
5372         frame's address.  Break out as soon as we determine the frame
5373         should not be skipped.
5374
5375 2018-06-18  Tom Tromey  <[email protected]>
5376
5377         * solib-aix.c (solib_aix_get_section_offsets): Return
5378         unique_xmalloc_ptr.
5379         (solib_aix_solib_create_inferior_hook): Update.
5380
5381 2018-06-18  Tom Tromey  <[email protected]>
5382
5383         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5384
5385 2018-06-18  Tom Tromey  <[email protected]>
5386
5387         * solib-frv.c (frv_relocate_main_executable): Use
5388         unique_xmalloc_ptr.
5389         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5390         unique_xmalloc_ptr.
5391
5392 2018-06-18  Tom Tromey  <[email protected]>
5393
5394         * objfiles.h (inhibit_section_map_updates): Update.
5395         (resume_section_map_updates, resume_section_map_updates_cleanup):
5396         Remove.
5397         * solib-svr4.c (svr4_handle_solib_event): Update.
5398         * objfiles.c (inhibit_section_map_updates): Return
5399         scoped_restore_tmpl<int>.
5400         (resume_section_map_updates, resume_section_map_updates_cleanup):
5401         Remove.
5402
5403 2018-06-18  Tom Tromey  <[email protected]>
5404
5405         * valprint.h (read_string): Update.
5406         * valprint.c (read_string): Change type of "buffer".
5407         (val_print_string): Update.
5408         * python/py-value.c (valpy_string): Update.
5409         * language.h (struct language_defn) <la_get_string>: Change
5410         type of "buffer".
5411         (default_get_string, c_get_string): Update.
5412         * language.c (default_get_string): Change type of "buffer".
5413         * guile/scm-value.c (gdbscm_value_to_string): Update.
5414         * c-lang.c (c_get_string): Change type of "buffer".
5415
5416 2018-06-18  Tom Tromey  <[email protected]>
5417
5418         * ser-mingw.c (struct pipe_state_destroyer): New.
5419         (pipe_state_up): New typedef.
5420         (cleanup_pipe_state): Remove.
5421         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5422
5423 2018-06-18  Tom Tromey  <[email protected]>
5424
5425         * rust-lang.h (rust_yyerror): Don't declare.
5426         * rust-lang.c (rust_language_defn): Update.
5427         * rust-exp.y (yyerror): Now static.
5428         * parse.c (parse_exp_in_context_1): Update.
5429         * p-lang.h (p_yyerror): Don't declare.
5430         * p-lang.c (p_language_defn): Update.
5431         * p-exp.y (yyerror): Now static.
5432         * opencl-lang.c (opencl_language_defn): Update.
5433         * objc-lang.c (objc_language_defn): Update.
5434         * m2-lang.h (m2_yyerror): Don't declare.
5435         * m2-lang.c (m2_language_defn): Update.
5436         * m2-exp.y (yyerror): Now static.
5437         * language.h (struct language_defn) <la_error>: Remove.
5438         * language.c (unk_lang_error): Remove.
5439         (unknown_language_defn, auto_language_defn): Remove.
5440         * go-lang.h (go_yyerror): Don't declare.
5441         * go-lang.c (go_language_defn): Update.
5442         * go-exp.y (yyerror): Now static.
5443         * f-lang.h (f_yyerror): Don't declare.
5444         * f-lang.c (f_language_defn): Update.
5445         * f-exp.y (yyerror): Now static.
5446         * d-lang.h (d_yyerror): Don't declare.
5447         * d-lang.c (d_language_defn): Update.
5448         * d-exp.y (yyerror): Now static.
5449         * c-lang.h (c_yyerror): Don't declare.
5450         * c-lang.c (c_language_defn, cplus_language_defn)
5451         (asm_language_defn, minimal_language_defn): Update.
5452         * c-exp.y (yyerror): Now static.
5453         * ada-lang.h (ada_yyerror): Don't declare.
5454         * ada-lang.c (ada_language_defn): Update.
5455         * ada-exp.y (yyerror): Now static.
5456
5457 2018-06-18  Alan Hayward  <[email protected]>
5458
5459         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5460         (store_sveregs_to_thread): Likewise.
5461         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5462         (aarch64_linux_store_inferior_registers): Likewise.
5463         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5464         function.
5465         (aarch64_sve_regs_copy_to_regcache): Likewise.
5466         (aarch64_sve_regs_copy_from_regcache): Likewise.
5467         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5468         declaration.
5469         (aarch64_sve_regs_copy_to_regcache): Likewise.
5470         (aarch64_sve_regs_copy_from_regcache): Likewise.
5471         (sve_context): Structure from Linux headers.
5472         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5473         (SVE_SIG_ZREG_SIZE): Likewise.
5474         (SVE_SIG_PREG_SIZE): Likewise.
5475         (SVE_SIG_FFR_SIZE): Likewise.
5476         (SVE_SIG_REGS_OFFSET): Likewise.
5477         (SVE_SIG_ZREGS_OFFSET): Likewise.
5478         (SVE_SIG_ZREG_OFFSET): Likewise.
5479         (SVE_SIG_ZREGS_SIZE): Likewise.
5480         (SVE_SIG_PREGS_OFFSET): Likewise.
5481         (SVE_SIG_PREG_OFFSET): Likewise.
5482         (SVE_SIG_PREGS_SIZE): Likewise.
5483         (SVE_SIG_FFR_OFFSET): Likewise.
5484         (SVE_SIG_REGS_SIZE): Likewise.
5485         (SVE_SIG_CONTEXT_SIZE): Likewise.
5486         (SVE_PT_REGS_MASK): Likewise.
5487         (SVE_PT_REGS_FPSIMD): Likewise.
5488         (SVE_PT_REGS_SVE): Likewise.
5489         (SVE_PT_VL_INHERIT): Likewise.
5490         (SVE_PT_VL_ONEXEC): Likewise.
5491         (SVE_PT_REGS_OFFSET): Likewise.
5492         (SVE_PT_FPSIMD_OFFSET): Likewise.
5493         (SVE_PT_FPSIMD_SIZE): Likewise.
5494         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5495         (SVE_PT_SVE_PREG_SIZE): Likewise.
5496         (SVE_PT_SVE_FFR_SIZE): Likewise.
5497         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5498         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5499         (__SVE_SIG_TO_PT): Likewise.
5500         (SVE_PT_SVE_OFFSET): Likewise.
5501         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5502         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5503         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5504         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5505         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5506         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5507         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5508         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5509         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5510         (SVE_PT_SVE_SIZE): Likewise.
5511         (SVE_PT_SIZE): Likewise.
5512         (HAS_SVE_STATE): New define.
5513
5514 2018-06-18  Alan Hayward  <[email protected]>
5515
5516         * nat/aarch64-sve-linux-sigcontext.h: New file.
5517         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5518         new files.
5519         (SVE_VQ_MIN): Likewise.
5520         (SVE_VQ_MAX): Likewise.
5521         (SVE_VL_MIN): Likewise.
5522         (SVE_VL_MAX): Likewise.
5523         (SVE_NUM_ZREGS): Likewise.
5524         (SVE_NUM_PREGS): Likewise.
5525         (sve_vl_valid): Likewise.
5526         (struct user_sve_header): Likewise.
5527
5528 2018-06-16  Andrew Burgess  <[email protected]>
5529             Richard Bunt <[email protected]>
5530
5531         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5532         was requested by GDB.
5533
5534 2018-06-15  Tom de Vries  <[email protected]>
5535
5536         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5537
5538 2018-06-14  Simon Marchi  <[email protected]>
5539
5540         * gnulib/update-gnulib.sh: Print expected versions of
5541         autoconf/aclocal.
5542
5543 2018-06-14  Simon Marchi  <[email protected]>
5544
5545         * arch-utils.c (default_type_align): Use type_length_units.
5546         * gdbtypes.c (type_align): Use type_length_units.
5547
5548 2018-06-14  Philippe Waroquiers  <[email protected]>
5549
5550         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5551         of 'define' command.
5552
5553 2018-06-14  Tom de Vries  <[email protected]>
5554
5555         PR cli/22573
5556         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5557         get_no_prettyformat_print_options.
5558
5559 2018-06-13  Simon Marchi  <[email protected]>
5560
5561         * sparc-nat.h: Include target.h.
5562         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5563         <fetch_registers>: Remove this argument in function call.
5564         <store_registers>: Remove this argument in function call, remove
5565         extra semicolon.
5566         <low_forget_process>: Call sparc64_forget_process instead of
5567         sparc_forget_process.
5568
5569 2018-06-13  Rainer Orth  <[email protected]>
5570
5571         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5572         (procfs_target::make_corefile_notes): Adjust to new
5573         target_read_alloc return type.
5574
5575 2018-06-12  Andrew Burgess  <[email protected]>
5576             Stephen Roberts  <[email protected]>
5577
5578         PR gdb/22882
5579         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5580         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5581         Move should_notify_stop local into more inner scope.
5582
5583 2018-06-12  Andrew Burgess  <[email protected]>
5584             Stephen Roberts  <[email protected]>
5585
5586         PR gdb/22882
5587         * infrun.c (resume_1): Add call to mark_async_event_handler.
5588
5589 2018-06-12  Andrew Burgess  <[email protected]>
5590
5591         * infrun.c (do_target_wait): Change old version of $pc printed.
5592
5593 2018-06-11  Simon Marchi  <[email protected]>
5594
5595         * dwarf2read.c (read_index_from_section): Rename to...
5596         (read_gdb_index_from_section): ... this, update all callers.
5597         (dwarf2_read_index): Rename to...
5598         (dwarf2_read_gdb_index): ... this, update all callers.
5599
5600 2018-06-11  John David Anglin  <[email protected]>
5601
5602         * gdb/hppa-linux-nat.c
5603         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5604         hppa_linux_nat_target::fetch_registers.
5605
5606 2018-06-11  Alan Hayward  <[email protected]>
5607
5608         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5609         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5610         (AARCH64_DWARF_SVE_FFR): Likewise.
5611         (AARCH64_DWARF_SVE_P0): Likewise.
5612         (AARCH64_DWARF_SVE_Z0): Likewise.
5613
5614 2018-06-11  Alan Hayward  <[email protected]>
5615
5616         * common/common-regcache.h (raw_compare): New function.
5617         * regcache.c (regcache::raw_compare): Likewise.
5618         * regcache.h (regcache::raw_compare): New declaration.
5619
5620 2018-06-11  Alan Hayward  <[email protected]>
5621
5622         * common/common-regcache.h (reg_buffer_common): New structure.
5623         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5624         (reg_buffer::raw_supply): Likewise.
5625         (reg_buffer::raw_supply_integer): Likewise.
5626         (reg_buffer::raw_supply_zeroed): Likewise.
5627         (reg_buffer::raw_collect): Likewise.
5628         (reg_buffer::raw_collect_integer): Likewise.
5629         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5630         (reg_buffer::raw_supply): Likewise.
5631         (reg_buffer::raw_supply_integer): Likewise.
5632         (reg_buffer::raw_supply_zeroed): Likewise.
5633         (reg_buffer::raw_collect): Likewise.
5634         (reg_buffer::raw_collect_integer): Likewise.
5635
5636 2018-06-10  Tom Tromey  <[email protected]>
5637
5638         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5639         (class remote_state) <stop_reply_queue>: Now std::vector.
5640         (remote_state::~remote_state)
5641         (remote_target::stop_reply_queue_length): Update.
5642         (struct queue_iter_param, remove_child_of_pending_fork)
5643         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5644         (check_pending_event_prevents_wildcard_vcont_callback)
5645         (remove_stop_reply_for_inferior)
5646         (remove_stop_reply_of_remote_state)
5647         (remote_notif_remove_once_on_match)
5648         (stop_reply_match_ptid_and_ws)
5649         (remote_kill_child_of_pending_fork): Remove.
5650         (remote_target::remove_new_fork_children)
5651         (remote_target::check_pending_events_prevent_wildcard_vcont)
5652         (remote_target::discard_pending_stop_replies)
5653         (remote_target::discard_pending_stop_replies_in_queue)
5654         (remote_target::remote_notif_remove_queued_reply)
5655         (remote_target::queued_stop_reply)
5656         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5657         (remote_target::wait, remote_target::kill_new_fork_children)
5658         (remote_target::async): Update.
5659
5660 2018-06-10  Tom Tromey  <[email protected]>
5661
5662         * record-full.c (record_full_arch_list_cleanups): Remove.
5663         (record_full_message): Use try/catch.
5664         (record_full_wait_cleanups): Remove.
5665         (record_full_wait_1): Use try/catch.
5666         (record_full_restore): Likewise.
5667
5668 2018-06-10  Tom Tromey  <[email protected]>
5669
5670         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5671         declare VEC.  Add constructor.
5672         <in_target_beneath>: Now bool.
5673         (record_full_breakpoints): Now a std::vector, static.
5674         (record_full_sync_record_breakpoints)
5675         (record_full_init_record_breakpoints)
5676         (record_full_target::insert_breakpoint)
5677         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5678
5679 2018-06-10  Simon Marchi  <[email protected]>
5680
5681         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5682         * serial.c (serial_interface_lookup): Remove struct keyword.
5683
5684 2018-06-10  Tom Tromey  <[email protected]>
5685
5686         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5687         method.
5688         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5689         a method.
5690         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5691         method.
5692         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5693         "beneath" as a method.
5694         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5695         Use "beneath" as a method.
5696
5697 2018-06-10  Tom Tromey  <[email protected]>
5698
5699         * tracefile.c (struct trace_file_writer_deleter): New.
5700         <operator()>: Rename from trace_file_writer_xfree.
5701         (trace_file_writer_up): New typedef.
5702         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5703
5704 2018-06-09  Simon Marchi  <[email protected]>
5705
5706         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5707         <m_registers, m_register_status>: Change type to
5708         std::unique_ptr.
5709         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5710         XCNEWVEC.
5711
5712 2018-06-09  Simon Marchi  <[email protected]>
5713
5714         * common/common-regcache.h (enum register_status): Add
5715         underlying type "signed char".
5716         * regcache.h (reg_buffer) <m_register_status>: Change type to
5717         register_status *.
5718         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5719         register_status instead of signed char.
5720         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5721         (reg_buffer::get_register_status): Remove cast.
5722         (readable_regcache::raw_read): Remove cast.
5723         (readable_regcache::cooked_read): Remove cast.
5724
5725 2018-06-09  Tom Tromey  <[email protected]>
5726
5727         * source.c (reverse_search_command, forward_search_command): Use
5728         scoped_fd.
5729
5730 2018-06-09  Tom Tromey  <[email protected]>
5731
5732         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5733         (serial_ops_list): Now static, std::vector.
5734         (serial_interface_lookup, serial_add_interface): Update.
5735
5736 2018-06-09  Tom Tromey  <[email protected]>
5737
5738         * dwarf2read.c (process_cu_includes): Update.
5739         (process_full_comp_unit): Update.
5740         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5741         std::vector.
5742
5743 2018-06-08  Paul Koning  <[email protected]>
5744
5745         PR gdb/23252
5746
5747         * python/python.c (do_start_initialization):
5748         Avoid call to internal Python API.
5749         (init__gdb_module): New function.
5750
5751 2018-06-08  Gary Benson <[email protected]>
5752
5753         * linux-thread-db.c (valprint.h): New include.
5754         (struct check_thread_db_info): New structure.
5755         (check_thread_db_on_load, tdb_testinfo): New static globals.
5756         (check_thread_db, check_thread_db_callback): New functions.
5757         (try_thread_db_load_1): Run integrity checks if requested.
5758         (maintenance_check_libthread_db): New function.
5759         (_initialize_thread_db): Register "maint check libthread-db"
5760         and "maint set/show check-libthread-db".
5761         * NEWS: Mention the above new commands.
5762
5763 2018-06-08  Tom Tromey  <[email protected]>
5764
5765         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5766         now a method.
5767
5768 2018-06-08  Tom Tromey  <[email protected]>
5769
5770         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5771
5772 2018-06-08  Tom Tromey  <[email protected]>
5773
5774         * common/btrace-common.h (struct btrace_data): Add constructor,
5775         destructor, move assignment operator.
5776         <empty, clear, fini>: New methods.
5777         <format>: Initialize.
5778         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5779         (btrace_data_empty): Don't declare.
5780         * common/btrace-common.c (btrace_data_init): Remove.
5781         (btrace_data::fini): Rename from btrace_data_fini.
5782         (btrace_data::empty): Rename from btrace_data_empty.
5783         (btrace_data::clear): Rename from btrace_data_clear.  Return
5784         bool.
5785         * btrace.h (make_cleanup_btrace_data): Don't declare.
5786         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5787         (parse_xml_btrace): Update.
5788         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5789         (maint_btrace_clear_packet_history_cmd): Update.
5790
5791 2018-06-07  Pedro Alves  <[email protected]>
5792
5793         * target.h (target_ops) <beneath>: Now a method.  All references
5794         updated.
5795         (class target_stack): New.
5796         * target.c (g_target_stack): New.
5797         (g_current_top_target): Delete.
5798         (current_top_target): Get the top target out of g_target_stack.
5799         (target_stack::push, target_stack::unpush): New.
5800         (push_target, unpush_target): Reimplement.
5801         (target_is_pushed): Reimplement in terms of g_target_stack.
5802         (target_ops::beneath, target_stack::find_beneath): New.
5803
5804 2018-06-07  Pedro Alves  <[email protected]>
5805
5806         * target.h (find_target_beneath): Delete declaration.
5807         * target.c (find_target_beneath): Delete definition.
5808         * aix-thread.c: All callers of find_target_beneath adjusted to
5809         call target_ops::beneath instead.
5810         * bsd-uthread.c: Likewise.
5811         * linux-thread-db.c: Likewise.
5812         * ravenscar-thread.c: Likewise.
5813         * sol-thread.c: Likewise.
5814         * spu-multiarch.c: Likewise.
5815
5816 2018-06-07  Pedro Alves  <[email protected]>
5817
5818         * target.h (target_ops) <beneath>: Now a method.  All references
5819         updated.
5820         (target_ops) <m_beneath>: New.
5821         * target.c (target_ops::beneath): New.
5822         * corelow.c: Adjust all references to target_ops::beneath.
5823         * linux-thread-db.c: Likewise.
5824         * make-target-delegates: Likewise.
5825         * record-btrace.c: Likewise.
5826         * record-full.c: Likewise.
5827         * remote.c: Likewise.
5828         * target.c: Likewise.
5829         * target-delegates.c: Regenerate.
5830
5831 2018-06-07  Pedro Alves  <[email protected]>
5832
5833         * target.h (target_stack): Delete.
5834         (current_top_target): Declare function.
5835         * target.c (target_stack): Delete.
5836         (g_current_top_target): New.
5837         (current_top_target): New function.
5838         * auxv.c: Use current_top_target instead of target_stack
5839         throughout.
5840         * avr-tdep.c: Likewise.
5841         * breakpoint.c: Likewise.
5842         * corefile.c: Likewise.
5843         * elfread.c: Likewise.
5844         * eval.c: Likewise.
5845         * exceptions.c: Likewise.
5846         * frame.c: Likewise.
5847         * gdbarch-selftests.c: Likewise.
5848         * gnu-v3-abi.c: Likewise.
5849         * ia64-tdep.c: Likewise.
5850         * ia64-vms-tdep.c: Likewise.
5851         * infcall.c: Likewise.
5852         * infcmd.c: Likewise.
5853         * infrun.c: Likewise.
5854         * linespec.c: Likewise.
5855         * linux-tdep.c: Likewise.
5856         * minsyms.c: Likewise.
5857         * ppc-linux-nat.c: Likewise.
5858         * ppc-linux-tdep.c: Likewise.
5859         * procfs.c: Likewise.
5860         * regcache.c: Likewise.
5861         * remote.c: Likewise.
5862         * rs6000-tdep.c: Likewise.
5863         * s390-linux-nat.c: Likewise.
5864         * s390-tdep.c: Likewise.
5865         * solib-aix.c: Likewise.
5866         * solib-darwin.c: Likewise.
5867         * solib-dsbt.c: Likewise.
5868         * solib-spu.c: Likewise.
5869         * solib-svr4.c: Likewise.
5870         * solib-target.c: Likewise.
5871         * sparc-tdep.c: Likewise.
5872         * sparc64-tdep.c: Likewise.
5873         * spu-tdep.c: Likewise.
5874         * symfile.c: Likewise.
5875         * symtab.c: Likewise.
5876         * target-descriptions.c: Likewise.
5877         * target-memory.c: Likewise.
5878         * target.c: Likewise.
5879         * target.h: Likewise.
5880         * tracefile-tfile.c: Likewise.
5881         * tracepoint.c: Likewise.
5882         * valops.c: Likewise.
5883         * valprint.c: Likewise.
5884         * value.c: Likewise.
5885         * windows-tdep.c: Likewise.
5886         * mi/mi-main.c: Likewise.
5887
5888 2018-06-07  Tom Tromey  <[email protected]>
5889
5890         * valprint.h (build_address_symbolic): Declare.
5891         * printcmd.c (print_address_symbolic): Update.
5892         (build_address_symbolic): Change "name" and "filename" to
5893         std::string.
5894         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5895         Update.
5896         * defs.h (build_address_symbolic): Remove declaration.
5897
5898 2018-06-07  Alan Hayward  <[email protected]>
5899
5900         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5901         (aarch64_vnv_type): Add function.
5902         (aarch64_pseudo_register_name): Add V regs for SVE.
5903         (aarch64_pseudo_register_type): Likewise.
5904         (aarch64_pseudo_register_reggroup_p): Likewise.
5905         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5906         (aarch64_pseudo_read_value): Add V regs for SVE.
5907         (aarch64_pseudo_write_2): Use V0 offset for SVE
5908         (aarch64_pseudo_write): Add V regs for SVE.
5909         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5910
5911 2018-06-06  Sergio Durigan Junior  <[email protected]>
5912
5913         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5914         (sve_vl_from_vq): Likewise.
5915
5916 2018-06-05  Tom Tromey  <[email protected]>
5917
5918         * cli/cli-cmds.c (show_version): Update.
5919         * top.c (print_gdb_version): Add "interactive" parameter.
5920         Update.
5921         * main.c (captured_main_1): Update.
5922         * top.h (print_gdb_version): Add "interactive" parameter and a
5923         comment.
5924
5925 2018-06-05  David Malcolm  <[email protected]>
5926
5927         * common/enum-flags.h: Add trailing semicolon to example in
5928         comment.
5929
5930 2018-06-05  Tom Tromey  <[email protected]>
5931
5932         PR cli/12326:
5933         * NEWS: Add entry about pager.
5934         * utils.c (pagination_disabled_for_command): New global.
5935         (prompt_for_continue): Allow "c" response to prompt.
5936         (reinitialize_more_filter): Clear
5937         pagination_disabled_for_command.
5938         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5939
5940 2018-06-04  Tom Tromey  <[email protected]>
5941
5942         * ada-lang.h (ada_lookup_symbol_list): Update.
5943         * ada-lang.c (resolve_subexp): Update.
5944         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5945         parameter.
5946         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5947         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5948         results parameter to std::vector.
5949         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5950         Update.
5951         * ada-exp.y (block_lookup): Update.
5952         (select_possible_type_sym): Change type of syms.  Remove nsyms
5953         parameter.
5954         (write_var_or_type, write_name_assoc): Update.
5955
5956 2018-06-04  Joel Brobecker  <[email protected]>
5957
5958         * windows-nat.c (windows_nat_target::xfer_partial): Return
5959         TARGET_XFER_E_IO if we need to delegate to the target beneath
5960         but BENEATH is NULL.
5961
5962 2018-06-04  Simon Marchi  <[email protected]>
5963
5964         * Makefile.in (config.status): Add configure.nat as a
5965         dependency.
5966
5967 2018-06-04  Tom Tromey  <[email protected]>
5968
5969         * cp-name-parser.y (cpname_state): Add method declarations.
5970         (HANDLE_QUAL): Update.
5971         (cpname_state::d_grab, cpname_state::fill_comp)
5972         (cpname_state::make_operator, cpname_state::make_dtor)
5973         (cpname_state::make_builtin_type, cpname_state::make_name)
5974         (cpname_state::d_qualify, cpname_state::d_int_type)
5975         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5976         (%union): Move earlier.
5977
5978 2018-06-04  Alan Hayward  <[email protected]>
5979
5980         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5981
5982 2018-06-04  Alan Hayward  <[email protected]>
5983
5984         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5985         (aarch64_pseudo_write_1): Likewise.
5986         (aarch64_pseudo_read_value): Use helper.
5987         (aarch64_pseudo_write): Likewise.
5988
5989 2018-06-04  Pedro Alves  <[email protected]>
5990
5991         * darwin-nat.c (darwin_ops): Delete.
5992         (darwin_attach_pid): Use get_native_target.
5993
5994 2018-06-04  Alan Hayward  <[email protected]>
5995
5996         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5997         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5998
5999 2018-06-04  Alan Hayward  <[email protected]>
6000
6001         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6002         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6003         (aarch64_gdbarch_init): Check for SVE.
6004         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6005
6006 2018-06-04  Alan Hayward  <[email protected]>
6007
6008         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6009         * aarch64-tdep.h (aarch64_read_description): Likewise.
6010         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6011         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6012         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6013         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6014         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6015
6016 2018-06-02  Simon Marchi  <[email protected]>
6017
6018         * value.c (value_fetch_lazy_bitfield): New.
6019         (value_fetch_lazy_memory): New.
6020         (value_fetch_lazy_register): New.
6021         (value_fetch_lazy): Factor out to smaller functions.
6022
6023 2018-06-01  Tom Tromey  <[email protected]>
6024
6025         * cp-name-parser.y (backslashable, represented): Now const.
6026
6027 2018-06-01  Tom Tromey  <[email protected]>
6028
6029         * cp-name-parser.y: Include parser-defs.h.
6030         (parser_fprintf): Remove declaration.
6031
6032 2018-06-01  Tom Tromey  <[email protected]>
6033
6034         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6035         %parse-param.
6036         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6037         (global_result): Remove globals.
6038         (struct cpname_state): New.
6039         (yyparse): Don't declare.
6040         (yylex, yyerror): Move declarations after %union.
6041         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6042         (make_name): Add state parameter.
6043         Update all callers.
6044         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6045         parameter.
6046         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6047         Update.
6048         (yylex): Add lvalp, state parameters.
6049         (yyerror): Add state parameter.
6050         (cp_demangled_name_to_comp): Update.
6051
6052 2018-06-01  Tom Tromey  <[email protected]>
6053
6054         * cp-name-parser.y (parser_fprintf): Declare.
6055         (GDB_YY_REMAP_PREFIX): Define.
6056         Include yy-remap.h.  Don't redefine yy* identifiers.
6057
6058 2018-06-01  Tom Tromey  <[email protected]>
6059
6060         * python/py-type.c (typy_legacy_template_argument): Update.
6061         * cp-support.h (cp_demangled_name_to_comp): Update.
6062         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6063         parameter to be a "std::string *".
6064         (main): Update.
6065
6066 2018-06-01  H.J. Lu  <[email protected]>
6067
6068         * ada-lex.l: Include "diagnostics.h" instead of
6069         "common/diagnostics.h".
6070         * unittests/environ-selftests.c: Likewise.
6071         * common/diagnostics.h: Moved to ../include.
6072
6073 2018-06-01  Joel Brobecker  <[email protected]>
6074
6075         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6076         to language_mode_manual while calling breakpoint_re_set_one.
6077
6078 2018-06-01  Tom Tromey  <[email protected]>
6079
6080         * valops.c (value_cast_structs, destructor_name_p): Update.
6081         * symtab.c (gdb_mangle_name): Update.
6082         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6083         Update.
6084         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6085         (pascal_object_print_value_fields, pascal_object_print_value):
6086         Update.
6087         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6088         * linespec.c (find_methods): Update.
6089         * gdbtypes.h (type_name_no_tag): Remove.
6090         (type_name_or_error): Rename from type_name_no_tag_or_error.
6091         * gdbtypes.c (type_name_no_tag): Remove.
6092         (type_name_or_error): Rename from type_name_no_tag_or_error.
6093         (lookup_struct_elt_type, check_typedef): Update.
6094         * expprint.c (print_subexp_standard): Update.
6095         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6096         * d-namespace.c (d_lookup_nested_symbol): Update.
6097         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6098         (cp_print_class_member): Update.
6099         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6100         * completer.c (add_struct_fields): Update.
6101         * c-typeprint.c (cp_type_print_derivation_info)
6102         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6103         Update.
6104         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6105         (ada_prefer_type, ada_is_exception_sym): Update.
6106
6107 2018-06-01  Tom Tromey  <[email protected]>
6108
6109         * valops.c (enum_constant_from_type, value_namespace_elt)
6110         (value_maybe_namespace_elt): Update.
6111         * valarith.c (find_size_for_pointer_math): Update.
6112         * target-descriptions.c (make_gdb_type): Update.
6113         * symmisc.c (print_symbol): Update.
6114         * stabsread.c (define_symbol, read_type)
6115         (complain_about_struct_wipeout, add_undefined_type)
6116         (cleanup_undefined_types_1): Update.
6117         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6118         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6119         (rust_internal_print_type, rust_composite_type)
6120         (rust_evaluate_funcall, rust_evaluate_subexp)
6121         (rust_inclusive_range_type_p): Update.
6122         * python/py-type.c (typy_get_tag): Update.
6123         * p-typeprint.c (pascal_type_print_base): Update.
6124         * mdebugread.c (parse_symbol, parse_type): Update.
6125         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6126         Update.
6127         * guile/scm-type.c (gdbscm_type_tag): Update.
6128         * go-lang.c (sixg_string_p): Update.
6129         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6130         Update.
6131         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6132         (TYPE_TAG_NAME): Remove.
6133         * gdbtypes.c (type_name_no_tag): Simplify.
6134         (check_typedef, check_types_equal, recursive_dump_type)
6135         (copy_type_recursive, arch_composite_type): Update.
6136         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6137         in summary mode when needed.
6138         * eval.c (evaluate_funcall): Update.
6139         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6140         (process_structure_scope, read_enumeration_type)
6141         (read_namespace_type, read_module_type, determine_prefix): Update.
6142         * cp-support.c (inspect_type): Update.
6143         * coffread.c (process_coff_symbol, decode_base_type): Update.
6144         * c-varobj.c (c_is_path_expr_parent): Update.
6145         * c-typeprint.c (c_type_print_base_struct_union): Update.
6146         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6147         summary when using C language.
6148         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6149         (gen_maybe_namespace_elt): Update.
6150         * ada-lang.c (ada_type_name): Simplify.
6151         (empty_record, ada_template_to_fixed_record_type_1)
6152         (template_to_static_fixed_type)
6153         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6154
6155 2018-06-01  Tom Tromey  <[email protected]>
6156
6157         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6158         c_print_type.
6159         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6160         (c_print_type): Update.
6161         (c_print_type): New overload.
6162         (c_type_print_varspec_prefix, c_type_print_args)
6163         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6164         (c_type_print_base_struct_union, c_type_print_base_1)
6165         (cp_type_print_method_args): Add "language" parameter.
6166         (c_type_print_base): Update.
6167         * c-lang.h (c_print_type): Add new overload.
6168
6169 2018-06-01  Tom Tromey  <[email protected]>
6170
6171         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6172         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6173
6174 2018-06-01  Alan Hayward  <[email protected]>
6175
6176         * aarch64-tdep.c (aarch64_sve_register_names): New const
6177         var.
6178         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6179         (AARCH64_SVE_Z_REGS_NUM): New define.
6180         (AARCH64_SVE_P_REGS_NUM): Likewise.
6181         (AARCH64_SVE_NUM_REGS): Likewise.
6182
6183 2018-05-31  Uros Bizjak  <[email protected]>
6184
6185         * nat/linux-ptrace.h [__alpha__]
6186         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6187         definitions.
6188
6189 2018-05-31  Maciej W. Rozycki  <[email protected]>
6190
6191         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6192         the endianness selected.
6193         * NEWS: Document `set endian auto' mode operation update.
6194
6195 2018-05-31  Alan Hayward  <[email protected]>
6196
6197         * Makefile.in: Add new header.
6198         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6199         (sve_vl_from_vg): Likewise.
6200         (sve_vq_from_vl): Likewise.
6201         (sve_vl_from_vq): Likewise.
6202         (sve_vq_from_vg): Likewise.
6203         (sve_vg_from_vq): Likewise.
6204         * configure.nat: Add new c file.
6205         * nat/aarch64-sve-linux-ptrace.c: New file.
6206         * nat/aarch64-sve-linux-ptrace.h: New file.
6207
6208 2018-05-31  Alan Hayward  <[email protected]>
6209
6210         * aarch64-linux-nat.c (aarch64_linux_read_description):
6211         Add parmeter zero.
6212         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6213         Likewise.
6214         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6215         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6216         (aarch64_gdbarch_init): Add parmeter zero.
6217         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6218         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6219         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6220         parmeter.
6221         * doc/gdb.texinfo: Describe SVE feature
6222         * features/aarch64-sve.c: New file.
6223
6224 2018-05-31  Omair Javaid  <[email protected]>
6225
6226         PR gdb/23210
6227         * gdbarch.sh (significant_addr_bit): Default to zero when
6228         not set by target architecture.
6229         * gdbarch.c: Re-generated.
6230         * utils.c (address_significant): Update.
6231
6232 2018-05-30  Joel Brobecker  <[email protected]>
6233
6234         * stack.c (func_command): Remove trailing newline in call to error.
6235
6236 2018-05-30  Simon Marchi  <[email protected]>
6237
6238         * regcache.h (regcache_raw_collect): Remove, update callers to
6239         use regcache::raw_collect.
6240         * regcache.c (regcache_raw_collect): Remove.
6241
6242 2018-05-30  Simon Marchi  <[email protected]>
6243
6244         * regcache.h (regcache_raw_supply): Remove, update callers to
6245         use detached_regcache::raw_supply.
6246         * regcache.c (regcache_raw_supply): Remove.
6247
6248 2018-05-30  Simon Marchi  <[email protected]>
6249
6250         * regcache.h (regcache_cooked_write_part): Remove, update
6251         callers to use regcache::cooked_write_part.
6252         * regcache.c (regcache_cooked_write_part): Remove.
6253
6254 2018-05-30  Simon Marchi  <[email protected]>
6255
6256         * regcache.h (regcache_cooked_read_part): Remove, update callers
6257         to use readable_regcache::cooked_read_part.
6258         * regcache.c (regcache_cooked_read_part): Remove.
6259
6260 2018-05-30  Simon Marchi  <[email protected]>
6261
6262         * regcache.h (regcache_cooked_read_value): Remove, update
6263         callers to use readable_regcache::cooked_read_value.
6264         * regcache.c (regcache_cooked_read_value): Remove.
6265
6266 2018-05-30  Simon Marchi  <[email protected]>
6267
6268         * regcache.h (regcache_cooked_write): Remove, update callers to
6269         use regcache::cooked_write.
6270         * regcache.c (regcache_cooked_write): Remove.
6271
6272 2018-05-30  Simon Marchi  <[email protected]>
6273
6274         * regcache.h (regcache_invalidate): Remove, update callers to
6275         use detached_regcache::invalidate instead.
6276         * regcache.c (regcache_invalidate): Remove.
6277
6278 2018-05-30  Simon Marchi  <[email protected]>
6279
6280         * regcache.h (regcache_raw_write_part): Remove, update callers
6281         to use regcache::raw_write_part instead.
6282         * regcache.c (regcache_raw_write_part): Remove.
6283
6284 2018-05-30  Simon Marchi  <[email protected]>
6285
6286         * regcache.h (regcache_raw_read_part): Remove, update callers to
6287         use readable_regcache::raw_read_part instead.
6288         * regcache.c (regcache_raw_read_part): Remove.
6289
6290 2018-05-30  Simon Marchi  <[email protected]>
6291
6292         * regcache.h (regcache_cooked_read): Remove, update callers to
6293         use readable_regcache::cooked_read instead.
6294         * regcache.c (regcache_cooked_read): Remove.
6295
6296 2018-05-30  Simon Marchi  <[email protected]>
6297
6298         * regcache.h (regcache_raw_write): Remove, update callers to use
6299         regcache::raw_write instead.
6300         * regcache.c (regcache_raw_write): Remove.
6301
6302 2018-05-30  Simon Marchi  <[email protected]>
6303
6304         * regcache.h (regcache_raw_read): Remove, update callers to use
6305         readable_regcache::raw_read instead.
6306         * regcache.c (regcache_raw_read): Remove.
6307
6308 2018-05-30  Simon Marchi  <[email protected]>
6309
6310         * regcache.h (regcache_raw_update): Remove, update callers to
6311         use readable_regcache::raw_update instead.
6312         * regcache.c (regcache_raw_update): Remove.
6313
6314 2018-05-30  Simon Marchi  <[email protected]>
6315
6316         * regcache.h (regcache_register_status): Remove, update callers
6317         to use reg_buffer::get_register_status directly instead.
6318         * regcache.c (regcache_register_status): Remove.
6319
6320 2018-05-30  Simon Marchi  <[email protected]>
6321
6322         * regcache.h (regcache_get_ptid): Remove, update all callers to
6323         call regcache::ptid instead.
6324         * regcache.c (regcache_get_ptid): Remove.
6325
6326 2018-05-30  Simon Marchi  <[email protected]>
6327
6328         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6329
6330 2018-05-30  Pedro Alves  <[email protected]>
6331
6332         * common/common-exceptions.h (exception_rethrow): Use
6333         ATTRIBUTE_NORETURN.
6334
6335 2018-05-29  Simon Marchi  <[email protected]>
6336
6337         * breakpoint.c (print_solib_event, check_status_catch_solib):
6338         Remove struct keyword in range-based for loops.
6339         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6340         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6341         Likewise.
6342         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6343         Likewise.
6344         * symfile.c (addr_info_make_relative): Likewise.
6345         * thread.c (value_in_thread_stack_temporaries): Likewise.
6346
6347 2018-06-12  Weimin Pan  <[email protected]>
6348
6349         PR gdb/16841
6350         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6351         aggregate type to get its real type before accessing it.
6352
6353 2018-05-29  Weimin Pan  <[email protected]>
6354
6355         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6356         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6357         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6358         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6359         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6360         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6361         * printcmd.c (info_address_command): Likewise.
6362
6363 2018-05-29  Tom Tromey  <[email protected]>
6364
6365         * windows-nat.c (handle_exception): Update fall-through comment.
6366
6367 2018-05-29  Tom Tromey  <[email protected]>
6368
6369         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6370         (struct program_space) <added_solibs>: Now a std::vector.
6371         * breakpoint.c (print_solib_event): Update.
6372         (check_status_catch_solib): Update.
6373         * progspace.c (clear_program_space_solib_cache): Update.
6374         * solib.c (update_solib_list): Update.
6375
6376 2018-05-29  Tom Tromey  <[email protected]>
6377
6378         * python/py-type.c (typy_richcompare): Update.
6379         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6380         * gdbtypes.h (types_deeply_equal): Return bool.
6381         (types_equal): Likewise.
6382         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6383         declare VEC.
6384         (check_types_equal): Change worklist to std::vector.  Return
6385         bool.
6386         (struct type_equality_entry): Add constructor.
6387         (compare_maybe_null_strings): Return bool.
6388         (check_types_worklist): Return bool.  Change worklist to
6389         std::vector.
6390         (types_deeply_equal): Use std::vector.
6391         (types_equal): Return bool.
6392         (compare_maybe_null_strings): Simplify.
6393
6394 2018-05-29  Tom Tromey  <[email protected]>
6395
6396         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6397
6398 2018-05-29  Tom Tromey  <[email protected]>
6399
6400         * objc-lang.h: Don't include cp-support.h.
6401         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6402         declare VEC.
6403
6404 2018-05-27  Tom Tromey  <[email protected]>
6405
6406         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6407
6408 2018-05-25  Tom Tromey  <[email protected]>
6409
6410         * value.c (value::location): Initialize.
6411
6412 2018-05-25  Tom Tromey  <[email protected]>
6413
6414         * dbxread.c (init_bincl_list): Remove.
6415         (bincl_list): Now a std::vector.
6416         (bincls_allocated, next_bincl): Remove.
6417         (free_bincl_list, do_free_bincl_list_cleanup)
6418         (make_cleanup_free_bincl_list): Remove.
6419         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6420         unique_xmalloc_ptr.
6421         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6422         (struct header_file_location): Add constructor.
6423         (add_bincl_to_list): Remove.
6424
6425 2018-05-25  Tom Tromey  <[email protected]>
6426
6427         * tui/tui.c (tui_enable): Update.
6428         * mi/mi-interp.c (mi_interp::init): Update.
6429         * interps.h (class interp) <name>: New method.
6430         <m_name>: Rename from name.
6431         (~scoped_restore_interp): Update.
6432         * interps.c (interp::interp): Update.
6433         (interp_add, interp_set, interp_lookup_existing)
6434         (current_interp_named_p): Update.
6435
6436 2018-05-25  Tom Tromey  <[email protected]>
6437
6438         * interps.c (interp_name): Remove.
6439         * mi/mi-interp.c (mi_interp::init): Update.
6440         * interps.h (interp_name): Remove.
6441         (~scoped_restore_interp): Update.
6442         * tui/tui.c (tui_enable): Update.
6443
6444 2018-05-25  Tom Tromey  <[email protected]>
6445
6446         * utils.c (fputs_maybe_filtered): Update.
6447         * linespec.c (decode_line_full): Update.
6448         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6449         (mi_print_breakpoint_for_event, mi_solib_loaded)
6450         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6451         (mi_user_selected_context_changed): Update.
6452         * mi/mi-main.c (mi_execute_command): Update.
6453         * cli/cli-script.c (execute_control_command): Update.
6454         * python/python.c (execute_gdb_command): Update.
6455         * solib.c (info_sharedlibrary_command): Update.
6456         * interps.c (interp_ui_out): Remove.
6457         * interps.h (interp_ui_out): Remove.
6458
6459 2018-05-25  Tom Tromey  <[email protected]>
6460
6461         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6462         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6463         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6464
6465 2018-05-25  Tom Tromey  <[email protected]>
6466
6467         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6468         * interps.c (interp_exec): Use scoped_restore.
6469
6470 2018-05-25  Tom Tromey  <[email protected]>
6471
6472         * remote.c (remote_target::remote_file_get): Use
6473         gdb::byte_vector.
6474         (remote_target::remote_file_put): Likewise.
6475
6476 2018-05-25  Tom Tromey  <[email protected]>
6477
6478         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6479         a std::string.
6480         (get_pe_section_index, add_pe_exported_sym): Update.
6481         (read_pe_exported_syms): Use gdb::def_vector.
6482
6483 2018-05-25  Tom Tromey  <[email protected]>
6484
6485         * frame.c (remove_prev_frame): Remove.
6486         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6487
6488 2018-05-25  Maciej W. Rozycki  <[email protected]>
6489
6490         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6491         Remove prototypes.
6492         * mips-linux-nat.c (supply_fpregset): Always call
6493         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6494         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6495         `mips_fill_fpregset'.
6496         * mips-linux-tdep.c (mips_supply_fpregset)
6497         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6498         (mips_fill_fpregset_wrapper): Remove functions.
6499         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6500         (mips_linux_fpregset): Remove variable.
6501         (mips_linux_iterate_over_regset_sections): Use
6502         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6503         (mips_linux_o32_sigframe_init): Remove comment.
6504
6505 2018-05-25  Pedro Alves  <[email protected]>
6506
6507         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6508         (struct readahead_cache, struct packet_reg, struct
6509         remote_arch_state, class remote_state): Move higher up in the
6510         file.
6511         (remote_target::m_remote_state): Now an object instead of a pointer.
6512         (remote_target::get_remote_state): Adjust.
6513
6514 2018-05-24  Andrew Burgess  <[email protected]>
6515
6516         * stack.c (select_and_print_frame): Delete.
6517         (struct function_bounds): Move struct within function.
6518         (func_command): Most content moved into new function
6519         find_frame_for_function, use new function, print result, add
6520         function comment.
6521         (find_frame_for_function): New function, now returns a result.
6522
6523 2018-05-24  Philippe Waroquiers  <[email protected]>
6524
6525         * stack.c (iterate_over_block_arg_vars): Fix comment.
6526         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6527
6528 2018-05-24  Andrew Burgess  <[email protected]>
6529
6530         PR gdb/23203
6531         * frame.c
6532         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6533         Define.
6534         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6535         Define.
6536         * frame.h (class scoped_restore_selected_frame): New class.
6537         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6538         of any exception, use scoped_restore_selected_frame to restore the
6539         frame instead.
6540
6541 2018-05-24  Pedro Alves  <[email protected]>
6542
6543         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6544         override.
6545
6546 2018-05-23  Tom Tromey  <[email protected]>
6547
6548         * complaints.c (struct complaints): Remove.
6549         (symfile_complaint_book): Remove.
6550         (series): New global.
6551         (complaint_internal): Update.
6552         (clear_complaints): Update.
6553
6554 2018-05-23  Tom Tromey  <[email protected]>
6555
6556         * complaints.c (counters): New global.
6557         (struct complain): Remove.
6558         (struct complaints) <root>: Remove.
6559         (complaint_sentinel): Remove.
6560         (symfile_complaint_book): Update.
6561         (find_complaint) Remove.
6562         (complaint_internal, clear_complaints): Update.
6563
6564 2018-05-23  Tom Tromey  <[email protected]>
6565
6566         * complaints.c (struct complain) <file, line>: Remove.
6567         (find_complaint): Remove file, line parameters.
6568         (complaint_internal): Update.
6569
6570 2018-05-23  Tom Tromey  <[email protected]>
6571
6572         * complaints.c (vcomplaint): Remove.
6573         (complaint_internal) Merge in contents of vcomplaint.
6574
6575 2018-05-23  Tom Tromey  <[email protected]>
6576
6577         * complaints.c (struct complaints) <explanation>: Remove.
6578         (symfile_explanations): Remove.
6579         (symfile_complaint_book): Update.
6580         (vcomplaint): Update.
6581         (struct explanation): Remove.
6582
6583 2018-05-23  Tom Tromey  <[email protected]>
6584
6585         * complaints.c (symfile_complaints): Remove.
6586         (complaint_internal): Remove "complaints" parameter.
6587         (clear_complaints, vcomplaint): Remove "c" parameter.
6588         (get_complaints): Remove.
6589         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6590         (dwarf2_debug_line_missing_file_complaint)
6591         (dwarf2_debug_line_missing_end_sequence_complaint)
6592         (dwarf2_complex_location_expr_complaint)
6593         (dwarf2_const_value_length_mismatch_complaint)
6594         (dwarf2_section_buffer_overflow_complaint)
6595         (dwarf2_macro_malformed_definition_complaint)
6596         (dwarf2_invalid_attrib_class_complaint)
6597         (create_addrmap_from_index, dw2_symtab_iter_next)
6598         (dw2_expand_marked_cus)
6599         (dw2_debug_names_iterator::find_vec_in_debug_names)
6600         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6601         (create_debug_type_hash_table, init_cutu_and_read_dies)
6602         (partial_die_parent_scope, add_partial_enumeration)
6603         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6604         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6605         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6606         (create_cus_hash_table, create_dwp_hash_table)
6607         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6608         (dwarf2_rnglists_process, dwarf2_ranges_process)
6609         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6610         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6611         (handle_struct_member_die, process_structure_scope)
6612         (read_array_type, read_common_block, read_module_type)
6613         (read_tag_pointer_type, read_typedef, read_base_type)
6614         (read_subrange_type, load_partial_dies, partial_die_info::read)
6615         (partial_die_info::read, partial_die_info::read)
6616         (partial_die_info::read, read_checked_initial_length_and_offset)
6617         (dwarf2_string_attr, read_formatted_entries)
6618         (dwarf_decode_line_header)
6619         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6620         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6621         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6622         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6623         (get_signatured_type, get_DW_AT_signature_type)
6624         (decode_locdesc, file_file_name, consume_improper_spaces)
6625         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6626         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6627         (dwarf2_symbol_mark_computed, set_die_type)
6628         (read_attribute_value): Update.
6629         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6630         Update.
6631         * dbxread.c (unknown_symtype_complaint)
6632         (lbrac_mismatch_complaint, repeated_header_complaint)
6633         (set_namestring, function_outside_compilation_unit_complaint)
6634         (read_dbx_symtab, process_one_symbol): Update.
6635         * gdbtypes.c (stub_noname_complaint): Update.
6636         * windows-nat.c (handle_unload_dll): Update.
6637         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6638         (decode_base_type): Update.
6639         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6640         (eb_complaint, record_include_begin, record_include_end)
6641         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6642         (process_xcoff_symbol, read_symbol)
6643         (function_outside_compilation_unit_complaint)
6644         (scan_xcoff_symtab): Update.
6645         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6646         * buildsym.c (finish_block_internal, make_blockvector)
6647         (end_symtab_get_static_block, augment_type_symtab): Update.
6648         * dtrace-probe.c (dtrace_process_dof)
6649         (dtrace_static_probe_ops::get_probes): Update.
6650         * complaints.h (struct complaint): Don't declare.
6651         (symfile_complaints): Remove.
6652         (complaint_internal): Remove "complaints" parameter.
6653         (complaint): Likewise.
6654         (clear_complaints): Likewise.
6655         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6656         (reread_symbols): Update.
6657         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6658         (dwarf2_frame_cache, decode_frame_entry): Update.
6659         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6660         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6661         (info_selectors_command): Update.
6662         * macrotab.c (macro_include, check_for_redefinition)
6663         (macro_undef): Update.
6664         * objfiles.c (filter_overlapping_sections): Update.
6665         * stabsread.c (invalid_cpp_abbrev_complaint)
6666         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6667         (define_symbol, error_type, read_type, rs6000_builtin_type)
6668         (stabs_method_name_from_physname, read_member_functions)
6669         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6670         (attach_fields_to_type, complain_about_struct_wipeout)
6671         (read_range_type, read_args, common_block_start)
6672         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6673         Update.
6674         * mdebugread.c (index_complaint, unknown_ext_complaint)
6675         (basic_type_complaint, bad_tag_guess_complaint)
6676         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6677         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6678         (parse_procedure, parse_lines)
6679         (function_outside_compilation_unit_complaint)
6680         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6681         (bad_tag_guess_complaint, reg_value_complaint): Update.
6682         * cp-support.c (demangled_name_complaint): Update.
6683         * macroscope.c (sal_macro_scope): Update.
6684         * dwarf-index-write.c (class debug_names): Update.
6685
6686 2018-05-23  Tom Tromey  <[email protected]>
6687
6688         * complaints.c (clear_complaints): Remove "noisy" parameter.
6689         * complaints.h (clear_complaints): Update.
6690         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6691         (reread_symbols): Update.
6692
6693 2018-05-23  Tom Tromey  <[email protected]>
6694
6695         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6696         SUBSEQUENT_MESSAGE.
6697         (vcomplaint, clear_complaints): Update.
6698         (symfile_explanations): Remove some messages.
6699
6700 2018-05-23  Tom Tromey  <[email protected]>
6701
6702         * complaints.c (internal_complaint): Remove.
6703         * complaints.h (internal_complaint): Remove.
6704
6705 2018-05-22  Maciej W. Rozycki  <[email protected]>
6706
6707         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6708
6709 2018-05-22  Pedro Alves  <[email protected]>
6710
6711         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6712         (remote_fileio_badfd, remote_fileio_return_errno)
6713         (remote_fileio_return_success, remote_fileio_func_open)
6714         (remote_fileio_func_open, remote_fileio_func_close)
6715         (remote_fileio_func_read, remote_fileio_func_write)
6716         (remote_fileio_func_lseek, remote_fileio_func_rename)
6717         (remote_fileio_func_unlink, remote_fileio_func_stat)
6718         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6719         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6720         remote_target parameter.
6721         (remote_fio_func_map) <func>: Add remote_target parameter.
6722         (do_remote_fileio_request, remote_fileio_request):
6723         * remote-fileio.h (remote_fileio_request):
6724         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6725         remote_target parameter.
6726         (remote_notif_process, handle_notification): Adjust to pass down
6727         the remote.
6728         (remote_notif_state_allocate): Add remote_target parameter.  Save
6729         it.
6730         * remote-notif.h (struct remote_target): Forward declare.
6731         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6732         remote_target parameter.
6733         (struct remote_notif_state) <remote>: New field.
6734         (remote_notif_ack, remote_notif_parse): Add remote_target
6735         parameter.
6736         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6737         remote_target parameter.
6738         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6739         (threads_listing_context, rmt_thread_action, protocol_feature)
6740         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6741         (packet_result, struct threads_listing_context, remote_state):
6742         Move definitions and declarations higher up.
6743         (remote_target) <~remote_target>: Declare.
6744         (remote_download_command_source, remote_file_put, remote_file_get)
6745         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6746         (remote_hostio_pread_vFile, remote_hostio_send_command)
6747         (remote_hostio_set_filesystem, remote_hostio_open)
6748         (remote_hostio_close, remote_hostio_unlink, remote_state)
6749         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6750         (get_memory_write_packet_size, get_memory_read_packet_size)
6751         (append_pending_thread_resumptions, remote_detach_1)
6752         (append_resumption, remote_resume_with_vcont)
6753         (add_current_inferior_and_thread, wait_ns, wait_as)
6754         (process_stop_reply, remote_notice_new_inferior)
6755         (process_initial_stop_replies, remote_add_thread)
6756         (btrace_sync_conf, remote_btrace_maybe_reopen)
6757         (remove_new_fork_children, kill_new_fork_children)
6758         (discard_pending_stop_replies, stop_reply_queue_length)
6759         (check_pending_events_prevent_wildcard_vcont)
6760         (discard_pending_stop_replies_in_queue, stop_reply)
6761         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6762         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6763         (remote_interrupt_as, remote_interrupt_ns)
6764         (remote_get_noisy_reply, remote_query_attached)
6765         (remote_add_inferior, remote_current_thread, get_current_thread)
6766         (set_thread, set_general_thread, set_continue_thread)
6767         (set_general_process, write_ptid)
6768         (remote_unpack_thread_info_response, remote_get_threadinfo)
6769         (parse_threadlist_response, remote_get_threadlist)
6770         (remote_threadlist_iterator, remote_get_threads_with_ql)
6771         (remote_get_threads_with_qxfer)
6772         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6773         (get_offsets, remote_check_symbols, remote_supported_packet)
6774         (remote_query_supported, remote_packet_size)
6775         (remote_serial_quit_handler, remote_detach_pid)
6776         (remote_vcont_probe, remote_resume_with_hc)
6777         (send_interrupt_sequence, interrupt_query)
6778         (remote_notif_get_pending_events, fetch_register_using_p)
6779         (send_g_packet, process_g_packet, fetch_registers_using_g)
6780         (store_register_using_P, store_registers_using_G)
6781         (set_remote_traceframe, check_binary_download)
6782         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6783         (remote_xfer_live_readonly_partial, remote_read_bytes)
6784         (remote_send_printf, remote_flash_write, readchar)
6785         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6786         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6787         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6788         (extended_remote_disable_randomization, extended_remote_run)
6789         (send_environment_packet, extended_remote_environment_support)
6790         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6791         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6792         (packet_command): Now methods of ...
6793         (remote_target): ... this class.
6794         (m_remote_state) <remote_target>: New field.
6795         (struct remote_state) <stop_reply_queue,
6796         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6797         fields.
6798         (remote_state::remote_state): Allocate stop_reply_queue.
6799         (remote_state): Delete global.
6800         (get_remote_state_raw): Delete.
6801         (remote_target::get_remote_state): Allocate m_remote_state on
6802         demand.
6803         (get_current_remote_target): New.
6804         (remote_ops, extended_remote_ops): Delete.
6805         (wait_forever_enabled_p, remote_async_inferior_event_token):
6806         Delete, moved to struct remote_state.
6807         (remote_target::close): Delete self.  Destruction bits split to
6808         ...
6809         (remote_target::~remote_target): ... this.
6810         (show_memory_packet_size): Adjust to use
6811         get_current_remote_target.
6812         (struct protocol_feature) <func>: Add remote_target parameter.
6813         All callers adjusted.
6814         (curr_quit_handler_target): New.
6815         (remote_serial_quit_handler): Reimplement.
6816         (remote_target::open_1): Adjust to use get_current_remote_target.
6817         Heap-allocate remote_target/extended_remote_target instances.
6818         (vcont_builder::vcont_builder): Add remote_target parameter, and
6819         save it in m_remote.  All callers adjusted.
6820         (vcont_builder::m_remote): New field.
6821         (vcont_builder::restart, vcont_builder::flush)
6822         (vcont_builder::push_action): Use it.
6823         (remote_target::commit_resume): Use it.
6824         (struct queue_iter_param) <remote>: New field.
6825         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6826         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6827         (check_pending_event_prevents_wildcard_vcont_callback)
6828         (remote_target::check_pending_events_prevent_wildcard_vcont)
6829         (remote_target::discard_pending_stop_replies)
6830         (remote_target::discard_pending_stop_replies_in_queue)
6831         (remote_target::remote_notif_remove_queued_reply): Fill in
6832         'remote' field.
6833         (remote_notif_get_pending_events): New.
6834         (remote_target::readchar, remote_target::remote_serial_write):
6835         Save/restore curr_quit_handler_target.
6836         (putpkt): New.
6837         (kill_new_fork_children): Fill in 'remote' field.
6838         (packet_command): Use get_current_remote_target, defer to
6839         remote_target method of same name.
6840         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6841         parameter, and save it in m_remote.  All callers adjusted.
6842         (scoped_remote_fd::release): Use m_remote.
6843         (scoped_remote_fd::m_remote): New field.
6844         (remote_file_put, remote_file_get, remote_file_delete): Use
6845         get_current_remote_target, defer to remote_target method of same
6846         name.
6847         (remote_btrace_reset): Add remote_state paremeter.  Update all
6848         callers.
6849         (remote_async_inferior_event_handler). Pass down 'data'.
6850         (remote_new_objfile): Use get_current_remote_target.
6851         (remote_target::vcont_r_supported): New.
6852         (set_range_stepping): Use get_current_remote_target and
6853         remote_target::vcont_r_supported.
6854         (_initialize_remote): Don't allocate 'remote_state' and
6855         'stop_reply_queue' globals.
6856         * remote.h (struct remote_target): Forward declare.
6857         (getpkt, putpkt, remote_notif_get_pending_events): Add
6858         'remote_target' parameter.
6859
6860 2018-05-22  Pedro Alves  <[email protected]>
6861
6862         * remote.c (vcont_builder): Now a class.  Make all data members
6863         private.
6864         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6865         Declare methods.
6866         (vcont_builder_restart): Rename to ...
6867         (vcont_builder::restart): ... this.
6868         (vcont_builder_flush): Rename to ...
6869         (vcont_builder::flush): ... this.
6870         (vcont_builder_push_action): Rename to ...
6871         (vcont_builder::push_action): ... this.
6872         (remote_target::commit_resume): Adjust.
6873
6874 2018-05-22  Pedro Alves  <[email protected]>
6875
6876         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6877         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6878         (get_fixed_memory_packet_size): New.
6879         (get_memory_packet_size): Use it.
6880         (set_memory_packet_size): Don't override the config size with
6881         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6882         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6883         Don't refer to get_memory_packet_size if not connected to a remote
6884         target.  Show "(default)" if configured size is 0.
6885
6886 2018-05-22  Pedro Alves  <[email protected]>
6887
6888         * remote.c (remote_target::mourn_inferior): Move
6889         discard_pending_stop_replies call here from ...
6890         (_initialize_remote): ... here.
6891
6892 2018-05-22  Pedro Alves  <[email protected]>
6893
6894         * remote.c (compare_section_command): Remove set_general_process
6895         call.
6896
6897 2018-05-22  Pedro Alves  <[email protected]>
6898
6899         * remote.c (struct packet_reg, struct remote_arch_state):
6900         Move higher up in the file.
6901         (remote_state) <m_arch_states>: Store remote_arch_state values
6902         instead of remote_arch_state pointers.
6903         (remote_state::get_remote_arch_state): Adjust.
6904
6905 2018-05-22  Pedro Alves  <[email protected]>
6906
6907         * remote.c: Include <unordered_map>.
6908         (remote_state): Now a class.
6909         (remote_state) <get_remote_arch_state>: Declare method.
6910         <get_remote_arch_state>: New field.
6911         (remote_arch_state) <remote_arch_state>: Declare ctor.
6912         <regs>: Now a unique_ptr.
6913         (remote_gdbarch_data_handle): Delete.
6914         (get_remote_arch_state): Delete.
6915         (remote_state::get_remote_arch_state): New.
6916         (get_remote_state): Adjust to call remote_state's
6917         get_remote_arch_state method.
6918         (init_remote_state): Delete, bits factored out to ...
6919         (remote_arch_state::remote_arch_state): ... this new method.
6920         (get_remote_packet_size, get_memory_packet_size)
6921         (process_g_packet, remote_target::fetch_registers)
6922         (remote_target::prepare_to_store, store_registers_using_G)
6923         (remote_target::store_registers, remote_target::get_trace_status):
6924         Adjust to call remote_state's method.
6925         (_initialize_remote): Remove reference to
6926         remote_gdbarch_data_handle.
6927
6928 2018-05-22  Pedro Alves  <[email protected]>
6929
6930         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6931         pread>: New method declarations.
6932         (remote_target::open_1): Adjust.
6933         (readahead_cache_invalidate): Rename to ...
6934         (readahead_cache::invalidate): ... this, and adjust to be a class
6935         method.
6936         (readahead_cache_invalidate_fd): Rename to ...
6937         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6938         class method.
6939         (remote_hostio_pwrite): Adjust.
6940         (remote_hostio_pread_from_cache): Rename to ...
6941         (readahead_cache::pread): ... this, and adjust to be a class
6942         method.
6943         (remote_hostio_close): Adjust.
6944
6945 2018-05-22  Pedro Alves  <[email protected]>
6946
6947         * remote.c (remote_hostio_close_cleanup): Delete.
6948         (class scoped_remote_fd): New.
6949         (remote_file_put, remote_file_get): Use it.
6950
6951 2018-05-22  Pedro Alves  <[email protected]>
6952
6953         (struct vCont_action_support): Use bool and initialize all fields.
6954         (struct readahead_cache): Initialize all fields.
6955         (remote_state): Use bool and initialize all fields.
6956         (remote_state::remote_state, remote_state::~remote_state): New.
6957         (new_remote_state): Delete.
6958         (_initialize_remote): Use new to allocate remote_state.
6959
6960 2018-05-22  Pedro Alves  <[email protected]>
6961             張俊芝  <[email protected]>
6962
6963         PR gdb/22973
6964         * c-exp.y: Include "c-support.h".
6965         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6966         of tolower.  Use c_ident_is_alpha to scan names.
6967         * c-lang.c: Include "c-support.h".
6968         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6969         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6970         * c-support.h: New file, with bits factored out from ...
6971         * cp-name-parser.y: ... this file.
6972         Include "c-support.h".
6973         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6974         c-support.h and renamed.
6975         (symbol_end, yylex): Adjust.
6976
6977 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
6978
6979         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6980         parameter type to CORE_ADDR.
6981         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6982         parameter type in declaration to CORE_ADDR.
6983         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6984         target_auxv_search to get AT_HWCAP and use the result to get the
6985         target description.
6986         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6987         to CORE_ADDR. Remove the cast of the return value to unsigned
6988         long. Fix error predicate of target_auxv_search.
6989         (ppc_linux_nat_target::read_description): Change the type of the
6990         hwcap variable to CORE_ADDR.
6991
6992 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
6993
6994         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6995         if the size of fpscr is larger than 32 bits.
6996
6997 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
6998
6999         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7000         (ppc32_linux_vsxregmap): New global.
7001         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7002         regcache_supply_regset, and regcache_collect_regset.
7003         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7004         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7005         (fetch_vsx_register, store_vsx_register): Remove.
7006         (fetch_vsx_registers): Add regno parameter. Get regset using
7007         ppc_linux_vsxregset. Use regset to supply registers.
7008         (store_vsx_registers): Add regno parameter. Get regset using
7009         ppc_linux_vsxregset. Use regset to collect registers.
7010         (fetch_register): Call fetch_vsx_registers instead of
7011         fetch_vsx_register.
7012         (store_register): Call store_vsx_registers instead of
7013         store_vsx_register.
7014         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7015         new regno parameter.
7016         (store_ppc_registers): Call store_vsx_registers with -1 for the
7017         new regno parameter.
7018         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7019         (ppc_collect_vsxregset): Remove.
7020
7021 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
7022
7023         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7024         offset fields.
7025         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7026         for vector register offset fields.
7027         (ppc64_fbsd_reg_offsets): Likewise.
7028         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7029         to vector register offset fields.
7030         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7031         to vector register offset fields.
7032         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7033         vector register offset fields.
7034         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7035         initializers for vector register offset fields.
7036         (rs6000_aix64_reg_offsets): Likewise.
7037         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7038         (ppc_supply_vrregset): Remove.
7039         (ppc_collect_vrregset): Remove.
7040         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7041         (ppc_linux_vrregset) : New function.
7042         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7043         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7044         (ppc32_linux_vrregset): Remove.
7045         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7046         and use result instead of ppc32_linux_vrregset.
7047         (ppc32_linux_reg_offsets): Remove initializers for vector register
7048         offset fields.
7049         (ppc64_linux_reg_offsets): Likewise.
7050         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7051         * ppc-linux-nat.c: Include regset.h.
7052         (gdb_vrregset_t): Adjust comment to account for little-endian
7053         mode.
7054         (supply_vrregset, fill_vrregset): Remove.
7055         (fetch_altivec_register, store_altivec_register): Remove.
7056         (fetch_altivec_registers): Add regno parameter. Get regset using
7057         ppc_linux_vrregset. Use regset to supply registers.
7058         (store_altivec_registers): Add regno parameter. Get regset using
7059         ppc_linux_vrregset. Use regset to collect registers.
7060         (fetch_register): Call fetch_altivec_registers instead of
7061         fetch_altivec_register.
7062         (store_register): Call store_altivec_registers instead of
7063         store_altivec_register.
7064         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7065         the new regno parameter.
7066         (store_ppc_registers): Call store_altivec_registers with -1 for
7067         the new regno parameter.
7068
7069 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
7070
7071         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7072         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7073         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7074         (gdb_vrregset_t): Change array type size to
7075         PPC_LINUX_SIZEOF_VRREGSET.
7076         (gdb_vsxregset_t): Change array type size to
7077         PPC_LINUX_SIZEOF_VSXREGSET.
7078         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7079         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7080         PPC_LINUX_SIZEOF_VSXREGSET.
7081
7082 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
7083
7084         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7085         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7086         nat/ppc-linux.c.
7087         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7088         ppc_linux_target_wordsize with tid.
7089         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7090         wordsize with tid.
7091         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7092         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7093         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7094         tid parameter. Remove static specifier.
7095         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7096         (ppc_linux_target_wordsize): New declaration.
7097
7098 2018-05-22  Pedro Franco de Carvalho  <[email protected]>
7099
7100         * arch/ppc-linux-common.c: New file.
7101         * arch/ppc-linux-common.h: New file.
7102         * arch/ppc-linux-tdesc.h: New file.
7103         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7104         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7105         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7106         arch/ppc-linux-tdesc.h.
7107         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7108         arch/ppc-linux-tdesc.h.
7109         (ppc_linux_nat_target::read_description): Remove target
7110         description matching code. Fill a ppc_linux_features struct and
7111         call ppc_linux_match_description with it. Move comment about ISA
7112         2.05 to ppc-linux-common.c.
7113         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7114         arch/ppc-linux-tdesc.h.
7115         (ppc_linux_core_read_description): Remove target description
7116         matching code. Fill a ppc_linux_features struct and call
7117         ppc_linux_match_description with it.
7118         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7119         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7120         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7121         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7122         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7123         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7124         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7125         (tdesc_powerpc_e500l): Remove.
7126
7127 2018-05-22  Joel Brobecker  <[email protected]>
7128
7129         * ada-lang.c (catch_assert_command): Pass empty string instead
7130         of NULL for excep_string argument.
7131
7132 2018-05-22  Maciej W. Rozycki  <[email protected]>
7133
7134         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7135         the width of the requested register exceeds the width of the
7136         `ptrace' data type.
7137
7138 2018-05-21  Tom Tromey  <[email protected]>
7139
7140         * printcmd.c (output_command): Remove.
7141         (output_command_const): Rename to output_command.
7142         * valprint.h (output_command): Rename from output_command_const.
7143         * tracepoint.c (trace_dump_actions): Call output_command.
7144
7145 2018-05-21  Tom Tromey  <[email protected]>
7146
7147         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7148         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7149         * ada-lang.h (create_ada_exception_catchpoint): Update.
7150         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7151         std::string.
7152         (create_excep_cond_exprs, ~ada_catchpoint)
7153         (should_stop_exception, print_one_exception)
7154         (print_mention_exception, print_recreate_exception): Update.
7155         (ada_get_next_arg): Remove.
7156         (catch_ada_exception_command_split): Use std::string.  Change type
7157         of "excep_string", "cond_string".
7158         (catch_ada_exception_command): Update.
7159         (create_ada_exception_catchpoint): Change type of excep_string.
7160         (ada_exception_sal): Remove excep_string parameter.
7161         (~ada_catchpoint): Remove.
7162
7163 2018-05-21  Tom Tromey  <[email protected]>
7164
7165         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7166         cleanup.
7167
7168 2018-05-21  Tom Tromey  <[email protected]>
7169
7170         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7171         Return unique_xmalloc_ptr.
7172         (print_it_exception): Update.
7173
7174 2018-05-21  Tom Tromey  <[email protected]>
7175
7176         * tracepoint.c (trace_dump_actions): Use std::string.
7177
7178 2018-05-21  Tom Tromey  <[email protected]>
7179
7180         * symfile.c (reread_symbols): Use std::string for original_name.
7181
7182 2018-05-21  Tom Tromey  <[email protected]>
7183
7184         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7185         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7186         constructor.
7187
7188 2018-05-20  Simon Marchi  <[email protected]>
7189
7190         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7191         instance to...
7192         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7193         * objfiles.c (get_objfile_bfd_data): Allocate
7194         objfile_per_bfd_storage with obstack_new when allocating on
7195         obstack.
7196
7197 2018-05-20  Simon Marchi  <[email protected]>
7198
7199         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7200         OBSTACK_ZALLOC.
7201         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7202         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7203         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7204         (add_pending): Likewise.
7205         (parse_symbol): Likewise.
7206         (parse_partial_symbols): Likewise.
7207         (psymtab_to_symtab_1): Likewise.
7208         (new_psymtab): Likewise.
7209         (elfmdebug_build_psymtabs): Likewise.
7210         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7211         * objfiles.c (get_objfile_bfd_data): Likewise.
7212         (objfile_register_static_link): Likewise.
7213         * psymtab.c (allocate_psymtab): Likewise.
7214         * stabsread.c (read_member_functions): Likewise.
7215         * xcoffread.c (xcoff_end_psymtab): Likewise.
7216
7217 2018-05-20  Simon Marchi  <[email protected]>
7218
7219         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7220         compiler supports std::is_trivially_constructible.
7221         * common/poison.h: Include obstack.h.
7222         (IsMallocable): Define to is_trivially_constructible if the
7223         compiler supports it, define to true_type otherwise.
7224         (xobnew): New.
7225         (XOBNEW): Redefine.
7226         (xobnewvec): New.
7227         (XOBNEWVEC): Redefine.
7228         * gdb_obstack.h (obstack_zalloc): New.
7229         (OBSTACK_ZALLOC): Redefine.
7230         (obstack_calloc): New.
7231         (OBSTACK_CALLOC): Redefine.
7232         (obstack_new): New.
7233         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7234         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7235         gdbarch.c.
7236         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7237         obstack_calloc/obstack_zalloc.
7238         (gdbarch_obstack_zalloc): Remove.
7239         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7240
7241 2018-05-19  Philippe Waroquiers  <[email protected]>
7242
7243         * stack.c (backtrace_command_1): Remove useless variable int i.
7244
7245 2018-05-19  Philippe Waroquiers  <[email protected]>
7246
7247         * stack.c (print_frame_info): Fix comment.
7248
7249 2018-05-18  Tom Tromey  <[email protected]>
7250
7251         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7252         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7253         (~dwarf2_per_objfile): Update
7254         (dwarf2_get_dwz_file): Use new.
7255         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7256         unique_ptr.
7257
7258 2018-05-18  Tom Tromey  <[email protected]>
7259
7260         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7261         unique_ptr.
7262         * dwarf2read.c (struct dwp_file): Add constructor and
7263         initializers.
7264         (open_and_init_dwp_file): Return a unique_ptr.
7265         (dwarf2_per_objfile, create_dwp_hash_table)
7266         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7267         (lookup_dwo_unit_in_dwp): Update.
7268         (open_and_init_dwp_file, get_dwp_file): Update.
7269
7270 2018-05-18  Tom Tromey  <[email protected]>
7271
7272         * dwarf2read.c (dwarf2_per_objfile): Update.
7273         (struct mapped_index): Add initializers.
7274         (dwarf2_read_index): Use new.
7275         (dw2_symtab_iter_init): Update.
7276         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7277         unique_ptr.
7278
7279 2018-05-18  Simon Marchi  <[email protected]>
7280
7281         * dwarf2read.c (mapped_index) <total_size>: Remove.
7282
7283 2018-05-18  Simon Marchi  <[email protected]>
7284
7285         * unittests/format_pieces-selftests.c (test_format_specifier):
7286         Add ARI comments.
7287
7288 2018-05-18  Tom Tromey  <[email protected]>
7289
7290         * c-typeprint.c (maybe_print_hole): New function.
7291         (c_print_type_struct_field_offset): Update.
7292         (c_type_print_base_struct_union): Call maybe_print_hole.
7293
7294 2018-05-17  Keith Seitz  <[email protected]>
7295
7296         * breakpoint.c (build_bpstat_chain): New function, moved from
7297         bpstat_stop_status.
7298         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7299         If no stop chain is passed, call build_bpstat_chain to build it.
7300         * breakpoint.h (build_bpstat_chain): Declare.
7301         (bpstat_stop_status): Move documentation here from breakpoint.c.
7302         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7303         build the stop chain and pass it to skip_inline_frames.
7304         Pass this stop chain to bpstat_stop_status.
7305         * inline-frame.c: Include breakpoint.h.
7306         (stopped_by_user_bp_inline_frame): New function.
7307         (skip_inline_frames): Add parameter `stop_chain'.
7308         Move documention to inline-frame.h.
7309         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7310         whether the frame should be elided.
7311         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7312         Add moved documentation and update for new parameter.
7313
7314 2018-05-17  Simon Marchi  <[email protected]>
7315
7316         PR cli/14975
7317         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7318         unittests/format_pieces-selftests.c.
7319         * common/format.h (format_piece) <operator==>: New.
7320         (format_pieces) <operator[]>: Remove.
7321         * common/format.c (format_pieces::format_pieces): Handle \e.
7322         * unittests/format_pieces-selftests.c: New.
7323
7324 2018-05-17  Tom Tromey  <[email protected]>
7325
7326         PR symtab/23010:
7327         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7328         (dw2_instantiate_symtab): Add skip_partial parameter.
7329         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7330         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7331         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7332         (dw2_expand_symtabs_matching_one)
7333         (dw2_find_pc_sect_compunit_symtab)
7334         (dw2_debug_names_lookup_symbol)
7335         (dw2_debug_names_expand_symtabs_for_function): Update.
7336         (init_cutu_and_read_dies): Add skip_partial parameter.
7337         (process_psymtab_comp_unit, build_type_psymtabs_1)
7338         (process_skeletonless_type_unit, load_partial_comp_unit)
7339         (psymtab_to_symtab_1): Update.
7340         (load_full_comp_unit): Add skip_partial parameter.
7341         (process_imported_unit_die, dwarf2_read_addr_index)
7342         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7343         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7344         (read_signatured_type): Update.
7345
7346 2018-05-17  Simon Marchi  <[email protected]>
7347
7348         * value.c (release_value): Remove unused variable.
7349         (record_latest_value): Likewise.
7350         (access_value_history): Likewise.
7351         (preserve_values): Likewise.
7352
7353 2018-05-17  Tom Tromey  <[email protected]>
7354
7355         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7356         Initialize.
7357
7358 2018-05-16  Maciej W. Rozycki  <[email protected]>
7359
7360         PR gdb/22286
7361         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7362         Also handle registers whose width is not a multiple of
7363         PTRACE_TYPE_RET.
7364         (linux_nat_trad_target::store_register): Likewise.
7365
7366 2018-05-16  Tom Tromey  <[email protected]>
7367
7368         * gdbcore.h (core_bfd): Redefine.
7369         * corelow.c (core_target::close): Update.
7370         (core_target_open): Update.
7371         * progspace.h (struct program_space) <cbfd>: Now a
7372         gdb_bfd_ref_ptr.
7373
7374 2018-05-16  Tom Tromey  <[email protected]>
7375
7376         PR cli/19551:
7377         * symfile-add-flags.h (enum symfile_add_flags)
7378         <SYMFILE_NOT_FILENAME>: New constant.
7379         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7380         objfile name from BFD.
7381         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7382         * minidebug.c (find_separate_debug_file_in_section): Put
7383         ".gnu_debugdata" into BFD's file name.
7384
7385 2018-05-16  Simon Marchi  <[email protected]>
7386
7387         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7388         Remove.
7389
7390 2018-05-15  Tamar Christina  <[email protected]>
7391
7392         PR binutils/21446
7393         * aarch64-tdep.c (aarch64_analyze_prologue,
7394         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7395         Indicate not interested in errors.
7396
7397 2018-05-15  Maciej W. Rozycki  <[email protected]>
7398
7399         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7400         Supply the MIPS_ZERO_REGNUM register.
7401
7402 2018-05-15  Maciej W. Rozycki  <[email protected]>
7403
7404         * mips-tdep.c (mask_address_var): Make variable static.
7405
7406 2018-05-14  Tom Tromey  <[email protected]>
7407
7408         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7409
7410 2018-05-11  Andrew Burgess  <[email protected]>
7411
7412         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7413         FXSAVE_ADDR for the mxcsr register.
7414
7415 2018-05-11  Max Filippov  <[email protected]>
7416
7417         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7418
7419 2018-05-11  Pedro Alves  <[email protected]>
7420
7421         * corelow.c (core_target) <core_target>: No longer inline.
7422         Initialize m_core_gdbarch, m_core_vec and build the section table
7423         here.
7424         <~core_target>: New.
7425         <core_gdbarch, get_core_register_section>: New methods.
7426         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7427         factored out from ...
7428         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7429         (core_ops): Delete.
7430         (sniff_core_bfd): Add gdbarch parameter.
7431         (core_close): Delete, merged into ...
7432         (core_target::close): ... here.  Delete self.
7433         (core_close_cleanup): Delete.
7434         (core_target_open): Allocate a core_target on the heap.  Use a
7435         unique_ptr instead of a cleanup.  Bits moved into the core_target
7436         ctor.  Adjust to use core_target methods instead of globals.
7437         (get_core_register_section): Rename to ...
7438         (core_target::get_core_register_section): ... this and adjust.
7439         (struct get_core_registers_cb_data): New.
7440         (get_core_registers_cb): Use it.  Use bool.
7441         (core_target::fetch_registers, core_target::files_info)
7442         (core_target::xfer_partial, core_target::read_description)
7443         (core_target::pid_to, core_target::thread_name): Adjust to
7444         reference class fields instead of globals.
7445         * target.h (struct target_ops_deleter, target_ops_up): New.
7446
7447 2018-05-11  Pedro Alves  <[email protected]>
7448
7449         * corefile.c (core_file_command): Move to corelow.c.
7450         * corelow.c (the_core_target): Delete.
7451         (core_file_command): Moved from corefile.c.  Check exec_bfd
7452         instead of the_core_target.  Use target_detach instead of calling
7453         into the_core_target directly.
7454         (maybe_say_no_core_file_now): New.
7455         (core_target::detach): Use it.
7456         (_initialize_corelow): Remove references to the_core_target.
7457         * gdbcore.h (the_core_target): Delete.
7458
7459 2018-05-11  Tom Tromey  <[email protected]>
7460             Pedro Alves  <[email protected]>
7461
7462         * corefile.c (core_bfd): Remove.
7463         * gdbcore.h (core_bfd): Now a macro.
7464         * progspace.h (struct program_space) <cbfd>: New field.
7465
7466 2018-05-11  Tom Tromey  <[email protected]>
7467
7468         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7469         gdb::def_vector.
7470
7471 2018-05-10  Tom Tromey  <[email protected]>
7472
7473         * configure: Rebuild.
7474         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7475
7476 2018-05-10  Joel Brobecker  <[email protected]>
7477
7478         PR server/23158:
7479         * regformats/regdat.sh: Adjust script, following the addition
7480         of the new expedite_regs parameter to init_target_desc.
7481
7482 2018-05-10  Omair Javaid  <[email protected]>
7483     
7484         PR gdb/23127
7485         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7486         set_gdbarch_significant_addr_bit.
7487         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7488         set_gdbarch_significant_addr_bit.
7489         * utils.c (address_significant): Update to sign extend addr.
7490
7491 2018-05-09  Max Filippov  <[email protected]>
7492
7493         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7494         (xtensa_linux_init_abi): Limit tdep->num_regs by
7495         tdep->num_nopriv_regs.
7496         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7497         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7498         not initialized.
7499
7500 2018-05-08  Simon Marchi  <[email protected]>
7501
7502         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7503
7504 2018-05-08  Andrew Burgess  <[email protected]>
7505
7506         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7507         (I387_MXCSR_INIT_VAL): New constant.
7508         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7509         buffer if it was supplied by the inferior.
7510         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7511         (i387_xsave_get_clear_bv): New function.
7512         (i387_supply_xsave): Only read x87 control registers from the
7513         xsave buffer if the feature is enabled, and the state will have
7514         been written, otherwise, provide a suitable default.
7515         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7516         including x87 control registers.  Update control registers if they
7517         have changed from the default value, and mark features as enabled
7518         as required.
7519         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7520
7521 2018-05-08  Ulrich Weigand  <[email protected]>
7522
7523         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7524
7525 2018-05-07  Tom Tromey  <[email protected]>
7526
7527         * configure: Rebuild.
7528         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7529
7530 2018-05-07  Tom Tromey  <[email protected]>
7531
7532         PR tdep/20362:
7533         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7534         bit.  Use correct value for VDIV.
7535
7536 2018-05-04  Tom Tromey  <[email protected]>
7537
7538         * configure: Rebuild.
7539         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7540
7541 2018-05-04  Tom Tromey  <[email protected]>
7542
7543         * linux-record.c (record_linux_system_call) <case
7544         RECORD_SYS_RECVFROM>: Add "break".
7545
7546 2018-05-04  Tom Tromey  <[email protected]>
7547
7548         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7549         Add missing "break".
7550         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7551         Add missing "break".
7552
7553 2018-05-04  Tom Tromey  <[email protected]>
7554
7555         * rs6000-tdep.c (ppc_process_record_op4)
7556         (ppc_process_record_op63): Add fall-through comment.
7557
7558 2018-05-04  Tom Tromey  <[email protected]>
7559
7560         * i386-tdep.c (i386_process_record): Add fall-through comment.
7561
7562 2018-05-04  Tom Tromey  <[email protected]>
7563
7564         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7565         comment.
7566
7567 2018-05-04  Tom Tromey  <[email protected]>
7568
7569         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7570         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7571         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7572         comment.
7573         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7574         comment.
7575         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7576         comment.
7577
7578 2018-05-04  Tom Tromey  <[email protected]>
7579
7580         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7581
7582 2018-05-04  Tom Tromey  <[email protected]>
7583
7584         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7585         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7586         * symfile.c (section_is_mapped): Fix fall-through comment.
7587         * stabsread.c (define_symbol, read_member_functions): Fix
7588         fall-through comment.
7589         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7590         comment.
7591         * remote.c (remote_wait_as): Fix fall-through comment.
7592         * p-exp.y (yylex): Fix fall-through comment.
7593         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7594         comment.
7595         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7596         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7597         * jv-exp.y (yylex): Fix fall-through comment.
7598         * go-exp.y (lex_one_token): Fix fall-through comment.
7599         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7600         fall-through comment.
7601         * f-exp.y (yylex): Fix fall-through comment.
7602         * dwarf2read.c (process_die): Fix fall-through comments.
7603         * dbxread.c (process_one_symbol): Fix fall-through comment.
7604         * d-exp.y (lex_one_token): Fix fall-through comment.
7605         * cp-name-parser.y (yylex): Fix fall-through comment.
7606         * coffread.c (coff_symtab_read): Fix fall-through comment.
7607         * c-exp.y (lex_one_token): Fix fall-through comment.
7608         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7609         comment.
7610         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7611         comment.
7612
7613 2018-05-04  Tom Tromey  <[email protected]>
7614
7615         PR python/22730:
7616         * NEWS: Mention gdb.execute change.
7617         * gdbcmd.h (execute_control_command): Don't declare.
7618         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7619         execute_control_commands, execute_control_commands_to_string.
7620         * cli/cli-script.h (execute_control_commands)
7621         (execute_control_commands_to_string): Declare.
7622         (execute_control_command): Add from_tty parameter.
7623         * cli/cli-script.c (execute_control_commands)
7624         (execute_control_commands_to_string): New functions.
7625         (execute_user_command): Use execute_control_commands.
7626         (execute_control_command_1): Add "from_tty" parameter.  Update.
7627         (execute_control_command): Likewise.
7628
7629 2018-05-04  Tom Tromey  <[email protected]>
7630
7631         PR python/22731:
7632         * NEWS: Mention that breakpoint commands are writable.
7633         * python/py-breakpoint.c (bppy_set_commands): New function.
7634         (breakpoint_object_getset) <"commands">: Use it.
7635
7636 2018-05-04  Tom Tromey  <[email protected]>
7637
7638         * tracepoint.c (actions_command): Update.
7639         * mi/mi-cmd-break.c (mi_command_line_array)
7640         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7641         (mi_read_next_line): Remove.
7642         (mi_cmd_break_commands): Update.
7643         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7644         function_view.
7645         * cli/cli-script.c (get_command_line): Update.
7646         (process_next_line): Use function_view.  Constify.
7647         (recurse_read_control_structure, read_command_lines)
7648         (read_command_lines_1): Change argument types to function_view.
7649         (do_define_command, document_command): Update.
7650         * breakpoint.h (check_tracepoint_command): Don't declare.
7651         * breakpoint.c (check_tracepoint_command): Remove.
7652         (commands_command_1, create_tracepoint_from_upload): Update.
7653
7654 2018-05-04  Tom Tromey  <[email protected]>
7655
7656         PR gdb/11750:
7657         * cli/cli-script.h (enum command_control_type) <define_control>:
7658         New constant.
7659         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7660         (build_command_line, execute_control_command_1)
7661         (process_next_line): Likewise.
7662         (do_define_command): New function, extracted from define_command.
7663         (define_command): Use it.
7664
7665 2018-05-04  Tom Tromey  <[email protected]>
7666
7667         * tracepoint.c (actions_command): Update.
7668         * cli/cli-script.h (read_command_lines): Update.
7669         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7670         (MAX_TMPBUF): Remove define.
7671         (define_command): Use string_printf.
7672         (document_command): Likewise.
7673         * breakpoint.c (commands_command_1): Update.
7674
7675 2018-05-04  Tom Tromey  <[email protected]>
7676
7677         * top.c (execute_command): Update.
7678         * cli/cli-script.h (print_command_lines): Now varargs.
7679         * cli/cli-script.c (print_command_lines): Now varargs.
7680         (execute_control_command_1) <case while_control, case if_control>:
7681         Update.
7682
7683 2018-05-04  Tom Tromey  <[email protected]>
7684
7685         * tracepoint.c (all_tracepoint_actions): Rename from
7686         all_tracepoint_actions_and_cleanup.  Change return type.
7687         (actions_command, encode_actions_1, encode_actions)
7688         (trace_dump_actions, tdump_command): Update.
7689         * remote.c (remote_download_command_source): Update.
7690         * python/python.c (gdbpy_eval_from_control_command)
7691         (python_command, python_interactive_command): Update.
7692         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7693         * guile/guile.c (guile_command)
7694         (gdbscm_eval_from_control_command, guile_command): Update.
7695         * compile/compile.c (compile_code_command)
7696         (compile_print_command, compile_to_object): Update.
7697         * cli/cli-script.h (struct command_lines_deleter): New.
7698         (counted_command_line): New typedef.
7699         (struct command_line): Add constructor, destructor.
7700         <body_list>: Remove.
7701         <body_list_0, body_list_1>: New members.
7702         (command_line_up): Remove typedef.
7703         (read_command_lines, read_command_lines_1, get_command_line):
7704         Update.
7705         (copy_command_lines): Don't declare.
7706         * cli/cli-script.c (build_command_line): Use "new".
7707         (get_command_line): Return counted_command_line.
7708         (print_command_lines, execute_user_command)
7709         (execute_control_command_1, while_command, if_command): Update.
7710         (realloc_body_list): Remove.
7711         (process_next_line, recurse_read_control_structure): Update.
7712         (read_command_lines, read_command_lines_1): Return counted_command_line.
7713         (free_command_lines): Use "delete".
7714         (copy_command_lines): Remove.
7715         (define_command, document_command, show_user_1): Update.
7716         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7717         a counted_command_line.
7718         * breakpoint.h (counted_command_line): Remove typedef.
7719         (breakpoint_set_commands): Update.
7720         * breakpoint.c (check_no_tracepoint_commands)
7721         (validate_commands_for_breakpoint): Update.
7722         (breakpoint_set_commands): Change commands to be a
7723         counted_command_line.
7724         (commands_command_1, update_dprintf_command_list)
7725         (create_tracepoint_from_upload): Update.
7726
7727 2018-05-04  Tom Tromey  <[email protected]>
7728
7729         * cli/cli-decode.h (cmd_list_element): New constructor.
7730         (~cmd_list_element): New destructor.
7731         (struct cmd_list_element): Add initializers.
7732         * cli/cli-decode.c (do_add_cmd): Use "new".
7733         (delete_cmd): Use "delete".
7734
7735 2018-05-04  Jan Kratochvil  <[email protected]>
7736             Pedro Alves <[email protected]>
7737
7738         PR breakpoints/19806 and support for PR external/20207.
7739         * NEWS: Mention Aarch64 watchpoint improvements.
7740         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7741         watchpoints and PR external/20207 watchpoints.
7742         * nat/aarch64-linux-hw-point.c
7743         (kernel_supports_any_contiguous_range): New.
7744         (aarch64_watchpoint_offset): New.
7745         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7746         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7747         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7748         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7749         next_addr_orig_p.  Support PR external/20207 watchpoints.
7750         (aarch64_downgrade_regs): New.
7751         (aarch64_dr_state_insert_one_point): New parameters offset and
7752         addr_orig.
7753         (aarch64_dr_state_remove_one_point): Likewise.
7754         (aarch64_handle_breakpoint): Update caller.
7755         (aarch64_handle_aligned_watchpoint): Likewise.
7756         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7757         aligned_offset.
7758         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7759         aarch64_downgrade_regs.
7760         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7761         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7762         (DR_CONTROL_MASK): ... this.
7763         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7764         (unsigned int aarch64_watchpoint_offset): New prototype.
7765         (aarch64_linux_set_debug_regs): Remove const from state.
7766         * utils.c (align_up, align_down): Move to ...
7767         * common/common-utils.c (align_up, align_down): ... here.
7768         * utils.h (align_up, align_down): Move to ...
7769         * common/common-utils.h (align_up, align_down): ... here.
7770
7771 2018-05-04  Joel Brobecker  <[email protected]>
7772
7773         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7774         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7775         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7776         Re-implement to match the ABI as summarized in GCC's
7777         gcc/config/sparc/sparc.c.  All callers updated.
7778         (sparc32_store_arguments): Remove assertion.
7779
7780 2018-05-04  Tom Tromey  <[email protected]>
7781
7782         * printcmd.c: Don't include tui.h.
7783         (decode_format): Use skip_spaces.
7784
7785 2018-05-04  Tom Tromey  <[email protected]>
7786
7787         PR gdb/22619:
7788         * printcmd.c (last_count): New global.
7789         (x_command): Use saved count when repeating.
7790
7791 2018-05-04  Tom Tromey  <[email protected]>
7792
7793         * nto-procfs.c (do_closedir_cleanup): Remove.
7794         (procfs_pidlist): Use gdb_dir_up.
7795         * procfs.c (do_closedir_cleanup): Remove.
7796         (proc_update_threads): Use gdb_dir_up.
7797         * common/filestuff.h (struct gdb_dir_deleter): New.
7798         (gdb_dir_up): New typedef.
7799
7800 2018-05-04  Tom Tromey  <[email protected]>
7801
7802         * ada-lang.c (print_mention_exception): Use std::string.
7803
7804 2018-05-04  Tom Tromey  <[email protected]>
7805
7806         * ada-lang.c (create_excep_cond_exprs): Update.
7807         (ada_exception_catchpoint_cond_string): Use std::string.
7808
7809 2018-05-04  Tom Tromey  <[email protected]>
7810
7811         * ada-lang.c (xget_renaming_scope): Return std::string.
7812         (old_renaming_is_invisible): Update.
7813
7814 2018-05-04  Tom Tromey  <[email protected]>
7815
7816         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7817         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7818
7819 2018-05-04  Ulrich Weigand  <[email protected]>
7820
7821         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7822
7823 2018-05-04  Tom Tromey  <[email protected]>
7824
7825         * remote.c (remote_query_supported_append): Change type.
7826         (remote_check_symbols): Update.
7827
7828 2018-05-04  Paul Pluzhnikov  <[email protected]>
7829
7830         PR gdb/11420
7831         * configure.ac: Prepend libpython.
7832         * python/python-config.py: Likewise.
7833         * configure: Regenerate.
7834
7835 2018-05-03  Simon Marchi  <[email protected]>
7836
7837         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7838
7839 2018-05-03  Pedro Alves  <[email protected]>
7840
7841         * s390-linux-nat.c
7842         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7843         override.  Write 'true' instead of '1'.
7844         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7845         declaration.
7846
7847 2018-05-02  Pedro Alves  <[email protected]>
7848
7849         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7850         add_inf_child_target.
7851         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7852         add_inf_child_target.
7853         * aix-thread.c (aix_thread_target_info): New.
7854         (aix_thread_target) <shortname, longname, doc>: Delete.
7855         <info>: New.
7856         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7857         add_inf_child_target.
7858         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7859         add_inf_child_target.
7860         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7861         add_inf_child_target.
7862         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7863         add_inf_child_target.
7864         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7865         add_inf_child_target.
7866         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7867         add_inf_child_target.
7868         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7869         add_inf_child_target.
7870         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7871         add_inf_child_target.
7872         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7873         add_inf_child_target.
7874         * bfd-target.c (target_bfd_target_info): New.
7875         (target_bfd) <shortname, longname, doc>: Delete.
7876         <info>: New.
7877         * bsd-kvm.c (bsd_kvm_target_info): New.
7878         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7879         <info>: New.
7880         (bsd_kvm_target::open): Rename to ...
7881         (bsd_kvm_target_open): ... this.  Adjust.
7882         * bsd-uthread.c (bsd_uthread_target_info): New.
7883         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7884         <info>: New.
7885         * corefile.c (core_file_command): Adjust.
7886         * corelow.c (core_target_info): New.
7887         (core_target) <shortname, longname, doc>: Delete.
7888         <info>: New.
7889         (core_target::open): Rename to ...
7890         (core_target_open): ... this.  Adjust.
7891         * ctf.c (ctf_target_info): New.
7892         (ctf_target) <shortname, longname, doc>: Delete.
7893         <info>: New.
7894         (ctf_target::open): Rename to ...
7895         (ctf_target_open): ... this.
7896         (_initialize_ctf): Adjust.
7897         * exec.c (exec_target_info): New.
7898         (exec_target) <shortname, longname, doc>: Delete.
7899         <info>: New.
7900         (exec_target::open): Rename to ...
7901         (exec_target_open): ... this.
7902         * gdbcore.h (core_target_open): Declare.
7903         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7904         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7905         add_inf_child_target.
7906         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7907         add_inf_child_target.
7908         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7909         add_inf_child_target.
7910         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7911         add_inf_child_target.
7912         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7913         add_inf_child_target.
7914         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7915         add_inf_child_target.
7916         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7917         add_inf_child_target.
7918         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7919         add_inf_child_target.
7920         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7921         add_inf_child_target.
7922         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7923         add_inf_child_target.
7924         * inf-child.c (inf_child_target_info): New.
7925         (inf_child_target::info): New.
7926         (inf_child_open_target): Remove 'target' parameter.  Use
7927         get_native_target instead.
7928         (inf_child_target::open): Delete.
7929         (add_inf_child_target): New.
7930         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7931         Delete.
7932         <info>: New.
7933         (add_inf_child_target): Declare.
7934         (inf_child_open_target): Declare.
7935         * linux-thread-db.c (thread_db_target_info): New.
7936         (thread_db_target) <shortname, longname, doc>: Delete.
7937         <info>: New.
7938         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7939         add_inf_child_target.
7940         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7941         add_inf_child_target.
7942         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7943         add_inf_child_target.
7944         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7945         add_inf_child_target.
7946         * make-target-delegates (print_class): Adjust.
7947         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7948         add_inf_child_target.
7949         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7950         add_inf_child_target.
7951         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7952         add_inf_child_target.
7953         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7954         add_inf_child_target.
7955         * nto-procfs.c (nto_native_target_info): New.
7956         (nto_procfs_target_native) <shortname, longname, doc>:
7957         Delete.
7958         <info>: New.
7959         (nto_procfs_target_info): New.
7960         (nto_procfs_target_procfs) <shortname, longname, doc>:
7961         Delete.
7962         <info>: New.
7963         (init_procfs_targets): Adjust.
7964         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7965         add_inf_child_target.
7966         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7967         add_inf_child_target.
7968         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7969         add_inf_child_target.
7970         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7971         add_inf_child_target.
7972         * ravenscar-thread.c (ravenscar_target_info): New.
7973         (ravenscar_thread_target) <shortname, longname, doc>:
7974         Delete.
7975         <info>: New.
7976         * record-btrace.c (record_btrace_target_info):
7977         (record_btrace_target) <shortname, longname, doc>: Delete.
7978         <info>: New.
7979         (record_btrace_target::open): Rename to ...
7980         (record_btrace_target_open): ... this.  Adjust.
7981         * record-full.c (record_longname, record_doc): New.
7982         (record_full_base_target) <shortname, longname, doc>: Delete.
7983         <info>: New.
7984         (record_full_target_info): New.
7985         (record_full_target): <shortname>: Delete.
7986         <info>: New.
7987         (record_full_core_open_1, record_full_open_1): Update comments.
7988         (record_full_base_target::open): Rename to ...
7989         (record_full_open): ... this.
7990         (cmd_record_full_restore): Update.
7991         (_initialize_record_full): Update.
7992         * remote-sim.c (remote_sim_target_info): New.
7993         (gdbsim_target) <shortname, longname, doc>: Delete.
7994         <info>: New.
7995         (gdbsim_target::open): Rename to ...
7996         (gdbsim_target_open): ... this.
7997         (_initialize_remote_sim): Adjust.
7998         * remote.c (remote_doc): New.
7999         (remote_target_info): New.
8000         (remote_target) <shortname, longname, doc>: Delete.
8001         <info>: New.
8002         (extended_remote_target_info): New.
8003         (extended_remote_target) <shortname, longname, doc>: Delete.
8004         <info>: New.
8005         (remote_target::open_1): Make static.  Adjust.
8006         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8007         * s390-linux-nat.c (_initialize_s390_nat): Use
8008         add_inf_child_target.
8009         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8010         add_inf_child_target.
8011         * sol-thread.c (thread_db_target_info): New.
8012         (sol_thread_target) <shortname, longname, doc>: Delete.
8013         <info>: New.
8014         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8015         add_inf_child_target.
8016         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8017         add_inf_child_target.
8018         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8019         add_inf_child_target.
8020         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8021         add_inf_child_target.
8022         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8023         add_inf_child_target.
8024         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8025         add_inf_child_target.
8026         * spu-linux-nat.c (_initialize_spu_nat): Use
8027         add_inf_child_target.
8028         * spu-multiarch.c (spu_multiarch_target_info): New.
8029         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8030         <info>: New.
8031         * target-delegates.c: Regenerate.
8032         * target.c: Include <unordered_map>.
8033         (target_ops_p): Delete.
8034         (DEF_VEC_P(target_ops_p)): Delete.
8035         (target_factories): New.
8036         (test_target_info): New.
8037         (test_target_ops::info): New.
8038         (open_target): Adjust to use target_factories.
8039         (add_target_with_completer): Rename to ...
8040         (add_target): ... this.  Change prototype.  Register target_info
8041         and open callback in target_factories.  Register target_info in
8042         command context instead of target_ops.
8043         (add_target): Delete old implementation.
8044         (add_deprecated_target_alias): Change prototype.  Adjust.
8045         (the_native_target): New.
8046         (set_native_target, get_native_target): New.
8047         (find_default_run_target): Use the_native_target.
8048         (find_attach_target, find_run_target): Simplify.
8049         (target_ops::open): Delete.
8050         (dummy_target_info): New.
8051         (dummy_target::shortname, dummy_target::longname)
8052         (dummy_target::doc): Delete.
8053         (dummy_target::info): New.
8054         (debug_target::shortname, debug_target::longname)
8055         (debug_target::doc): Delete.
8056         (debug_target::info): New.
8057         * target.h (struct target_info): New.
8058         (target_ops::~target_ops): Add comment.
8059         (target_ops::info): New.
8060         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8061         longer virtual.  Implement in terms of target_info.
8062         (set_native_target, get_native_target): Declare.
8063         (target_open_ftype): New.
8064         (add_target, add_target_with_completer)
8065         (add_deprecated_target_alias): Change prototype.
8066         (test_target) <shortname, longname, doc>: Delete.
8067         <info>: New.
8068         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8069         add_inf_child_target.
8070         * tracefile-tfile.c (tfile_target_info): New.
8071         (tfile_target) <shortname, longname, doc>: Delete.
8072         <info>: New.
8073         (tfile_target::open): Rename to ...
8074         (tfile_target_open): ... this.
8075         (_initialize_tracefile_tfile): Adjust.
8076         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8077         add_inf_child_target.
8078         * windows-nat.c (_initialize_windows_nat): Use
8079         add_inf_child_target.
8080         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8081         add_inf_child_target.
8082
8083 2018-05-02  Pedro Alves  <[email protected]>
8084
8085         * linux-nat.h (linux_nat_target) <low_new_thread,
8086         low_delete_thread, low_new_fork, low_forget_process,
8087         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8088         New virtual methods.
8089         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8090         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8091         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8092         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8093         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8094         Delete.
8095         * linux-fork.c (delete_fork): Adjust to call low method.
8096         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8097         (linux_nat_new_fork, linux_nat_forget_process_hook)
8098         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8099         (linux_nat_status_is_event):
8100         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8101         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8102         to call low method.
8103         (sigtrap_is_event): Rename to ...
8104         (linux_nat_target::low_status_is_event): ... this.
8105         (linux_nat_set_status_is_event): Delete.
8106         (save_stop_reason, linux_nat_wait_1)
8107         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8108         low methods.
8109         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8110         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8111         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8112         (linux_nat_set_prepare_to_resume): Delete.
8113         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8114         low virtual methods.
8115         * amd64-linux-nat.c: Likewise.
8116         * arm-linux-nat.c: Likewise.
8117         * i386-linux-nat.c: Likewise.
8118         * ia64-linux-nat.c: Likewise.
8119         * mips-linux-nat.c: Likewise.
8120         * ppc-linux-nat.c: Likewise.
8121         * s390-linux-nat.c: Likewise.
8122         * sparc64-linux-nat.c: Likewise.
8123         * x86-linux-nat.c: Likewise.
8124         * x86-linux-nat.h: Include "nat/x86-linux.h".
8125         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8126         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8127         Override methods.
8128
8129 2018-05-02  Pedro Alves  <[email protected]>
8130
8131         * target.h (target_ops)
8132         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8133         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8134         stopped_by_watchpoint, have_continuable_watchpoint,
8135         stopped_data_address, watchpoint_addr_within_range,
8136         can_accel_watchpoint_condition, can_run, thread_alive,
8137         has_all_memory, has_memory, has_stack, has_registers,
8138         has_execution, can_async_p, is_async_p, supports_non_stop,
8139         always_non_stop_p, can_execute_reverse, supports_multi_process,
8140         supports_enable_disable_tracepoint,
8141         supports_disable_randomization, supports_string_tracing,
8142         supports_evaluation_of_breakpoint_conditions,
8143         can_run_breakpoint_commands, filesystem_is_local,
8144         can_download_tracepoint, get_trace_state_variable_value,
8145         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8146         record_is_replaying, record_will_replay,
8147         augmented_libraries_svr4_read>: Adjust to return bool.
8148         * aarch64-linux-nat.c: All implementations adjusted.
8149         * aix-thread.c: All implementations adjusted.
8150         * arm-linux-nat.c: All implementations adjusted.
8151         * breakpoint.c: All implementations adjusted.
8152         * bsd-kvm.c: All implementations adjusted.
8153         * bsd-uthread.c: All implementations adjusted.
8154         * corelow.c: All implementations adjusted.
8155         * ctf.c: All implementations adjusted.
8156         * darwin-nat.c: All implementations adjusted.
8157         * darwin-nat.h: All implementations adjusted.
8158         * exec.c: All implementations adjusted.
8159         * fbsd-nat.c: All implementations adjusted.
8160         * fbsd-nat.h: All implementations adjusted.
8161         * gnu-nat.c: All implementations adjusted.
8162         * gnu-nat.h: All implementations adjusted.
8163         * go32-nat.c: All implementations adjusted.
8164         * ia64-linux-nat.c: All implementations adjusted.
8165         * inf-child.c: All implementations adjusted.
8166         * inf-child.h: All implementations adjusted.
8167         * inf-ptrace.c: All implementations adjusted.
8168         * inf-ptrace.h: All implementations adjusted.
8169         * linux-nat.c: All implementations adjusted.
8170         * linux-nat.h: All implementations adjusted.
8171         * mips-linux-nat.c: All implementations adjusted.
8172         * nto-procfs.c: All implementations adjusted.
8173         * ppc-linux-nat.c: All implementations adjusted.
8174         * procfs.c: All implementations adjusted.
8175         * ravenscar-thread.c: All implementations adjusted.
8176         * record-btrace.c: All implementations adjusted.
8177         * record-full.c: All implementations adjusted.
8178         * remote-sim.c: All implementations adjusted.
8179         * remote.c: All implementations adjusted.
8180         * s390-linux-nat.c: All implementations adjusted.
8181         * sol-thread.c: All implementations adjusted.
8182         * spu-multiarch.c: All implementations adjusted.
8183         * target-delegates.c: All implementations adjusted.
8184         * target.c: All implementations adjusted.
8185         * target.h: All implementations adjusted.
8186         * tracefile-tfile.c: All implementations adjusted.
8187         * tracefile.c: All implementations adjusted.
8188         * tracefile.h: All implementations adjusted.
8189         * windows-nat.c: All implementations adjusted.
8190         * x86-linux-nat.h: All implementations adjusted.
8191         * x86-nat.h: All implementations adjusted.
8192
8193 2018-05-02  Pedro Alves  <[email protected]>
8194
8195         * make-target-delegates (scan_target_h): Don't trim lines here.
8196         Replace sequences of tabs and/or whitespace with a single
8197         whitespace.
8198         (top level, parsing methods): Trim each line before processing it
8199         here.
8200
8201 2018-05-02  Pedro Alves  <[email protected]>
8202             John Baldwin  <[email protected]>
8203
8204         * target.h (enum strata) <debug_stratum>: New.
8205         (struct target_ops) <all delegation methods>: Replace by C++
8206         virtual methods, and drop "to_" prefix.  All references updated
8207         throughout.
8208         <to_shortname, to_longname, to_doc, to_data,
8209         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8210         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8211         virtual methods.  All references updated throughout.
8212         <can_attach, supports_terminal_ours, can_create_inferior,
8213         get_thread_control_capabilities, attach_no_wait>: New
8214         virtual methods.
8215         <insert_breakpoint, remove_breakpoint>: Now
8216         TARGET_DEFAULT_NORETURN methods.
8217         <info_proc>: Now returns bool.
8218         <to_magic>: Delete.
8219         (OPS_MAGIC): Delete.
8220         (current_target): Delete.  All references replaced by references
8221         to ...
8222         (target_stack): ... this.  New.
8223         (target_shortname, target_longname): Adjust.
8224         (target_can_run): Now a function declaration.
8225         (default_child_has_all_memory, default_child_has_memory)
8226         (default_child_has_stack, default_child_has_registers)
8227         (default_child_has_execution): Remove target_ops parameter.
8228         (complete_target_initialization): Delete.
8229         (memory_breakpoint_target): New template class.
8230         (test_target_ops): Refactor as a C++ class with virtual methods.
8231         * make-target-delegates (NAME_PART): Tighten.
8232         (POINTER_PART, CP_SYMBOL): New.
8233         (SIMPLE_RETURN_PART): Reimplement.
8234         (VEC_RETURN_PART): Expect less.
8235         (RETURN_PART, VIRTUAL_PART): New.
8236         (METHOD): Adjust to C++ virtual methods.
8237         (scan_target_h): Remove reference to C99.
8238         (dname): Output "target_ops::" prefix.
8239         (write_function_header): Adjust to output a C++ class method.
8240         (write_declaration): New.
8241         (write_delegator): Adjust to output a C++ class method.
8242         (tdname): Output "dummy_target::" prefix.
8243         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8244         method.
8245         (tdefault_names, debug_names): Delete.
8246         (return_types, tdefaults, styles, argtypes_array): New.
8247         (top level): All methods are delegators.
8248         (print_class): New.
8249         (top level): Print dummy_target and debug_target classes.
8250         * target-delegates.c: Regenerate.
8251         * target-debug.h (target_debug_print_enum_info_proc_what)
8252         (target_debug_print_thread_control_capabilities)
8253         (target_debug_print_thread_info_p): New.
8254         * target.c (dummy_target): Delete.
8255         (the_dummy_target, the_debug_target): New.
8256         (target_stack): Now extern.
8257         (set_targetdebug): Push/unpush debug target.
8258         (default_child_has_all_memory, default_child_has_memory)
8259         (default_child_has_stack, default_child_has_registers)
8260         (default_child_has_execution): Remove target_ops parameter.
8261         (complete_target_initialization): Delete.
8262         (add_target_with_completer): No longer call
8263         complete_target_initialization.
8264         (target_supports_terminal_ours): Use regular delegation.
8265         (update_current_target): Delete.
8266         (push_target): No longer check magic number.  Don't call
8267         update_current_target.
8268         (unpush_target): Don't call update_current_target.
8269         (target_is_pushed): No longer check magic number.
8270         (target_require_runnable): Skip for all stratums over
8271         process_stratum.
8272         (target_ops::info_proc): New.
8273         (target_info_proc): Use find_target_at and
8274         find_default_run_target.
8275         (target_supports_disable_randomization): Use regular delegation.
8276         (target_get_osdata): Use find_target_at.
8277         (target_ops::open, target_ops::close, target_ops::can_attach)
8278         (target_ops::attach, target_ops::can_create_inferior)
8279         (target_ops::create_inferior, target_ops::can_run)
8280         (target_can_run): New.
8281         (default_fileio_target): Use regular delegation.
8282         (target_ops::fileio_open, target_ops::fileio_pwrite)
8283         (target_ops::fileio_pread, target_ops::fileio_fstat)
8284         (target_ops::fileio_close, target_ops::fileio_unlink)
8285         (target_ops::fileio_readlink): New.
8286         (target_fileio_open_1, target_fileio_unlink)
8287         (target_fileio_readlink): Always call the target method.  Handle
8288         FILEIO_ENOSYS.
8289         (return_zero, return_zero_has_execution): Delete.
8290         (init_dummy_target): Delete.
8291         (dummy_target::dummy_target, dummy_target::shortname)
8292         (dummy_target::longname, dummy_target::doc)
8293         (debug_target::debug_target, debug_target::shortname)
8294         (debug_target::longname, debug_target::doc): New.
8295         (target_supports_delete_record): Use regular delegation.
8296         (setup_target_debug): Delete.
8297         (maintenance_print_target_stack): Skip debug_stratum.
8298         (initialize_targets): Instantiate the_dummy_target and
8299         the_debug_target.
8300         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8301         use target_stack.
8302         (target_auxv_search, fprint_target_auxv): Adjust.
8303         (info_auxv_command): Adjust to use target_stack.
8304         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8305         * exceptions.c (print_flush): Handle a NULL target_stack.
8306         * regcache.c (target_ops_no_register): Refactor as class with
8307         virtual methods.
8308
8309         * exec.c (exec_target): New class.
8310         (exec_ops): Now an exec_target.
8311         (exec_open, exec_close_1, exec_get_section_table)
8312         (exec_xfer_partial, exec_files_info, exec_has_memory)
8313         (exec_make_note_section): Refactor as exec_target methods.
8314         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8315         Delete.
8316         (exec_target::find_memory_regions): New.
8317         (_initialize_exec): Don't call init_exec_ops.
8318         * gdbcore.h (exec_file_clear): Delete.
8319
8320         * corefile.c (core_target): Delete.
8321         (core_file_command): Adjust.
8322         * corelow.c (core_target): New class.
8323         (the_core_target): New.
8324         (core_close): Remove target_ops parameter.
8325         (core_close_cleanup): Adjust.
8326         (core_target::close): New.
8327         (core_open, core_detach, get_core_registers, core_files_info)
8328         (core_xfer_partial, core_thread_alive, core_read_description)
8329         (core_pid_to_str, core_thread_name, core_has_memory)
8330         (core_has_stack, core_has_registers, core_info_proc): Rework as
8331         core_target methods.
8332         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8333         (_initialize_corelow): Initialize the_core_target.
8334         * gdbcore.h (core_target): Delete.
8335         (the_core_target): New.
8336
8337         * ctf.c: (ctf_target): New class.
8338         (ctf_ops): Now a ctf_target.
8339         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8340         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8341         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8342         methods.
8343         (init_ctf_ops): Delete.
8344         (_initialize_ctf): Don't call it.
8345         * tracefile-tfile.c (tfile_target): New class.
8346         (tfile_ops): Now a tfile_target.
8347         (tfile_open, tfile_close, tfile_files_info)
8348         (tfile_get_tracepoint_status, tfile_trace_find)
8349         (tfile_fetch_registers, tfile_xfer_partial)
8350         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8351         Refactor as tfile_target methods.
8352         (tfile_xfer_partial_features): Remove target_ops parameter.
8353         (init_tfile_ops): Delete.
8354         (_initialize_tracefile_tfile): Don't call it.
8355         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8356         (tracefile_has_stack, tracefile_has_registers)
8357         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8358         tracefile_target methods.
8359         (init_tracefile_ops): Delete.
8360         (tracefile_target::tracefile_target): New.
8361         * tracefile.h: Include "target.h".
8362         (tracefile_target): New class.
8363         (init_tracefile_ops): Delete.
8364
8365         * spu-multiarch.c (spu_multiarch_target): New class.
8366         (spu_ops): Now a spu_multiarch_target.
8367         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8368         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8369         (spu_search_memory, spu_mourn_inferior): Refactor as
8370         spu_multiarch_target methods.
8371         (init_spu_ops): Delete.
8372         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8373         complete_target_initialization.
8374
8375         * ravenscar-thread.c (ravenscar_thread_target): New class.
8376         (ravenscar_ops): Now a ravenscar_thread_target.
8377         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8378         (ravenscar_thread_alive, ravenscar_pid_to_str)
8379         (ravenscar_fetch_registers, ravenscar_store_registers)
8380         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8381         (ravenscar_stopped_by_hw_breakpoint)
8382         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8383         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8384         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8385         methods.
8386         (init_ravenscar_thread_ops): Delete.
8387         (_initialize_ravenscar): Remove references to
8388         init_ravenscar_thread_ops and complete_target_initialization.
8389
8390         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8391         (bsd_uthread_target): New class.
8392         (bsd_uthread_ops): Now a bsd_uthread_target.
8393         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8394         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8395         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8396         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8397         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8398         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8399         (bsd_uthread_target): Delete function.
8400         (_initialize_bsd_uthread): Remove reference to
8401         complete_target_initialization.
8402
8403         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8404         (target_bfd): ... this new class.
8405         (target_bfd_xfer_partial, target_bfd_get_section_table)
8406         (target_bfd_close): Refactor as target_bfd methods.
8407         (target_bfd::~target_bfd): New.
8408         (target_bfd_reopen): Adjust.
8409         (target_bfd::close): New.
8410
8411         * record-btrace.c (record_btrace_target): New class.
8412         (record_btrace_ops): Now a record_btrace_target.
8413         (record_btrace_open, record_btrace_stop_recording)
8414         (record_btrace_disconnect, record_btrace_close)
8415         (record_btrace_async, record_btrace_info)
8416         (record_btrace_insn_history, record_btrace_insn_history_range)
8417         (record_btrace_insn_history_from, record_btrace_call_history)
8418         (record_btrace_call_history_range)
8419         (record_btrace_call_history_from, record_btrace_record_method)
8420         (record_btrace_is_replaying, record_btrace_will_replay)
8421         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8422         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8423         (record_btrace_store_registers, record_btrace_prepare_to_store)
8424         (record_btrace_to_get_unwinder)
8425         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8426         (record_btrace_commit_resume, record_btrace_wait)
8427         (record_btrace_stop, record_btrace_can_execute_reverse)
8428         (record_btrace_stopped_by_sw_breakpoint)
8429         (record_btrace_supports_stopped_by_sw_breakpoint)
8430         (record_btrace_stopped_by_hw_breakpoint)
8431         (record_btrace_supports_stopped_by_hw_breakpoint)
8432         (record_btrace_update_thread_list, record_btrace_thread_alive)
8433         (record_btrace_goto_begin, record_btrace_goto_end)
8434         (record_btrace_goto, record_btrace_stop_replaying_all)
8435         (record_btrace_execution_direction)
8436         (record_btrace_prepare_to_generate_core)
8437         (record_btrace_done_generating_core): Refactor as
8438         record_btrace_target methods.
8439         (init_record_btrace_ops): Delete.
8440         (_initialize_record_btrace): Remove reference to
8441         init_record_btrace_ops.
8442         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8443         the execution_direction global.
8444         (record_full_base_target, record_full_target)
8445         (record_full_core_target): New classes.
8446         (record_full_ops): Now a record_full_target.
8447         (record_full_core_ops): Now a record_full_core_target.
8448         (record_full_target::detach, record_full_target::disconnect)
8449         (record_full_core_target::disconnect)
8450         (record_full_target::mourn_inferior, record_full_target::kill):
8451         New.
8452         (record_full_open, record_full_close, record_full_async): Refactor
8453         as methods of the record_full_base_target class.
8454         (record_full_resume, record_full_commit_resume): Refactor
8455         as methods of the record_full_target class.
8456         (record_full_wait, record_full_stopped_by_watchpoint)
8457         (record_full_stopped_data_address)
8458         (record_full_stopped_by_sw_breakpoint)
8459         (record_full_supports_stopped_by_sw_breakpoint)
8460         (record_full_stopped_by_hw_breakpoint)
8461         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8462         methods of the record_full_base_target class.
8463         (record_full_store_registers, record_full_xfer_partial)
8464         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8465         Refactor as methods of the record_full_target class.
8466         (record_full_can_execute_reverse, record_full_get_bookmark)
8467         (record_full_goto_bookmark, record_full_execution_direction)
8468         (record_full_record_method, record_full_info, record_full_delete)
8469         (record_full_is_replaying, record_full_will_replay)
8470         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8471         (record_full_stop_replaying): Refactor as methods of the
8472         record_full_base_target class.
8473         (record_full_core_resume, record_full_core_kill)
8474         (record_full_core_fetch_registers)
8475         (record_full_core_prepare_to_store)
8476         (record_full_core_store_registers, record_full_core_xfer_partial)
8477         (record_full_core_insert_breakpoint)
8478         (record_full_core_remove_breakpoint)
8479         (record_full_core_has_execution): Refactor
8480         as methods of the record_full_core_target class.
8481         (record_full_base_target::supports_delete_record): New.
8482         (init_record_full_ops): Delete.
8483         (init_record_full_core_ops): Delete.
8484         (record_full_save): Refactor as method of the
8485         record_full_base_target class.
8486         (_initialize_record_full): Remove references to
8487         init_record_full_ops and init_record_full_core_ops.
8488
8489         * remote.c (remote_target, extended_remote_target): New classes.
8490         (remote_ops): Now a remote_target.
8491         (extended_remote_ops): Now an extended_remote_target.
8492         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8493         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8494         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8495         (remote_pass_signals, remote_set_syscall_catchpoint)
8496         (remote_program_signals, )
8497         (remote_thread_always_alive): Remove target_ops parameter.
8498         (remote_thread_alive, remote_thread_name)
8499         (remote_update_thread_list, remote_threads_extra_info)
8500         (remote_static_tracepoint_marker_at)
8501         (remote_static_tracepoint_markers_by_strid)
8502         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8503         (remote_open): Refactor as methods of remote_target.
8504         (extended_remote_open, extended_remote_detach)
8505         (extended_remote_attach, extended_remote_post_attach):
8506         (extended_remote_supports_disable_randomization)
8507         (extended_remote_create_inferior): : Refactor as method of
8508         extended_remote_target.
8509         (remote_set_permissions, remote_open_1, remote_detach)
8510         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8511         (remote_resume, remote_commit_resume, remote_stop)
8512         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8513         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8514         (remote_prepare_to_store, remote_store_registers)
8515         (remote_flash_erase, remote_flash_done, remote_files_info)
8516         (remote_kill, remote_mourn, remote_insert_breakpoint)
8517         (remote_remove_breakpoint, remote_insert_watchpoint)
8518         (remote_watchpoint_addr_within_range)
8519         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8520         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8521         (remote_supports_stopped_by_sw_breakpoint)
8522         (remote_stopped_by_hw_breakpoint)
8523         (remote_supports_stopped_by_hw_breakpoint)
8524         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8525         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8526         (remote_verify_memory): Refactor as methods of remote_target.
8527         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8528         parameter.
8529         (remote_xfer_partial, remote_get_memory_xfer_limit)
8530         (remote_search_memory, remote_rcmd, remote_memory_map)
8531         (remote_pid_to_str, remote_get_thread_local_address)
8532         (remote_get_tib_address, remote_read_description): Refactor as
8533         methods of remote_target.
8534         (remote_target::fileio_open, remote_target::fileio_pwrite)
8535         (remote_target::fileio_pread, remote_target::fileio_close): New.
8536         (remote_hostio_readlink, remote_hostio_fstat)
8537         (remote_filesystem_is_local, remote_can_execute_reverse)
8538         (remote_supports_non_stop, remote_supports_disable_randomization)
8539         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8540         (remote_supports_enable_disable_tracepoint)
8541         (remote_supports_string_tracing)
8542         (remote_can_run_breakpoint_commands, remote_trace_init)
8543         (remote_download_tracepoint, remote_can_download_tracepoint)
8544         (remote_download_trace_state_variable, remote_enable_tracepoint)
8545         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8546         (remote_trace_start, remote_get_trace_status)
8547         (remote_get_tracepoint_status, remote_trace_stop)
8548         (remote_trace_find, remote_get_trace_state_variable_value)
8549         (remote_save_trace_data, remote_get_raw_trace_data)
8550         (remote_set_disconnected_tracing, remote_core_of_thread)
8551         (remote_set_circular_trace_buffer, remote_traceframe_info)
8552         (remote_get_min_fast_tracepoint_insn_len)
8553         (remote_set_trace_buffer_size, remote_set_trace_notes)
8554         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8555         (remote_disable_btrace, remote_teardown_btrace)
8556         (remote_read_btrace, remote_btrace_conf)
8557         (remote_augmented_libraries_svr4_read, remote_load)
8558         (remote_pid_to_exec_file, remote_can_do_single_step)
8559         (remote_execution_direction, remote_thread_handle_to_thread_info):
8560         Refactor as methods of remote_target.
8561         (init_remote_ops, init_extended_remote_ops): Delete.
8562         (remote_can_async_p, remote_is_async_p, remote_async)
8563         (remote_thread_events, remote_upload_tracepoints)
8564         (remote_upload_trace_state_variables): Refactor as methods of
8565         remote_target.
8566         (_initialize_remote): Remove references to init_remote_ops and
8567         init_extended_remote_ops.
8568
8569         * remote-sim.c (gdbsim_target): New class.
8570         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8571         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8572         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8573         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8574         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8575         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8576         Refactor as methods of gdbsim_target.
8577         (gdbsim_ops): Now a gdbsim_target.
8578         (init_gdbsim_ops): Delete.
8579         (gdbsim_cntrl_c): Adjust.
8580         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8581
8582         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8583         (the_amd64_linux_nat_target): New.
8584         (amd64_linux_fetch_inferior_registers)
8585         (amd64_linux_store_inferior_registers): Refactor as methods of
8586         amd64_linux_nat_target.
8587         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8588         * i386-linux-nat.c: Don't include "linux-nat.h".
8589         (i386_linux_nat_target): New class.
8590         (the_i386_linux_nat_target): New.
8591         (i386_linux_fetch_inferior_registers)
8592         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8593         as methods of i386_linux_nat_target.
8594         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8595         * inf-child.c (inf_child_ops): Delete.
8596         (inf_child_fetch_inferior_registers)
8597         (inf_child_store_inferior_registers): Delete.
8598         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8599         methods of inf_child_target.
8600         (inf_child_target::supports_terminal_ours)
8601         (inf_child_target::terminal_init)
8602         (inf_child_target::terminal_inferior)
8603         (inf_child_target::terminal_ours_for_output)
8604         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8605         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8606         New.
8607         (inf_child_open, inf_child_disconnect, inf_child_close)
8608         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8609         (inf_child_post_startup_inferior, inf_child_can_run)
8610         (inf_child_pid_to_exec_file): Refactor as methods of
8611         inf_child_target.
8612         (inf_child_follow_fork): Delete.
8613         (inf_child_target::can_create_inferior)
8614         (inf_child_target::can_attach): New.
8615         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8616         (inf_child_target::has_stack, inf_child_target::has_registers)
8617         (inf_child_target::has_execution): New.
8618         (inf_child_fileio_open, inf_child_fileio_pwrite)
8619         (inf_child_fileio_pread, inf_child_fileio_fstat)
8620         (inf_child_fileio_close, inf_child_fileio_unlink)
8621         (inf_child_fileio_readlink, inf_child_use_agent)
8622         (inf_child_can_use_agent): Refactor as methods of
8623         inf_child_target.
8624         (return_zero, inf_child_target): Delete.
8625         (inf_child_target::inf_child_target): New.
8626         * inf-child.h: Include "target.h".
8627         (inf_child_target): Delete function prototype.
8628         (inf_child_target): New class.
8629         (inf_child_open_target, inf_child_mourn_inferior)
8630         (inf_child_maybe_unpush_target): Delete.
8631         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8632         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8633         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8634         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8635         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8636         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8637         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8638         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8639         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8640         methods of inf_ptrace_target.
8641         (inf_ptrace_target): Delete function.
8642         * inf-ptrace.h: Include "inf-child.h".
8643         (inf_ptrace_target): Delete function declaration.
8644         (inf_ptrace_target): New class.
8645         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8646         * linux-nat.c (linux_target): New.
8647         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8648         (linux_nat_target::~linux_nat_target): New.
8649         (linux_child_post_attach, linux_child_post_startup_inferior)
8650         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8651         (linux_child_remove_fork_catchpoint)
8652         (linux_child_insert_vfork_catchpoint)
8653         (linux_child_remove_vfork_catchpoint)
8654         (linux_child_insert_exec_catchpoint)
8655         (linux_child_remove_exec_catchpoint)
8656         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8657         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8658         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8659         (linux_nat_stopped_data_address)
8660         (linux_nat_stopped_by_sw_breakpoint)
8661         (linux_nat_supports_stopped_by_sw_breakpoint)
8662         (linux_nat_stopped_by_hw_breakpoint)
8663         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8664         (linux_nat_kill, linux_nat_mourn_inferior)
8665         (linux_nat_xfer_partial, linux_nat_thread_alive)
8666         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8667         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8668         (linux_child_static_tracepoint_markers_by_strid)
8669         (linux_nat_is_async_p, linux_nat_can_async_p)
8670         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8671         (linux_nat_supports_multi_process)
8672         (linux_nat_supports_disable_randomization, linux_nat_async)
8673         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8674         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8675         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8676         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8677         methods of linux_nat_target.
8678         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8679         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8680         parameter.
8681         (check_stopped_by_watchpoint): Adjust.
8682         (linux_xfer_partial): Delete.
8683         (linux_target_install_ops, linux_target, linux_nat_add_target):
8684         Delete.
8685         (linux_nat_target::linux_nat_target): New.
8686         * linux-nat.h: Include "inf-ptrace.h".
8687         (linux_nat_target): New.
8688         (linux_target, linux_target_install_ops, linux_nat_add_target):
8689         Delete function declarations.
8690         (linux_target): Declare global.
8691         * linux-thread-db.c (thread_db_target): New.
8692         (thread_db_target::thread_db_target): New.
8693         (thread_db_ops): Delete.
8694         (the_thread_db_target): New.
8695         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8696         (thread_db_update_thread_list, thread_db_pid_to_str)
8697         (thread_db_extra_thread_info)
8698         (thread_db_thread_handle_to_thread_info)
8699         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8700         (thread_db_resume): Refactor as methods of thread_db_target.
8701         (init_thread_db_ops): Delete.
8702         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8703         * x86-linux-nat.c: Don't include "linux-nat.h".
8704         (super_post_startup_inferior): Delete.
8705         (x86_linux_nat_target::~x86_linux_nat_target): New.
8706         (x86_linux_child_post_startup_inferior)
8707         (x86_linux_read_description, x86_linux_enable_btrace)
8708         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8709         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8710         methods of x86_linux_nat_target.
8711         (x86_linux_create_target): Delete.  Bits folded ...
8712         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8713         pointer.
8714         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8715         (x86_linux_nat_target): New class.
8716         (x86_linux_create_target): Delete.
8717         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8718         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8719         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8720         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8721         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8722         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8723         make extern.
8724         (x86_use_watchpoints): Delete.
8725         * x86-nat.h: Include "breakpoint.h" and "target.h".
8726         (x86_use_watchpoints): Delete.
8727         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8728         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8729         (x86_insert_watchpoint, x86_remove_watchpoint)
8730         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8731         (x86_stopped_by_hw_breakpoint): New declarations.
8732         (x86_nat_target): New template class.
8733
8734         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8735         (the_ppc_linux_nat_target): New.
8736         (ppc_linux_fetch_inferior_registers)
8737         (ppc_linux_can_use_hw_breakpoint)
8738         (ppc_linux_region_ok_for_hw_watchpoint)
8739         (ppc_linux_ranged_break_num_registers)
8740         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8741         (ppc_linux_insert_mask_watchpoint)
8742         (ppc_linux_remove_mask_watchpoint)
8743         (ppc_linux_can_accel_watchpoint_condition)
8744         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8745         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8746         (ppc_linux_watchpoint_addr_within_range)
8747         (ppc_linux_masked_watch_num_registers)
8748         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8749         (ppc_linux_read_description): Refactor as methods of
8750         ppc_linux_nat_target.
8751         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8752
8753         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8754         (procfs_target): New class.
8755         (the_procfs_target): New.
8756         (procfs_target): Delete function.
8757         (procfs_auxv_parse, procfs_attach, procfs_detach)
8758         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8759         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8760         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8761         (procfs_create_inferior, procfs_update_thread_list)
8762         (procfs_thread_alive, procfs_pid_to_str)
8763         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8764         (procfs_stopped_data_address, procfs_insert_watchpoint)
8765         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8766         (proc_find_memory_regions, procfs_info_proc)
8767         (procfs_make_note_section): Refactor as methods of procfs_target.
8768         (_initialize_procfs): Adjust.
8769         * sol-thread.c (sol_thread_target): New class.
8770         (sol_thread_ops): Now a sol_thread_target.
8771         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8772         (sol_thread_fetch_registers, sol_thread_store_registers)
8773         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8774         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8775         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8776         (init_sol_thread_ops): Delete.
8777         (_initialize_sol_thread): Adjust.  Remove references to
8778         init_sol_thread_ops and complete_target_initialization.
8779
8780         * windows-nat.c (windows_nat_target): New class.
8781         (windows_fetch_inferior_registers)
8782         (windows_store_inferior_registers, windows_resume, windows_wait)
8783         (windows_attach, windows_detach, windows_pid_to_exec_file)
8784         (windows_files_info, windows_create_inferior)
8785         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8786         (windows_close, windows_pid_to_str, windows_xfer_partial)
8787         (windows_get_tib_address, windows_get_ada_task_ptid)
8788         (windows_thread_name, windows_thread_alive): Refactor as
8789         windows_nat_target methods.
8790         (do_initial_windows_stuff): Adjust.
8791         (windows_target): Delete function.
8792         (_initialize_windows_nat): Adjust.
8793
8794         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8795         (darwin_mourn_inferior, darwin_kill_inferior)
8796         (darwin_create_inferior, darwin_attach, darwin_detach)
8797         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8798         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8799         (darwin_supports_multi_process): Refactor as darwin_nat_target
8800         methods.
8801         (darwin_resume_to, darwin_files_info): Delete.
8802         (_initialize_darwin_inferior): Rename to ...
8803         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8804         * darwin-nat.h: Include "inf-child.h".
8805         (darwin_nat_target): New class.
8806         (darwin_complete_target): Delete.
8807         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8808         (darwin_target): New.
8809         (i386_darwin_fetch_inferior_registers)
8810         (i386_darwin_store_inferior_registers): Refactor as methods of
8811         darwin_nat_target.
8812         (darwin_complete_target): Delete, with ...
8813         (_initialize_i386_darwin_nat): ... bits factored out here.
8814
8815         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8816         (the_alpha_linux_nat_target): New.
8817         (alpha_linux_register_u_offset): Refactor as
8818         alpha_linux_nat_target method.
8819         (_initialize_alpha_linux_nat): Adjust.
8820         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8821         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8822         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8823         methods of linux_nat_trad_target.
8824         (linux_trad_target): Delete.
8825         * linux-nat-trad.h (linux_trad_target): Delete function.
8826         (linux_nat_trad_target): New class.
8827         * mips-linux-nat.c (mips_linux_nat_target): New class.
8828         (super_fetch_registers, super_store_registers, super_close):
8829         Delete.
8830         (the_mips_linux_nat_target): New.
8831         (mips64_linux_regsets_fetch_registers)
8832         (mips64_linux_regsets_store_registers)
8833         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8834         (mips_linux_register_u_offset, mips_linux_read_description)
8835         (mips_linux_can_use_hw_breakpoint)
8836         (mips_linux_stopped_by_watchpoint)
8837         (mips_linux_stopped_data_address)
8838         (mips_linux_region_ok_for_hw_watchpoint)
8839         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8840         (mips_linux_close): Refactor as methods of mips_linux_nat.
8841         (_initialize_mips_linux_nat): Adjust to C++ification.
8842
8843         * aix-thread.c (aix_thread_target): New class.
8844         (aix_thread_ops): Now an aix_thread_target.
8845         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8846         (aix_thread_fetch_registers, aix_thread_store_registers)
8847         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8848         (aix_thread_thread_alive, aix_thread_pid_to_str)
8849         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8850         Refactor as methods of aix_thread_target.
8851         (init_aix_thread_ops): Delete.
8852         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8853         and complete_target_initialization.
8854         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8855         (rs6000_nat_target): New class.
8856         (the_rs6000_nat_target): New.
8857         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8858         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8859         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8860         (super_create_inferior): Delete.
8861         (_initialize_rs6000_nat): Adjust to C++ification.
8862
8863         * arm-linux-nat.c (arm_linux_nat_target): New class.
8864         (the_arm_linux_nat_target): New.
8865         (arm_linux_fetch_inferior_registers)
8866         (arm_linux_store_inferior_registers, arm_linux_read_description)
8867         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8868         (arm_linux_remove_hw_breakpoint)
8869         (arm_linux_region_ok_for_hw_watchpoint)
8870         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8871         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8872         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8873         arm_linux_nat_target.
8874         (_initialize_arm_linux_nat): Adjust to C++ification.
8875
8876         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8877         (the_aarch64_linux_nat_target): New.
8878         (aarch64_linux_fetch_inferior_registers)
8879         (aarch64_linux_store_inferior_registers)
8880         (aarch64_linux_child_post_startup_inferior)
8881         (aarch64_linux_read_description)
8882         (aarch64_linux_can_use_hw_breakpoint)
8883         (aarch64_linux_insert_hw_breakpoint)
8884         (aarch64_linux_remove_hw_breakpoint)
8885         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8886         (aarch64_linux_region_ok_for_hw_watchpoint)
8887         (aarch64_linux_stopped_data_address)
8888         (aarch64_linux_stopped_by_watchpoint)
8889         (aarch64_linux_watchpoint_addr_within_range)
8890         (aarch64_linux_can_do_single_step): Refactor as methods of
8891         aarch64_linux_nat_target.
8892         (super_post_startup_inferior): Delete.
8893         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8894
8895         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8896         (the_hppa_linux_nat_target): New.
8897         (hppa_linux_fetch_inferior_registers)
8898         (hppa_linux_store_inferior_registers): Refactor as methods of
8899         hppa_linux_nat_target.
8900         (_initialize_hppa_linux_nat): Adjust to C++ification.
8901
8902         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8903         (the_ia64_linux_nat_target): New.
8904         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8905         (ia64_linux_stopped_data_address)
8906         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8907         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8908         ia64_linux_nat_target methods.
8909         (super_xfer_partial): Delete.
8910         (_initialize_ia64_linux_nat): Adjust to C++ification.
8911
8912         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8913         (the_m32r_linux_nat_target): New.
8914         (m32r_linux_fetch_inferior_registers)
8915         (m32r_linux_store_inferior_registers): Refactor as
8916         m32r_linux_nat_target methods.
8917         (_initialize_m32r_linux_nat): Adjust to C++ification.
8918
8919         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8920         (the_m68k_linux_nat_target): New.
8921         (m68k_linux_fetch_inferior_registers)
8922         (m68k_linux_store_inferior_registers): Refactor as
8923         m68k_linux_nat_target methods.
8924         (_initialize_m68k_linux_nat): Adjust to C++ification.
8925
8926         * s390-linux-nat.c (s390_linux_nat_target): New class.
8927         (the_s390_linux_nat_target): New.
8928         (s390_linux_fetch_inferior_registers)
8929         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8930         (s390_insert_watchpoint, s390_remove_watchpoint)
8931         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8932         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8933         (s390_auxv_parse, s390_read_description): Refactor as methods of
8934         s390_linux_nat_target.
8935         (_initialize_s390_nat): Adjust to C++ification.
8936
8937         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8938         (the_sparc_linux_nat_target): New.
8939         (_initialize_sparc_linux_nat): Adjust to C++ification.
8940         * sparc-nat.c (sparc_fetch_inferior_registers)
8941         (sparc_store_inferior_registers): Remove target_ops parameter.
8942         * sparc-nat.h (sparc_fetch_inferior_registers)
8943         (sparc_store_inferior_registers): Remove target_ops parameter.
8944         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8945         (the_sparc64_linux_nat_target): New.
8946         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8947
8948         * spu-linux-nat.c (spu_linux_nat_target): New class.
8949         (the_spu_linux_nat_target): New.
8950         (spu_child_post_startup_inferior, spu_child_post_attach)
8951         (spu_child_wait, spu_fetch_inferior_registers)
8952         (spu_store_inferior_registers, spu_xfer_partial)
8953         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8954         methods.
8955         (_initialize_spu_nat): Adjust to C++ification.
8956
8957         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8958         (the_tilegx_linux_nat_target): New.
8959         (fetch_inferior_registers, store_inferior_registers):
8960         Refactor as methods.
8961         (_initialize_tile_linux_nat): Adjust to C++ification.
8962
8963         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8964         (the_xtensa_linux_nat_target): New.
8965         (xtensa_linux_fetch_inferior_registers)
8966         (xtensa_linux_store_inferior_registers): Refactor as
8967         xtensa_linux_nat_target methods.
8968         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8969
8970         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8971         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8972         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8973         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8974         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8975         (fbsd_stopped_by_sw_breakpoint)
8976         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8977         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8978         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8979         (fbsd_post_startup_inferior, fbsd_post_attach)
8980         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8981         (fbsd_set_syscall_catchpoint)
8982         (super_xfer_partial, super_resume, super_wait)
8983         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8984         (fbsd_handle_debug_trap): Remove target_ops parameter.
8985         (fbsd_nat_add_target): Delete.
8986         * fbsd-nat.h: Include "inf-ptrace.h".
8987         (fbsd_nat_add_target): Delete.
8988         (USE_SIGTRAP_SIGINFO): Define.
8989         (fbsd_nat_target): New class.
8990
8991         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8992         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8993         (amd64bsd_target): Delete.
8994         * amd64-bsd-nat.h: New file.
8995         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8996         "x86-bsd-nat.h".
8997         (amd64_fbsd_nat_target): New class.
8998         (the_amd64_fbsd_nat_target): New.
8999         (amd64fbsd_read_description): Refactor as method of
9000         amd64_fbsd_nat_target.
9001         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9002         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9003         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9004         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9005         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9006         (i386bsd_target): Delete.
9007         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9008         (i386bsd_fetch_inferior_registers)
9009         (i386bsd_store_inferior_registers): Declare.
9010         (i386_bsd_nat_target): New class.
9011         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9012         (the_i386_fbsd_nat_target): New.
9013         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9014         i386_fbsd_nat_target methods.
9015         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9016         (_initialize_i386fbsd_nat): Adjust to C++ification.
9017         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9018         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9019         (_initialize_x86_bsd_nat): Adjust to C++ification.
9020         * x86-bsd-nat.h: Include "x86-nat.h".
9021         (x86bsd_target): Delete declaration.
9022         (x86bsd_nat_target): New class.
9023
9024         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9025         (the_aarch64_fbsd_nat_target): New.
9026         (aarch64_fbsd_fetch_inferior_registers)
9027         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9028         aarch64_fbsd_nat_target.
9029         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9030         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9031         (the_alpha_bsd_nat_target): New.
9032         (alphabsd_fetch_inferior_registers)
9033         (alphabsd_store_inferior_registers): Refactor as
9034         alpha_bsd_nat_target methods.
9035         (_initialize_alphabsd_nat): Refactor as methods of
9036         alpha_bsd_nat_target.
9037         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9038         (the_amd64_nbsd_nat_target): New.
9039         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9040         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9041         (the_amd64_obsd_nat_target): New.
9042         (_initialize_amd64obsd_nat): Adjust to C++ification.
9043         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9044         (the_arm_fbsd_nat_target): New.
9045         (arm_fbsd_fetch_inferior_registers)
9046         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9047         (_initialize_arm_fbsd_nat): Refactor as methods of
9048         arm_fbsd_nat_target.
9049         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9050         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9051         (the_arm_netbsd_nat_target): New.
9052         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9053         arm_netbsd_nat_target.
9054         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9055         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9056         (the_hppa_nbsd_nat_target): New.
9057         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9058         hppa_nbsd_nat_target methods.
9059         (_initialize_hppanbsd_nat): Adjust to C++ification.
9060         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9061         (the_hppa_obsd_nat_target): New.
9062         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9063         methods of hppa_obsd_nat_target.
9064         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9065         add_target.
9066         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9067         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9068         add_target.
9069         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9070         (_initialize_i386obsd_nat): Use add_target.
9071         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9072         (the_m68k_bsd_nat_target): New.
9073         (m68kbsd_fetch_inferior_registers)
9074         (m68kbsd_store_inferior_registers): Refactor as methods of
9075         m68k_bsd_nat_target.
9076         (_initialize_m68kbsd_nat): Adjust to C++ification.
9077         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9078         (the_mips_fbsd_nat_target): New.
9079         (mips_fbsd_fetch_inferior_registers)
9080         (mips_fbsd_store_inferior_registers): Refactor as methods of
9081         mips_fbsd_nat_target.
9082         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9083         add_target.
9084         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9085         (the_mips_nbsd_nat_target): New.
9086         (mipsnbsd_fetch_inferior_registers)
9087         (mipsnbsd_store_inferior_registers): Refactor as methods of
9088         mips_nbsd_nat_target.
9089         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9090         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9091         (the_mips64_obsd_nat_target): New.
9092         (mips64obsd_fetch_inferior_registers)
9093         (mips64obsd_store_inferior_registers): Refactor as methods of
9094         mips64_obsd_nat_target.
9095         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9096         add_target.
9097         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9098         nbsd_nat_target.
9099         * nbsd-nat.h: Include "inf-ptrace.h".
9100         (nbsd_nat_target): New class.
9101         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9102         (obsd_wait): Refactor as methods of obsd_nat_target.
9103         (obsd_add_target): Delete.
9104         * obsd-nat.h: Include "inf-ptrace.h".
9105         (obsd_nat_target): New class.
9106         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9107         (the_ppc_fbsd_nat_target): New.
9108         (ppcfbsd_fetch_inferior_registers)
9109         (ppcfbsd_store_inferior_registers): Refactor as methods of
9110         ppc_fbsd_nat_target.
9111         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9112         add_target.
9113         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9114         (the_ppc_nbsd_nat_target): New.
9115         (ppcnbsd_fetch_inferior_registers)
9116         (ppcnbsd_store_inferior_registers): Refactor as methods of
9117         ppc_nbsd_nat_target.
9118         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9119         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9120         (the_ppc_obsd_nat_target): New.
9121         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9122         methods of ppc_obsd_nat_target.
9123         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9124         add_target.
9125         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9126         (the_sh_nbsd_nat_target): New.
9127         (shnbsd_fetch_inferior_registers)
9128         (shnbsd_store_inferior_registers): Refactor as methods of
9129         sh_nbsd_nat_target.
9130         (_initialize_shnbsd_nat): Adjust to C++ification.
9131         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9132         (inf_ptrace_xfer_partial): Delete.
9133         (sparc_xfer_partial, sparc_target): Delete.
9134         * sparc-nat.h (sparc_fetch_inferior_registers)
9135         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9136         (sparc_target): Delete function declaration.
9137         (sparc_target): New template class.
9138         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9139         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9140         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9141         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9142         add_target.
9143         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9144         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9145         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9146         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9147         add_target.
9148         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9149         (the_vax_bsd_nat_target): New.
9150         (vaxbsd_fetch_inferior_registers)
9151         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9152         methods.
9153         (_initialize_vaxbsd_nat): Adjust to C++ification.
9154
9155         * bsd-kvm.c (bsd_kvm_target): New class.
9156         (bsd_kvm_ops): Now a bsd_kvm_target.
9157         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9158         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9159         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9160         bsd_kvm_target.
9161         (bsd_kvm_return_one): Delete.
9162         (bsd_kvm_add_target): Adjust to C++ification.
9163
9164         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9165         (nto_procfs_target_procfs): New classes.
9166         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9167         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9168         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9169         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9170         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9171         (procfs_remove_hw_breakpoint, procfs_resume)
9172         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9173         (procfs_kill_inferior, procfs_store_registers)
9174         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9175         as methods of nto_procfs_target.
9176         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9177         (nto_native_ops): Delete.
9178         (procfs_open, procfs_native_open): Delete.
9179         (nto_native_ops): Now an nto_procfs_target_native.
9180         (init_procfs_targets): Adjust to C++ification.
9181         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9182         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9183         Refactor as methods of nto_procfs_target.
9184
9185         * go32-nat.c (go32_nat_target): New class.
9186         (the_go32_nat_target): New.
9187         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9188         (go32_store_registers, go32_xfer_partial, go32_files_info)
9189         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9190         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9191         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9192         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9193         (go32_target): Delete.
9194         (_initialize_go32_nat): Adjust to C++ification.
9195
9196         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9197         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9198         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9199         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9200         gnu_nat_target.
9201         (gnu_target): Delete.
9202         * gnu-nat.h (gnu_target): Delete.
9203         (gnu_nat_target): New class.
9204         * i386-gnu-nat.c (gnu_base_target): New.
9205         (i386_gnu_nat_target): New class.
9206         (the_i386_gnu_nat_target): New.
9207         (_initialize_i386gnu_nat): Adjust to C++ification.
9208
9209 2018-05-02  Pedro Alves  <[email protected]>
9210
9211         * bfd-target.c (target_bfd_xclose): Rename to ...
9212         (target_bfd_close): ... this.
9213         (target_bfd_reopen): Adjust.
9214         * target.c (target_close): Remove references to to_xclose.
9215         * target.h (target_ops::to_xclose): Delete.
9216         (target_ops::to_close): Update comments.
9217
9218 2018-05-02  Pedro Alves  <[email protected]>
9219
9220         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9221         "linux-nat.h".
9222         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9223         * inf-ptrace.c (inf_ptrace_register_u_offset)
9224         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9225         (inf_ptrace_store_register, inf_ptrace_store_registers)
9226         (inf_ptrace_trad_target): Move to ...
9227         * linux-nat-trad.c: ... this new file.
9228         * linux-nat-trad.h: New file.
9229         * linux-nat.c (linux_target_install_ops): Make extern.
9230         (linux_trad_target): Delete.
9231         * linux-nat.h (linux_trad_target): Delete declaration.
9232         (linux_target_install_ops): Declare.
9233         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9234         "linux-nat.h".
9235
9236 2018-05-02  Pedro Alves  <[email protected]>
9237
9238         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9239         procfs_target/add_target here.
9240         * procfs.c (procfs_target): Make static.
9241         (_initialize_procfs): Call add_target here.
9242         * procfs.h (struct target_ops): Remove forward declaration.
9243         (procfs_target): Remove declaration.
9244         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9245
9246 2018-05-02  Pedro Alves  <[email protected]>
9247
9248         * procfs.c (procfs_stopped_by_watchpoint)
9249         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9250         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9251         Forward declare.
9252         (procfs_use_watchpoints): Delete, move contents...
9253         (procfs_target): ... here.
9254         * procfs.h (procfs_use_watchpoints): Delete declaration.
9255         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9256         procfs_use_watchpoints.
9257         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9258         procfs_use_watchpoints.
9259
9260 2018-05-02  Tom Tromey  <[email protected]>
9261
9262         PR python/20084:
9263         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9264         and var_zuinteger_unlimited.
9265         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9266         and PARAM_ZUINTEGER_UNLIMITED.
9267         (set_parameter_value): Handle var_zuinteger and
9268         var_zuinteger_unlimited.
9269         (add_setshow_generic): Likewise.
9270         (parmpy_init): Likewise.
9271
9272 2018-04-28  Dan Robertson  <[email protected]>
9273
9274         PR rust/23124
9275         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9276         pointer is not null before dereferencing it.
9277
9278 2018-04-30  Tom Tromey  <[email protected]>
9279
9280         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9281         is_mi_like_p.
9282
9283 2018-04-30  Tom Tromey  <[email protected]>
9284
9285         * breakpoint.c (mention): Remove use of is_mi_like_p.
9286         (print_mention_ranged_breakpoint): Likewise.
9287         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9288         of is_mi_like_p.
9289
9290 2018-04-30  Tom Tromey  <[email protected]>
9291
9292         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9293
9294 2018-04-30  Tom Tromey  <[email protected]>
9295
9296         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9297         (info_spu_event_command): Remove some uses of is_mi_like_p.
9298
9299 2018-04-30  Tom Tromey  <[email protected]>
9300
9301         * python/py-framefilter.c (py_print_single_arg)
9302         (enumerate_locals, py_print_args, py_print_frame): Remove some
9303         uses of is_mi_like_p.
9304
9305 2018-04-30  Tom Tromey  <[email protected]>
9306
9307         * ui-out.c: Update.
9308         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9309         * ui-out.h (ui_out::is_mi_like_p): Now const.
9310         (ui_out::do_is_mi_like_p): Now const.
9311         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9312
9313 2018-04-30  Tom Tromey  <[email protected]>
9314
9315         * varobj.c (varobj_set_visualizer): Use new_reference.
9316         * python/python.c (gdbpy_decode_line): Use new_reference.
9317         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9318         new_reference.
9319
9320 2018-04-30  Tom Tromey  <[email protected]>
9321
9322         * varobj.c (install_new_value): Use new_reference.
9323         * value.h (value_incref): Return void.  Swap intro comment with
9324         value_decref.
9325         * value.c (set_value_parent): Use new_reference.
9326         (value_incref): Return void.  Update intro comment.
9327         (release_value): Use new_reference.
9328         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9329
9330 2018-04-30  Tom Tromey  <[email protected]>
9331
9332         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9333         * gdb_bfd.h (new_bfd_ref): Remove.
9334         (gdb_bfd_open): Update comment.
9335         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9336         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9337         (gdb_bfd_fdopenr): Use new_reference.
9338         * exec.c (exec_file_attach): Use new_reference.
9339
9340 2018-04-30  Tom Tromey  <[email protected]>
9341
9342         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9343         method.
9344
9345 2018-04-30  Tom Tromey  <[email protected]>
9346
9347         * jit.c (jit_read_code_entry): Use type_align.
9348         * i386-tdep.c (i386_gdbarch_init): Don't call
9349         set_gdbarch_long_long_align_bit.
9350         * gdbarch.sh: Remove long_long_align_bit.
9351         * gdbarch.c, gdbarch.h: Rebuild.
9352         * arc-tdep.c (arc_type_align): New function.
9353         (arc_gdbarch_init): Use arc_type_align.  Don't call
9354         set_gdbarch_long_long_align_bit.
9355
9356 2018-04-30  Tom Tromey  <[email protected]>
9357
9358         * rust-lang.c (rust_type_alignment): Remove.
9359         (rust_composite_type): Use type_align.
9360
9361 2018-04-30  Tom Tromey  <[email protected]>
9362
9363         * NEWS: Mention Type.align.
9364         * python/py-type.c (typy_get_alignof): New function.
9365         (type_object_getset): Add "alignof".
9366
9367 2018-04-30  Tom Tromey  <[email protected]>
9368
9369         PR exp/17095:
9370         * NEWS: Update.
9371         * std-operator.def (UNOP_ALIGNOF): New operator.
9372         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9373         New.
9374         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9375         * c-lang.c (c_op_print_tab): Add alignof.
9376         * c-exp.y (ALIGNOF): New token.
9377         (exp): Add "ALIGNOF" production.
9378         (ident_tokens): Add _Alignof and alignof.
9379
9380 2018-04-30  Tom Tromey  <[email protected]>
9381
9382         * i386-tdep.c (i386_type_align): New function.
9383         (i386_gdbarch_init): Update.
9384         * gdbarch.sh (type_align): New method.
9385         * gdbarch.c, gdbarch.h: Rebuild.
9386         * arch-utils.h (default_type_align): Declare.
9387         * arch-utils.c (default_type_align): New function.
9388         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9389         (struct type) <align_log2>: New field.
9390         <instance_flags>: Now a bitfield.
9391         (TYPE_RAW_ALIGN): New macro.
9392         (type_align, type_raw_align, set_type_align): Declare.
9393         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9394         functions.
9395         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9396         (get_alignment, maybe_set_alignment): New functions.
9397         (read_structure_type, read_enumeration_type, read_array_type)
9398         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9399         (read_subrange_type, read_base_type): Set type alignment.
9400
9401 2018-04-30  Simon Marchi  <[email protected]>
9402
9403         * dwarf2read.c (read_index_from_section): Use bool.
9404
9405 2018-04-29  Fabian Groffen  <[email protected]>
9406
9407         PR gdb/22950
9408         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9409         with #ifdef.
9410
9411 2018-04-29  John Reiser  <[email protected]>
9412
9413         PR build/22873
9414         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9415         last step, and do it atomically.
9416
9417 2018-04-27  Alexandre Oliva  <[email protected]>
9418
9419         * compile/compile-c-types.c (convert_int, convert_float):
9420         Update for C FE v1.
9421
9422 2018-04-27  Tom Tromey  <[email protected]>
9423
9424         PR rust/22545:
9425         * rust-lang.c (rust_inclusive_range_type_p): New function.
9426         (rust_range): Handle inclusive ranges.
9427         (rust_compute_range): Likewise.
9428         * rust-exp.y (struct rust_op) <inclusive>: New field.
9429         (DOTDOTEQ): New constant.
9430         (range_expr): Add "..=" productions.
9431         (operator_tokens): Add "..=" token.
9432         (ast_range): Add "inclusive" parameter.
9433         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9434         ranges.
9435         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9436         bounds values.
9437         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9438         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9439         Update comments.
9440         * expprint.c (print_subexp_standard): Handle new bounds values.
9441         (dump_subexp_body_standard): Likewise.
9442
9443 2018-04-27  Tom Tromey  <[email protected]>
9444
9445         * configure: Rebuild.
9446         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9447         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9448         "OVERRIDE".
9449         (class symbol_needs_eval_context): Likewise.
9450         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9451         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9452         "virtual".
9453         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9454         "override".
9455         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9456         * aarch64-tdep.c (instruction_reader::read): Use "override".
9457         (instruction_reader_test::read): Likewise.
9458         * arm-tdep.c (instruction_reader::read): Use "override".
9459         (instruction_reader_thumb::read): Likewise.
9460
9461 2018-04-26  Andrzej Kaczmarek  <[email protected]>
9462
9463         PR remote/9665
9464         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9465         instead of remote_send.
9466         (remote_send): Remove.
9467
9468 2018-04-26  Pedro Alves  <[email protected]>
9469
9470         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9471         find_function_start_sal instead of find_pc_line.
9472
9473 2018-04-26  Pedro Alves  <[email protected]>
9474
9475         * breakpoint.c (set_breakpoint_location_function): Handle
9476         mst_data_gnu_ifunc.
9477         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9478         * elfread.c (elf_symtab_read): Give data symbols with
9479         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9480         (elf_rel_plt_read): Update comment.
9481         * linespec.c (convert_linespec_to_sals): Handle
9482         mst_data_gnu_ifunc.
9483         (minsym_found): Handle mst_data_gnu_ifunc.
9484         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9485         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9486         * parse.c (find_minsym_type_and_address): Handle
9487         mst_data_gnu_ifunc.
9488         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9489         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9490         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9491         comment.
9492         <mst_data_gnu_ifunc>: New enumerator.
9493
9494 2018-04-26  Pedro Alves  <[email protected]>
9495
9496         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9497         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9498         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9499         Handle it.
9500         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9501         (lookup_minimal_symbol_by_pc): Adjust.
9502         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9503         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9504         * minsyms.h (lookup_msym_prefer): New enum.
9505         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9506         parameter by a lookup_msym_prefer parameter.
9507
9508 2018-04-26  Pedro Alves  <[email protected]>
9509
9510         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9511         ends in "@plt" instead of looking at the symbol's section.
9512
9513 2018-04-26  Pedro Alves  <[email protected]>
9514
9515         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9516         all references.
9517         (find_pc_partial_function_gnu_ifunc): Rename to ...
9518         (find_pc_partial_function): ... this, and remove references to
9519         'is_gnu_ifunc_p'.
9520         (find_pc_partial_function): Delete old implementation.
9521         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9522
9523 2018-04-26  Pedro Alves  <[email protected]>
9524
9525         * linespec.c (struct bound_minimal_symbol_search_key): New.
9526         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9527         skip first line if we found a GNU ifunc minimal symbol by name.
9528         (compare_msymbols): Change parameters to work with a destructured
9529         lhs minsym.
9530         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9531         functions.
9532
9533 2018-04-26  Pedro Alves  <[email protected]>
9534
9535         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9536         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9537         address/name.
9538         (add_location_to_breakpoint): Store the minsym and the objfile in
9539         the breakpoint location.
9540         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9541         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9542         Record the minsym in the sal.
9543         * symtab.h (symtab_and_line) <msymbol>: New field.
9544
9545 2018-04-26  Pedro Alves  <[email protected]>
9546
9547         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9548         unless we actually resolved the ifunc.
9549
9550 2018-04-26  Pedro Alves  <[email protected]>
9551
9552         * c-exp.y (variable production): Prefer ifunc minsyms over
9553         regular function symbols.
9554         * symtab.c (find_gnu_ifunc): New function.
9555         * minsyms.h (lookup_msym_prefer): New enum.
9556         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9557         parameter by a lookup_msym_prefer parameter.
9558         * symtab.h (find_gnu_ifunc): New declaration.
9559
9560 2018-04-26  Pedro Alves  <[email protected]>
9561
9562         * blockframe.c (find_gnu_ifunc_target_type): New function.
9563         (find_function_type): New.
9564         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9565         return a value with a memory address.
9566         (eval_call): For calls to GNU ifunc functions, try to find the
9567         type of the target function from the type that the resolver
9568         returns.
9569         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9570         symbols.
9571         * infcall.c (find_function_return_type): Delete.
9572         (find_function_addr): Add 'function_type' parameter.  For calls to
9573         GNU ifunc functions, try to find the type of the target function
9574         from the type that the resolver returns, and return it via
9575         FUNCTION_TYPE.
9576         (call_function_by_hand_dummy): Adjust to use the function type
9577         returned by find_function_addr.
9578         (find_function_addr): Add 'function_type' parameter and move
9579         description here.
9580         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9581         declarations.
9582
9583 2018-04-26  Pedro Alves  <[email protected]>
9584
9585         * c-exp.y (variable production): Skip finding an alias for ifunc
9586         symbols.
9587
9588 2018-04-26  Pedro Alves  <[email protected]>
9589
9590         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9591
9592 2018-04-25  Pedro Alves  <[email protected]>
9593
9594         * infcmd.c (kill_command): Print the pid as string, not the whole
9595         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9596         message.
9597         * remote.c (remote_detach_1): Print the pid as string, not the
9598         whole thread's ptid.
9599
9600 2018-04-24  Jan Kratochvil  <[email protected]>
9601             Sergio Durigan Junior  <[email protected]>
9602             Pedro Alves  <[email protected]>
9603
9604         * infcmd.c (kill_command): Print message when inferior has
9605         been killed.
9606         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9607         '1'.
9608         (add_inferior): Improve message printed when
9609         'print_inferior_events' is on.
9610         (exit_inferior): Remove message printed when
9611         'print_inferior_events' is on.
9612         (detach_inferior): Improve message printed when
9613         'print_inferior_events' is on.
9614         (initialize_inferiors): Use 'add_inferior_silent' to set
9615         'current_inferior_'.
9616         * inferior.h (print_inferior_events): Declare here as
9617         'extern'.
9618         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9619         '[Detaching...]' messages when 'print_inferior_events' is on.
9620         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9621         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9622         'Detaching after fork from child...', replace it by '... from
9623         parent...'.
9624         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9625         prefix/suffix when printing 'Detaching...' messages.  Print
9626         them when 'print_inferior_events' is on.
9627         * remote.c (remote_detach_1): Print message when detaching
9628         from inferior and '!is_fork_parent'.
9629
9630 2018-04-24  Tom Tromey  <[email protected]>
9631
9632         * cli-out.h: Reindent.
9633
9634 2018-04-24  Tom Tromey  <[email protected]>
9635
9636         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9637         (cli_ui_out::do_field_string): Use fputs_filtered.
9638         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9639
9640 2018-04-23  Tom Tromey  <[email protected]>
9641
9642         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9643         gdb::unique_xmalloc_ptr.
9644
9645 2018-04-23  Tom Tromey  <[email protected]>
9646
9647         * configure: Rebuild.
9648
9649 2018-04-22  Rajendra SY  <[email protected]>
9650
9651         PR gdb/23095
9652         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9653         prepare_for_testing.  Set normal_bp to r_debug_state if target
9654         is bsd.
9655
9656 2018-04-21  Pedro Alves  <[email protected]>
9657             Rajendra SY  <[email protected]>
9658
9659         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9660         * remote.c (extended_remote_attach): In all-stop mode, mark the
9661         thread as executing.
9662
9663 2018-04-19  Philippe Waroquiers  <[email protected]>
9664
9665         * thread.c (thread_apply_all_command): Fix comment.
9666         (thread_command): Fix comment.
9667
9668 2018-04-10  Alan Hayward  <[email protected]>
9669
9670         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9671         parameter.
9672         * features/aarch64-core.c (create_feature_aarch64_core):
9673         Regenerate.
9674         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9675         Likewise.
9676         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9677         Likewise.
9678         * features/i386/32bit-avx512.c
9679         (create_feature_i386_32bit_avx512): Likewise.
9680         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9681         Likewise.
9682         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9683         Likewise.
9684         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9685         Likewise.
9686         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9687         Likewise.
9688         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9689         Likewise.
9690         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9691         Likewise.
9692         * features/i386/64bit-avx512.c
9693         (create_feature_i386_64bit_avx512): Likewise.
9694         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9695         Likewise.
9696         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9697         Likewise.
9698         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9699         Likewise.
9700         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9701         Likewise.
9702         * features/i386/64bit-segments.c
9703         (create_feature_i386_64bit_segments): Likewise.
9704         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9705         Likewise.
9706         * features/i386/x32-core.c
9707         (create_feature_i386_x32_core): Likewise.
9708         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9709         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9710         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9711         * target-descriptions.c: In generated code, don't pass xml
9712         filename.
9713
9714 2018-04-18  Alan Hayward  <[email protected]>
9715
9716         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9717         (print_xml_feature::visit_post): Likewise.
9718         (print_xml_feature::visit): Likewise.
9719         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9720         (print_xml_feature): Add new class.
9721         * regformats/regdat.sh: Null xmltarget on feature targets.
9722         * target-descriptions.c (struct target_desc): Add xmltarget.
9723         (maintenance_check_tdesc_xml_convert): Add unittest function.
9724         (tdesc_get_features_xml): Add function to get xml.
9725         (maintenance_check_xml_descriptions): Test xml generation.
9726         * xml-tdesc.c (string_read_description_xml): Add function.
9727         * xml-tdesc.h (string_read_description_xml): Add declaration.
9728
9729 2018-04-18  Alan Hayward  <[email protected]>
9730
9731         * features/Makefile: Add feature marker to targets with new style
9732         target descriptions.
9733         * regformats/aarch64.dat: Regenerate.
9734         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9735         * regformats/i386/amd64-avx-linux.dat: Likewise.
9736         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9737         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9738         * regformats/i386/amd64-linux.dat: Likewise.
9739         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9740         * regformats/i386/amd64.dat: Likewise.
9741         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9742         * regformats/i386/i386-avx-linux.dat: Likewise.
9743         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9744         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9745         * regformats/i386/i386-linux.dat: Likewise.
9746         * regformats/i386/i386-mmx-linux.dat: Likewise.
9747         * regformats/i386/i386-mpx-linux.dat: Likewise.
9748         * regformats/i386/i386.dat: Likewise.
9749         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9750         * regformats/i386/x32-avx-linux.dat: Likewise.
9751         * regformats/i386/x32-linux.dat: Likewise.
9752         * regformats/tic6x-c62x-linux.dat: Likewise.
9753         * regformats/tic6x-c64x-linux.dat: Likewise.
9754         * regformats/tic6x-c64xp-linux.dat: Likewise.
9755         * regformats/regdat.sh: Parse feature marker.
9756
9757 2018-04-18  Alan Hayward  <[email protected]>
9758
9759         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9760         (tdesc_osabi_name): Likewise.
9761         * target-descriptions.c (tdesc_architecture_name): Add new
9762         function.
9763         (tdesc_osabi_name): Likewise.
9764
9765 2018-04-18  Alan Hayward  <[email protected]>
9766
9767         * common/tdesc.c (tdesc_predefined_type): Move to here.
9768         (tdesc_named_type): Likewise.
9769         (tdesc_create_vector): Likewise.
9770         (tdesc_create_struct): Likewise.
9771         (tdesc_set_struct_size): Likewise.
9772         (tdesc_create_union): Likewise.
9773         (tdesc_create_flags): Likewise.
9774         (tdesc_create_enum): Likewise.
9775         (tdesc_add_field): Likewise.
9776         (tdesc_add_typed_bitfield): Likewise.
9777         (tdesc_add_bitfield): Likewise.
9778         (tdesc_add_flag): Likewise.
9779         (tdesc_add_enum_value): Likewise.
9780         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9781         (struct tdesc_type_vector): Likewise.
9782         (struct tdesc_type_field): Likewise.
9783         (struct tdesc_type_with_fields): Likewise.
9784         (tdesc_create_enum): Add declaration.
9785         (tdesc_add_typed_bitfield): Likewise.
9786         (tdesc_add_enum_value): Likewise.
9787         * target-descriptions.c (tdesc_type_field): Move from here.
9788         (tdesc_type_builtin): Likewise.
9789         (tdesc_type_vector): Likewise.
9790         (tdesc_type_with_fields): Likewise.
9791         (tdesc_predefined_types): Likewise.
9792         (tdesc_named_type): Likewise.
9793         (tdesc_create_vector): Likewise.
9794         (tdesc_create_struct): Likewise.
9795         (tdesc_set_struct_size): Likewise.
9796         (tdesc_create_union): Likewise.
9797         (tdesc_create_flags): Likewise.
9798         (tdesc_create_enum): Likewise.
9799         (tdesc_add_field): Likewise.
9800         (tdesc_add_typed_bitfield): Likewise.
9801         (tdesc_add_bitfield): Likewise.
9802         (tdesc_add_flag): Likewise.
9803         (tdesc_add_enum_value): Likewise.
9804         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9805         (tdesc_add_typed_bitfield): Likewise.
9806         (tdesc_add_enum_value): Likewise.
9807
9808 2018-04-18  Alan Hayward  <[email protected]>
9809
9810         * common/tdesc.c (tdesc_feature::accept): Move to here.
9811         (tdesc_feature::operator==): Likewise.
9812         (tdesc_create_reg): Likewise.
9813         * common/tdesc.h (tdesc_type_kind): Likewise.
9814         (struct tdesc_type): Likewise.
9815         (struct tdesc_feature): Likewise.
9816         * regformats/regdat.sh: Create a feature.
9817         * target-descriptions.c (tdesc_type_kind): Move from here.
9818         (tdesc_type): Likewise.
9819         (tdesc_type_up): Likewise.
9820         (tdesc_feature): Likewise.
9821         (tdesc_create_reg): Likewise.
9822
9823 2018-04-18  Alan Hayward  <[email protected]>
9824
9825         * Makefile.in: Add arch/tdesc.c
9826         * common/tdesc.c: New file.
9827         * common/tdesc.h (tdesc_element_visitor): Move to here.
9828         (tdesc_element): Likewise.
9829         (tdesc_reg): Likewise.
9830         (tdesc_reg_up): Likewise.
9831         * regformats/regdef.h (reg): Add offset to constructors.
9832         * target-descriptions.c (tdesc_element_visitor): Move from here.
9833         (tdesc_element): Likewise.
9834         (tdesc_reg): Likewise.
9835         (tdesc_reg_up): Likewise.
9836
9837 2018-04-17  Tom Tromey  <[email protected]>
9838
9839         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9840         discriminant field.
9841
9842 2018-04-17  Tom Tromey  <[email protected]>
9843
9844         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9845
9846 2018-04-17  Andreas Arnez  <[email protected]>
9847
9848         * symtab.c (print_symbol_info): Skip printing filename and line
9849         number when `last' is NULL.
9850         (symtab_symbol_info): Use empty string instead of NULL for first
9851         invocation of print_symbol_info.
9852         (rbreak_command): Pass NULL to `last' parameter of
9853         print_symbol_info.
9854
9855 2018-04-16  Simon Marchi  <[email protected]>
9856
9857         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9858         instead of nullptr.
9859
9860 2018-04-16  Pedro Alves  <[email protected]>
9861
9862         * MAINTAINERS (sh): Remove.
9863         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9864         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9865         (ALLDEPFILES): Remove sh64-tdep.c.
9866         * NEWS: Mentions that support for SH-5/SH64 is removed.
9867         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9868         (sh*-*-openbsd*): Ditto.
9869         (sh64-*-elf*): Remove.
9870         (sh*): Remove.
9871         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9872         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9873         * sh-tdep.c: No longer include "sh64-tdep.h".
9874         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9875         * sh64-tdep.c, sh64-tdep.h: Remove files.
9876
9877 2018-04-16  Pedro Alves  <[email protected]>
9878
9879         * MAINTAINERS: Remove m88k.
9880         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9881         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9882         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9883         * NEWS: Mention that support for m88k was removed.
9884         * configure.host (m88*-*-*): Remove support.
9885         * configure.nat (m88k-*-*): Remove support.
9886         * configure.tgt (m88*-*-openbsd*): Remove.
9887         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9888
9889 2018-04-15  Simon Marchi  <[email protected]>
9890
9891         * configure.tgt (x86_tobjs): New variable.
9892         (amd64_tobjs, i386_tobjs): Use it.
9893
9894 2018-04-13  Andreas Arnez  <[email protected]>
9895
9896         * symtab.c (print_symbol_info): Precede the symbol definition by
9897         the line number when available.
9898         * NEWS: Advertise this enhancement.
9899
9900 2018-04-13  Markus Metzger  <[email protected]>
9901
9902         * NEWS (New options): announce set/show record btrace cpu.
9903         * btrace.c: Include record-btrace.h.
9904         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9905         the vendor is unknown.
9906         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9907         Maybe overwrite the btrace configuration's cpu.
9908         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9909         (btrace_fetch): Add cpu parameter.  Update callers.
9910         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9911         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9912         errata workarounds if the vendor is unknown.
9913         * python/py-record-btrace.c: Include record-btrace.h.
9914         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9915         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9916         * record-btrace.c (record_btrace_cpu_state_kind): New.
9917         (record_btrace_cpu): New.
9918         (set_record_btrace_cpu_cmdlist): New.
9919         (record_btrace_get_cpu): New.
9920         (require_btrace_thread, record_btrace_info)
9921         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9922         (cmd_set_record_btrace_cpu_none): New.
9923         (cmd_set_record_btrace_cpu_auto): New.
9924         (cmd_set_record_btrace_cpu): New.
9925         (cmd_show_record_btrace_cpu): New.
9926         (_initialize_record_btrace): Initialize set/show record btrace cpu
9927         commands.
9928         * record-btrace.h (record_btrace_get_cpu): New.
9929
9930 2018-04-13  Markus Metzger  <[email protected]>
9931
9932         * record.c (set_record_command): Fix typo in message.
9933
9934 2018-04-13  Markus Metzger  <[email protected]>
9935
9936         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9937
9938 2018-04-13  Markus Metzger  <[email protected]>
9939
9940         * infrun.c (process_event_stop_test): Call
9941         gdbarch_in_indirect_branch_thunk.
9942         * gdbarch.sh (in_indirect_branch_thunk): New.
9943         * gdbarch.c: Regenerated.
9944         * gdbarch.h: Regenerated.
9945         * x86-tdep.h: New.
9946         * x86-tdep.c: New.
9947         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9948         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9949         (ALLDEPFILES): Add x86-tdep.c.
9950         * arch-utils.h (default_in_indirect_branch_thunk): New.
9951         * arch-utils.c (default_in_indirect_branch_thunk): New.
9952         * i386-tdep: Include x86-tdep.h.
9953         (i386_in_indirect_branch_thunk): New.
9954         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9955         function.
9956         * amd64-tdep: Include x86-tdep.h.
9957         (amd64_in_indirect_branch_thunk): New.
9958         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9959
9960 2018-04-12  Jan Kratochvil  <[email protected]>
9961
9962         PR gdb/23053
9963         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9964         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9965         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9966         regression.
9967
9968 2018-04-12  Tom Tromey  <[email protected]>
9969
9970         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9971         (rust_evaluate_subexp): Likewise.
9972
9973 2018-04-12  Pedro Alves  <[email protected]>
9974
9975         * procfs.c (procfs_detach): Make forward declaration's prototype
9976         match definition's protototype.
9977         (proc_get_LDT_entry): Remove stale do_cleanups call.
9978
9979 2018-04-12  Pedro Alves  <[email protected]>
9980
9981         * target.h (target_ops::to_has_exited): Delete.
9982         (target_has_exited): Delete.
9983         * target-delegates.c: Regenerate.
9984
9985 2018-04-11  Pedro Alves  <[email protected]>
9986
9987         * target.c (fileio_fh_t::t): Add comment.
9988         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9989         (target_fileio_close): Handle a NULL target.
9990         (invalidate_fileio_fh): New.
9991         (target_close): Call it.
9992         * remote.c (remote_hostio_send_command): No longer check whether
9993         remote_desc is open.
9994
9995 2018-04-11  Pedro Alves  <[email protected]>
9996
9997         * target.c (fileio_fh_t): Make it a named struct instead of a
9998         typedef.
9999         (fileio_fh_t::is_closed): New method.
10000         (DEF_VEC_O (fileio_fh_t)): Remove.
10001         (fileio_fhandles): Now a std::vector.
10002         (is_closed_fileio_fh): Delete.
10003         (acquire_fileio_fd): Adjust.  Rename parameters.
10004         (release_fileio_fd): Adjust.
10005         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10006         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10007         (target_fileio_close): Adjust.
10008
10009 2018-04-10  Simon Marchi  <[email protected]>
10010
10011         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10012         index.
10013
10014 2018-04-10  Pedro Alves  <[email protected]>
10015
10016         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10017         (scoped_finish_thread_state): New class.
10018         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10019         cleanup.
10020         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10021         (fetch_inferior_event, normal_stop): Likewise.
10022         * thread.c (finish_thread_state_cleanup): Delete.
10023
10024 2018-04-09  Simon Marchi  <[email protected]>
10025             Pedro Alves  <[email protected]>
10026
10027         * value.c: Include "selftest.h" and "common/array-view.h".
10028         (struct range) <operator ==>: New.
10029         (test_ranges_contain): New.
10030         (check_ranges_vector): New.
10031         (test_insert_into_bit_range_vector): New.
10032         (_initialize_values): Register selftests.
10033         * common/array-view.h (operator==, operator!=): New.
10034
10035 2018-04-09  Simon Marchi  <[email protected]>
10036
10037         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10038         an iterator.
10039         * inline-frame.c: Include <algorithm>.
10040         (struct inline_state): Add constructor.
10041         (inline_state_s): Remove.
10042         (DEF_VEC_O(inline_state_s)): Remove.
10043         (inline_states): Change type to std::vector.
10044         (find_inline_frame_state): Adjust to std::vector.
10045         (allocate_inline_frame_state): Remove.
10046         (clear_inline_frame_state): Adjust to std::vector.
10047         (skip_inline_frames): Adjust to std::vector.
10048
10049 2018-04-09  Simon Marchi  <[email protected]>
10050
10051         * tracepoint.h (struct trace_state_variable): Add constructor.
10052         <name>: Change type to std::string.
10053         * tracepoint.c (tsv_s): Remove.
10054         (DEF_VEC_O(tsv_s)): Remove.
10055         (tvariables): Change to std::vector.
10056         (create_trace_state_variable): Adjust to std::vector.
10057         (find_trace_state_variable): Likewise.
10058         (find_trace_state_variable_by_number): Likewise.
10059         (delete_trace_state_variable): Likewise.
10060         (trace_variable_command): Adjust to std::string.
10061         (delete_trace_variable_command): Likewise.
10062         (tvariables_info_1): Adjust to std::vector.
10063         (save_trace_state_variables): Likewise.
10064         (start_tracing): Likewise.
10065         (merge_uploaded_trace_state_variables): Adjust to std::vector
10066         and std::string.
10067         * target.h (struct target_ops)
10068         <to_download_trace_state_variable>: Pass reference to
10069         trace_state_variable.
10070         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10071         * target-delegates.c: Re-generate.
10072         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10073         (mi_tsv_deleted): Likewise.
10074         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10075         * remote.c (remote_download_trace_state_variable): Change
10076         pointer to reference and adjust.
10077         * make-target-delegates (parse_argtypes): Handle references.
10078         (write_function_header): Likewise.
10079         (munge_type): Likewise.
10080
10081 2018-04-09  Simon Marchi  <[email protected]>
10082
10083         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10084         string_view-selftests.c.
10085         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10086         testsuite.
10087         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10088         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10089         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10090         * unittests/basic_string_view/element_access/char/1.cc:
10091         Likewise.
10092         * unittests/basic_string_view/element_access/char/empty.cc:
10093         Likewise.
10094         * unittests/basic_string_view/element_access/char/front_back.cc:
10095         Likewise.
10096         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10097         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10098         Likewise.
10099         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10100         Likewise.
10101         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10102         Likewise.
10103         * unittests/basic_string_view/operations/compare/char/1.cc:
10104         Likewise.
10105         * unittests/basic_string_view/operations/compare/char/13650.cc:
10106         Likewise.
10107         * unittests/basic_string_view/operations/copy/char/1.cc:
10108         Likewise.
10109         * unittests/basic_string_view/operations/data/char/1.cc:
10110         Likewise.
10111         * unittests/basic_string_view/operations/find/char/1.cc:
10112         Likewise.
10113         * unittests/basic_string_view/operations/find/char/2.cc:
10114         Likewise.
10115         * unittests/basic_string_view/operations/find/char/3.cc:
10116         Likewise.
10117         * unittests/basic_string_view/operations/find/char/4.cc:
10118         Likewise.
10119         * unittests/basic_string_view/operations/rfind/char/1.cc:
10120         Likewise.
10121         * unittests/basic_string_view/operations/rfind/char/2.cc:
10122         Likewise.
10123         * unittests/basic_string_view/operations/rfind/char/3.cc:
10124         Likewise.
10125         * unittests/basic_string_view/operations/substr/char/1.cc:
10126         Likewise.
10127         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10128         * unittests/string_view-selftests.c: New file.
10129
10130 2018-04-09  Simon Marchi  <[email protected]>
10131
10132         * unittests/basic_string_view/capacity/1.cc: New file.
10133         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10134         * unittests/basic_string_view/cons/char/1.cc: New file.
10135         * unittests/basic_string_view/cons/char/2.cc: New file.
10136         * unittests/basic_string_view/cons/char/3.cc: New file.
10137         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10138         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10139         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10140         * unittests/basic_string_view/element_access/char/1.cc: New file.
10141         * unittests/basic_string_view/element_access/char/2.cc: New file.
10142         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10143         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10144         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10145         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10146         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10147         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10148         * unittests/basic_string_view/include.cc: New file.
10149         * unittests/basic_string_view/inserters/char/1.cc: New file.
10150         * unittests/basic_string_view/inserters/char/2.cc: New file.
10151         * unittests/basic_string_view/inserters/char/3.cc: New file.
10152         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10153         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10154         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10155         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10156         * unittests/basic_string_view/literals/types.cc: New file.
10157         * unittests/basic_string_view/literals/values.cc: New file.
10158         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10159         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10160         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10161         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10162         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10163         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10164         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10165         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10166         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10167         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10168         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10169         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10170         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10171         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10172         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10173         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10174         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10175         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10176         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10177         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10178         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10179         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10180         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10181         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10182         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10183         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10184         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10185         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10186         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10187         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10188         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10189         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10190         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10191         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10192         * unittests/basic_string_view/operators/char/2.cc: New file.
10193         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10194         * unittests/basic_string_view/range_access/char/1.cc: New file.
10195         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10196         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10197         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10198         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10199         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10200         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10201         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10202         * unittests/basic_string_view/typedefs.cc: New file.
10203         * unittests/basic_string_view/types/1.cc: New file.
10204
10205 2018-04-09  Simon Marchi  <[email protected]>
10206
10207         * common/gdb_string_view.h: Remove libstdc++ implementation
10208         details, adjust to gdb reality.
10209         * common/gdb_string_view.tcc: Likewise.
10210         * cli/cli-script.c (struct string_view): Remove.
10211         (user_args) <m_args>: Change element type to gdb::string_view.
10212         (user_args::insert_args): Adjust.
10213
10214 2018-04-09  Simon Marchi  <[email protected]>
10215
10216         * common/gdb_string_view.h: New file.
10217         * common/gdb_string_view.tcc: New file.
10218
10219 2018-04-09  Simon Marchi  <[email protected]>
10220
10221         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10222         * configure: Re-generate.
10223
10224 2018-04-09  Pedro Alves  <[email protected]>
10225
10226         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10227         (set_target_gdbarch): Call
10228         gdb::observers::architecture_changed.notify instead of
10229         observer_notify_architecture_changed.
10230
10231 2018-04-07  Simon Marchi  <[email protected]>
10232
10233         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10234         (do_restore_current_traceframe_cleanup): Remove.
10235         (restore_current_traceframe_cleanup_dtor): Remove.
10236         (make_cleanup_restore_current_traceframe): Remove.
10237         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10238         New.
10239         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10240         * infrun.c (fetch_inferior_event): Use
10241         scoped_restore_current_traceframe.
10242
10243 2018-04-07  Simon Marchi  <[email protected]>
10244
10245         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10246         Remove.
10247         <n_allocated_type_units>: Remove.
10248         <all_type_units>: Change to std::vector.
10249         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10250         to std::vector change.
10251         (dwarf2_per_objfile::get_cutu): Likewise.
10252         (dwarf2_per_objfile::get_tu): Likewise.
10253         (create_signatured_type_table_from_index): Likewise.
10254         (create_signatured_type_table_from_debug_names): Likewise.
10255         (dw2_symtab_iter_next): Likewise.
10256         (dw2_print_stats): Likewise.
10257         (dw2_expand_all_symtabs): Likewise.
10258         (dw2_expand_marked_cus): Likewise.
10259         (dw2_debug_names_iterator::next): Likewise.
10260         (dwarf2_initialize_objfile): Likewise.
10261         (add_signatured_type_cu_to_table): Likewise.
10262         (create_all_type_units): Likewise.
10263         (add_type_unit): Likewise.
10264         (struct tu_abbrev_offset): Add constructor.
10265         (build_type_psymtabs_1): Adjust to std::vector change.
10266         (print_tu_stats): Likewise.
10267         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10268         (write_debug_names): Likewise.
10269
10270 2018-04-07  Simon Marchi  <[email protected]>
10271
10272         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10273         Make an std::vector.
10274         <n_comp_units>: Remove.
10275         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10276         to std::vector change.
10277         (dwarf2_per_objfile::get_cutu): Likewise.
10278         (dwarf2_per_objfile::get_cu): Likewise.
10279         (create_cus_from_index): Likewise.
10280         (create_addrmap_from_index): Likewise.
10281         (create_addrmap_from_aranges): Likewise.
10282         (dwarf2_read_index): Likewise.
10283         (dw2_find_last_source_symtab): Likewise.
10284         (dw2_map_symtabs_matching_filename): Likewise.
10285         (dw2_symtab_iter_next): Likewise.
10286         (dw2_print_stats): Likewise.
10287         (dw2_expand_all_symtabs): Likewise.
10288         (dw2_expand_symtabs_with_fullname): Likewise.
10289         (dw2_expand_marked_cus): Likewise.
10290         (dw2_map_symbol_filenames): Likewise.
10291         (create_cus_from_debug_names): Likewise.
10292         (dwarf2_read_debug_names): Likewise.
10293         (dw2_debug_names_iterator::next): Likewise.
10294         (dwarf2_initialize_objfile): Likewise.
10295         (set_partial_user): Likewise.
10296         (dwarf2_build_psymtabs_hard): Likewise.
10297         (read_comp_units_from_section): Remove arguments, adjust to
10298         std::vector change.
10299         (create_all_comp_units): Adjust to std::vector and
10300         read_comp_units_from_section changes.
10301         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10302         change.
10303         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10304         (psyms_seen_size): Likewise.
10305         (write_gdbindex): Likewise.
10306         (write_debug_names): Likewise.
10307
10308 2018-04-07  Simon Marchi  <[email protected]>
10309
10310         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10311         with dwarf2_per_objfile.
10312         (create_cus_from_index): Likewise.
10313         (create_signatured_type_table_from_index): Likewise.
10314         (dwarf2_read_index): Likewise.
10315         (dwarf2_initialize_objfile): Likewise.
10316         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10317         per_cu rather than get_dwarf2_per_objfile.
10318
10319 2018-04-07  Simon Marchi  <[email protected]>
10320
10321         * dwarf2read.h (struct signatured_type): Forward declare.
10322         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10323         New methods.
10324         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10325         (dw2_get_cutu): ...this.
10326         (dwarf2_per_objfile::get_cu): Rename from...
10327         (dw2_get_cu): ...this.
10328         (dwarf2_per_objfile::get_tu): New.
10329         (create_addrmap_from_index): Adjust.
10330         (create_addrmap_from_aranges): Adjust.
10331         (dw2_find_last_source_symtab): Adjust.
10332         (dw2_map_symtabs_matching_filename): Adjust.
10333         (dw2_symtab_iter_next): Adjust.
10334         (dw2_print_stats): Adjust.
10335         (dw2_expand_all_symtabs): Adjust.
10336         (dw2_expand_symtabs_with_fullname): Adjust.
10337         (dw2_expand_marked_cus): Adjust.
10338         (dw_expand_symtabs_matching_file_matcher): Adjust.
10339         (dw2_map_symbol_filenames): Adjust.
10340         (dw2_debug_names_iterator::next): Adjust.
10341         (dwarf2_initialize_objfile): Adjust.
10342         (set_partial_user): Adjust.
10343         (dwarf2_build_psymtabs_hard): Adjust.
10344
10345 2018-04-07  Simon Marchi  <[email protected]>
10346
10347         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10348         Remove unused variables.
10349         (dw2_map_symtabs_matching_filename): Likewise.
10350         (dwarf2_record_block_ranges): Likewise.
10351         (dwarf2_read_addr_index): Likewise.
10352         (follow_die_offset): Likewise.
10353
10354 2018-04-07  Simon Marchi  <[email protected]>
10355
10356         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10357         to symbol_file_add_main.
10358
10359 2018-04-07  Simon Marchi  <[email protected]>
10360
10361         PR mi/22299
10362         * mi/mi-console.c (do_fputc_async_safe): New.
10363         (mi_console_file::write_async_safe): New.
10364         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10365         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10366         New.
10367         * ui-file.c (ui_file::putstrn): Adjust call to
10368         fputstrn_unfiltered.
10369         * utils.c (printchar): Replace do_fputs and do_fprintf
10370         parameters by do_fputc.
10371         (fputstr_filtered): Adjust call to printchar.
10372         (fputstr_unfiltered): Likewise.
10373         (fputstrn_filtered): Likewise.
10374         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10375         printchar.
10376         * utils.h (do_fputc_ftype): New typedef.
10377         (fputstrn_unfiltered): Add do_fputc parameter.
10378
10379 2018-04-07  Simon Marchi  <[email protected]>
10380
10381         * regformats/i386/i386-avx.dat: Remove.
10382
10383 2018-04-07  Simon Marchi  <[email protected]>
10384
10385         PR gdb/22979
10386         * amd64-tdep.c (amd64_none_init_abi): New function.
10387         (amd64_x32_none_init_abi): New function.
10388         (_initialize_amd64_tdep): Register handlers for x86-64 and
10389         x64_32 with GDB_OSABI_NONE.
10390         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10391         GDB_OSABI_NONE osabi.
10392
10393 2018-04-07  Simon Marchi  <[email protected]>
10394
10395         PR gdb/22980
10396         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10397         GDB_OSABI_NONE.
10398         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10399         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10400
10401 2018-04-07  Simon Marchi  <[email protected]>
10402
10403         * common/byte-vector.h (char_vector): New type.
10404         * target.h (target_read_alloc): Return
10405         gdb::optional<byte_vector>.
10406         (target_read_stralloc): Return gdb::optional<char_vector>.
10407         (target_get_osdata): Return gdb::optional<char_vector>.
10408         * target.c (target_read_alloc_1): Templatize.  Replacement
10409         manual memory management with vector.
10410         (target_read_alloc): Change return type, adjust.
10411         (target_read_stralloc): Change return type, adjust.
10412         (target_get_osdata): Change return type, adjust.
10413         * auxv.c (struct auxv_info) <length>: Remove.
10414         <data>: Change type to gdb::optional<byte_vector>.
10415         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10416         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10417         (target_auxv_search): Adjust.
10418         (fprint_target_auxv): Adjust.
10419         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10420         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10421         (linux_make_corefile_notes): Adjust.
10422         * osdata.c (get_osdata): Adjust.
10423         * remote.c (remote_get_threads_with_qxfer): Adjust.
10424         (remote_memory_map): Adjust.
10425         (remote_traceframe_info): Adjust.
10426         (btrace_read_config): Adjust.
10427         (remote_read_btrace): Adjust.
10428         (remote_pid_to_exec_file): Adjust.
10429         * solib-aix.c (solib_aix_get_library_list): Adjust.
10430         * solib-dsbt.c (decode_loadmap): Don't free buf.
10431         (dsbt_get_initial_loadmaps): Adjust.
10432         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10433         * solib-target.c (solib_target_current_sos): Adjust.
10434         * tracepoint.c (sdata_make_value): Adjust.
10435         * xml-support.c (xinclude_start_include): Adjust.
10436         (xml_fetch_content_from_file): Adjust.
10437         * xml-support.h (xml_fetch_another): Change return type.
10438         (xml_fetch_content_from_file): Change return type.
10439         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10440         * xml-tdesc.c (file_read_description_xml): Adjust.
10441         (fetch_available_features_from_target): Change return type.
10442         (target_fetch_description_xml): Adjust.
10443         (target_read_description_xml): Adjust.
10444
10445 2018-04-06  Tom Tromey  <[email protected]>
10446
10447         * value.c (~value): Update.
10448         (struct value) <contents>: Now unique_xmalloc_ptr.
10449         (value_contents_bits_eq, allocate_value_contents)
10450         (value_contents_raw, value_contents_all_raw)
10451         (value_contents_for_printing, value_contents_for_printing_const)
10452         (set_value_enclosing_type): Update.
10453
10454 2018-04-06  Tom Tromey  <[email protected]>
10455
10456         * value.c (range_s): Remove typedef, VEC.
10457         (struct range): Add operator<.
10458         (range_lessthan): Remove.
10459         (ranges_contain): Change type.
10460         (~value): Update.
10461         (struct value) <unavailable, optimized_out>: Now std::vector.
10462         (value_entirely_available)
10463         (value_entirely_covered_by_range_vector)
10464         (value_entirely_unavailable, value_entirely_optimized_out):
10465         Update.
10466         (insert_into_bit_range_vector): Change argument type.
10467         (find_first_range_overlap): Likewise.
10468         (struct ranges_and_idx, value_contents_bits_eq)
10469         (require_not_optimized_out, require_available): Update.
10470         (ranges_copy_adjusted): Change argument types.
10471         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10472
10473 2018-04-06  Tom Tromey  <[email protected]>
10474
10475         * value.c (~value): Update.
10476         (struct value) <parent>: Now a value_ref_ptr.
10477         (value_parent, set_value_parent, value_address, value_copy):
10478         Update.
10479
10480 2018-04-06  Tom Tromey  <[email protected]>
10481
10482         * value.c (struct value): Add constructor, destructor, and member
10483         initializers.
10484         (allocate_value_lazy, value_decref): Update.
10485
10486 2018-04-06  Tom Tromey  <[email protected]>
10487
10488         * value.c (struct value) <released, next>: Remove.
10489         (all_values): Now a std::vector.
10490         (allocate_value_lazy): Update.
10491         (value_next): Remove.
10492         (value_mark, value_free_to_mark, release_value)
10493         (value_release_to_mark): Update.
10494
10495 2018-04-06  Tom Tromey  <[email protected]>
10496
10497         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10498         (free_value_chain): Remove.
10499         * value.c (free_value_chain): Remove.
10500         (value_release_to_mark): Return a std::vector.
10501         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10502         std::vector.
10503         (check_condition): Update.
10504         * eval.c (fetch_subexp_value): Change "val_chain" to a
10505         std::vector.
10506         * breakpoint.c (update_watchpoint): Update.
10507         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10508
10509 2018-04-06  Tom Tromey  <[email protected]>
10510
10511         * value.h (free_all_values): Remove.
10512         * value.c (free_all_values): Remove.
10513
10514 2018-04-06  Tom Tromey  <[email protected]>
10515
10516         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10517         (value_history_chain, value_history_count): Remove.
10518         (value_history): New global.
10519         (record_latest_value, access_value_history, show_values)
10520         (preserve_values): Update.
10521
10522 2018-04-06  Tom Tromey  <[email protected]>
10523
10524         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10525         * varobj.c (varobj_set_display_format, varobj_set_value)
10526         (install_default_visualizer, construct_visualizer)
10527         (install_new_value, ~varobj, varobj_get_value_type)
10528         (my_value_of_variable, varobj_editable_p): Update.
10529         * c-varobj.c (c_describe_child, c_value_of_variable)
10530         (cplus_number_of_children, cplus_describe_child): Update.
10531         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10532         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10533         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10534
10535 2018-04-06  Tom Tromey  <[email protected]>
10536
10537         * printcmd.c (last_examine_address): Change type to
10538         value_ref_ptr.
10539         (do_examine, x_command): Update.
10540
10541 2018-04-06  Tom Tromey  <[email protected]>
10542
10543         * value.c (release_value): Update.
10544         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10545         (struct bpstats) <val>: Now a value_ref_ptr.
10546         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10547         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10548         (~watchpoint, print_it_watchpoint, watch_command_1)
10549         (invalidate_bp_value_on_memory_change): Update.
10550
10551 2018-04-06  Tom Tromey  <[email protected]>
10552
10553         * varobj.c (varobj_clear_saved_item)
10554         (update_dynamic_varobj_children, install_new_value, ~varobj):
10555         Update.
10556         * value.h (value_incref): Move declaration earlier.
10557         (value_decref): Rename from value_free.
10558         (struct value_ref_policy): New.
10559         (value_ref_ptr): New typedef.
10560         (struct value_deleter): Remove.
10561         (gdb_value_up): Remove typedef.
10562         (release_value): Change return type.
10563         (release_value_or_incref): Remove.
10564         * value.c (set_value_parent): Update.
10565         (value_incref): Change return type.
10566         (value_decref): Rename from value_free.
10567         (value_free_to_mark, free_all_values, free_value_chain): Update.
10568         (release_value): Return value_ref_ptr.
10569         (release_value_or_incref): Remove.
10570         (record_latest_value, set_internalvar, clear_internalvar):
10571         Update.
10572         * stack.c (info_frame_command): Don't call value_free.
10573         * python/py-value.c (valpy_dealloc, valpy_new)
10574         (value_to_value_object): Update.
10575         * printcmd.c (do_examine): Update.
10576         * opencl-lang.c (lval_func_free_closure): Update.
10577         * mi/mi-main.c (register_changed_p): Don't call value_free.
10578         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10579         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10580         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10581         value_free.
10582         * guile/scm-value.c (vlscm_free_value_smob)
10583         (vlscm_scm_from_value): Update.
10584         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10585         (frame_unwind_register_unsigned, get_frame_register_bytes)
10586         (put_frame_register_bytes): Don't call value_free.
10587         * findvar.c (address_from_register): Don't call value_free.
10588         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10589         * dwarf2loc.c (entry_data_value_free_closure)
10590         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10591         (dwarf2_evaluate_loc_desc_full): Update.
10592         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10593         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10594         (~watchpoint, watch_command_1)
10595         (invalidate_bp_value_on_memory_change): Update.
10596         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10597
10598 2018-04-06  Simon Marchi  <[email protected]>
10599
10600         PR gdb/23022
10601         * warning.m4: Add -Wno-error=deprecated-register.
10602         * configure: Re-generate.
10603
10604 2018-04-05  Tom Tromey  <[email protected]>
10605
10606         * linespec.h: Remove include of "vec.h".
10607
10608 2018-04-05  Tom Tromey  <[email protected]>
10609
10610         * linespec.c (typep): Remove typedef.
10611         (find_methods, find_superclass_methods): Take a std::vector.
10612         (find_method): Use std::vector.
10613
10614 2018-04-05  Tom Tromey  <[email protected]>
10615
10616         * utils.c (compare_strings): Remove.
10617         * utils.h (compare_strings): Remove.
10618         * objc-lang.h (find_imps): Update.
10619         * objc-lang.c (find_methods): Take a std::vector.
10620         (uniquify_strings, find_imps): Likewise.
10621         * linespec.c (find_methods): Take a std::vector.
10622         (decode_objc): Use std::vector.
10623         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10624         a std::vector.
10625         (find_method, find_function_symbols): Use std::vector.
10626
10627 2018-04-05  Tom Tromey  <[email protected]>
10628
10629         * completer.c (completion_tracker::completion_tracker): Remove
10630         cast.
10631         (completion_tracker::discard_completions): Likewise.
10632         * breakpoint.c (ambiguous_names_p): Remove cast.
10633         * ada-lang.c (_initialize_ada_language): Remove cast.
10634         * utils.h (streq): Update.
10635         (streq_hash): Add new declaration.
10636         * utils.c (streq): Return bool.
10637         (streq_hash): New function.
10638
10639 2018-04-05  Tom Tromey  <[email protected]>
10640
10641         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10642         Remove a string copy.
10643
10644 2018-04-05  Tom Tromey  <[email protected]>
10645
10646         * linespec.c (filter_results): Use std::vector.
10647         (decode_line_2, decode_line_full): Update.
10648
10649 2018-04-05  Tom Tromey  <[email protected]>
10650
10651         * linespec.c (canonical_to_fullform): Return std::string.
10652         (filter_results): Update.
10653         (struct decode_line_2_item): Add constructor.
10654         <fullform, displayform>: Now std::string.
10655         (decode_line_2_compare_items): Now a std::sort comparator.
10656         (decode_line_2): Update.
10657
10658 2018-04-05  Tom Tromey  <[email protected]>
10659
10660         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10661         (unexpected_linespec_error): Update.
10662         (linespec_parse_basic, parse_linespec): Update.
10663
10664 2018-04-05  Tom Tromey  <[email protected]>
10665
10666         * linespec.c (linespec_parse_basic): Reindent.
10667
10668 2018-04-05  Tom Tromey  <[email protected]>
10669
10670         * minsyms.h (iterate_over_minimal_symbols): Update.
10671         * minsyms.c (iterate_over_minimal_symbols): Take a
10672         gdb::function_view.
10673         * linespec.c (struct collect_minsyms): Remove.
10674         (compare_msyms): Now a std::sort comparator.
10675         (add_minsym): Add parameters.
10676         (search_minsyms_for_name): Update.  Use std::vector.
10677
10678 2018-04-03  Tom Tromey  <[email protected]>
10679
10680         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10681         gdb::byte_vector.
10682
10683 2018-04-02  Weimin Pan  <[email protected]>
10684
10685         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10686
10687 2018-04-02  Weimin Pan  <[email protected]>
10688
10689         PR gdb/16959
10690         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10691         printing static type.
10692
10693 2018-04-01  Tom Tromey  <[email protected]>
10694
10695         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10696         (rs6000_xfer_shared_libraries): Update.
10697
10698 2018-04-01  Simon Marchi  <[email protected]>
10699
10700         * common/gdb_vecs.h (char_ptr): Remove.
10701         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10702
10703 2018-03-30  Simon Marchi  <[email protected]>
10704
10705         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10706         with std::vector.
10707         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10708
10709 2018-03-30  Simon Marchi  <[email protected]>
10710
10711         * tracepoint.h (struct uploaded_tp): Initialize fields.
10712         <actions, step_actions, cmd_strings>: Change type to
10713         std::vector<char *>.
10714         * tracepoint.c (get_uploaded_tp): Allocate with new.
10715         (free_uploaded_tps): Free with delete.
10716         (parse_tracepoint_definition): Adjust to std::vector change.
10717         * breakpoint.c (read_uploaded_action): Likewise.
10718         (create_tracepoint_from_upload): Likewise.
10719         * ctf.c (ctf_write_uploaded_tp): Likewise.
10720         (SET_ARRAY_FIELD): Likewise.
10721         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10722
10723 2018-03-30  Tom Tromey  <[email protected]>
10724
10725         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10726         std::unique_ptr.
10727         (svr4_keep_data_in_core): Update.
10728         (svr4_read_so_list): Update.
10729
10730 2018-03-30  Tom Tromey  <[email protected]>
10731
10732         * windows-nat.c (handle_output_debug_string, handle_exception):
10733         Update.
10734         * target.h (target_read_string): Update.
10735         * target.c (target_read_string): Change "string" to
10736         unique_xmalloc_ptr.
10737         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10738         Update.
10739         * solib-frv.c (frv_current_sos): Update.
10740         * solib-dsbt.c (dsbt_current_sos): Update.
10741         * solib-darwin.c (darwin_current_sos): Update.
10742         * linux-thread-db.c (inferior_has_bug): Update.
10743         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10744         Update.  Remove alloca.
10745         * ada-lang.c (ada_main_name): Update.
10746
10747 2018-03-30  Tom Tromey  <[email protected]>
10748
10749         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10750         (struct dwo_file_deleter): New.
10751         (dwo_file_up): New typedef.
10752         (open_and_init_dwo_file): Use dwo_file_up.
10753         (free_dwo_file_cleanup): Remove.
10754
10755 2018-03-30  Tom Tromey  <[email protected]>
10756
10757         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10758         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10759
10760 2018-03-30  Tom Tromey  <[email protected]>
10761
10762         * dwarf2read.c (class free_cached_comp_units): New class.
10763         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10764         (free_cached_comp_units): Remove function.
10765
10766 2018-03-30  Tom Tromey  <[email protected]>
10767
10768         * utils.h (make_cleanup_unpush_target): Remove.
10769         * inf-ptrace.c (struct target_unpusher): New.
10770         (target_unpush_up) New typedef.
10771         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10772         target_unpush_up.
10773         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10774
10775 2018-03-27  Tom Tromey  <[email protected]>
10776
10777         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10778
10779 2018-03-27  Pedro Alves  <[email protected]>
10780             Tom Tromey  <[email protected]>
10781
10782         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10783         destructor.  Now a class.
10784         (gdb_readline_wrapper_cleanup): Remove function.
10785         (gdb_readline_wrapper): Remove cleanups.
10786
10787 2018-03-27  Tom Tromey  <[email protected]>
10788
10789         * typeprint.h (struct type_print_options) <local_typedefs,
10790         global_typedefs>: Remove "struct" keyword.
10791         (class typedef_hash_table): New class.
10792         (recursively_update_typedef_hash, add_template_parameters)
10793         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10794         (find_typedef_in_hash): Don't declare.
10795         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10796         (typedef_hash_table::recursively_update): Rename from
10797         recursively_update_typedef_hash.  Now a member.
10798         (typedef_hash_table::add_template_parameters): Rename from
10799         add_template_parameters.  Now a member.
10800         (typedef_hash_table::typedef_hash_table): Now a constructor;
10801         rename from create_typedef_hash.
10802         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10803         rename from free_typedef_hash.
10804         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10805         (do_free_global_table): Remove.
10806         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10807         from copy_type_recursive.
10808         (create_global_typedef_table): Remove.
10809         (typedef_hash_table::find_global_typedef): Now a member of
10810         typedef_hash_table.
10811         (typedef_hash_table::find_typedef): Rename from
10812         find_typedef_in_hash; now a member.
10813         (whatis_exp): Update.
10814         * extension.h (struct ext_lang_type_printers): Add constructor and
10815         destructor.
10816         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10817         declare.
10818         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10819         Now a constructor; rename from start_ext_lang_type_printers.
10820         (ext_lang_type_printers): Now a destructor; rename from
10821         free_ext_lang_type_printers.
10822         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10823         Update.
10824         (c_type_print_base_struct_union): Update.  Remove cleanups.
10825
10826 2018-03-27  Tom Tromey  <[email protected]>
10827
10828         * dwarf-index-write.c: Include <cmath>.
10829
10830 2018-03-27  Joel Brobecker  <[email protected]>
10831
10832         * NEWS: Add entry describing new "set|show varsize-limit" command.
10833         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10834         command.
10835         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10836         "set variable".
10837
10838 2018-03-27  Simon Marchi  <[email protected]>
10839
10840         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10841         dwarf-index-write.c
10842         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10843         * dwarf-index-common.c: New file.
10844         * dwarf-index-common.h: New file.
10845         * dwarf-index-write.c: New file.
10846         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10847         (struct dwarf2_section_info): Move from here.
10848         (dwarf2_section_info_def): Likewise.
10849         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10850         (offset_type): Likewise.
10851         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10852         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10853         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10854         (byte_swap): Likewise.
10855         (MAYBE_SWAP): Likewise.
10856         (dwarf2_per_cu_ptr): Likewise.
10857         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10858         (struct tu_stats): Likewise.
10859         (struct dwarf2_per_objfile): Likewise.
10860         (struct dwarf2_per_cu_data): Likewise.
10861         (struct signatured_type): Likewise.
10862         (sig_type_ptr): Likewise.
10863         (DEF_VEC_P (sig_type_ptr)): Likewise.
10864         (INDEX4_SUFFIX): Likewise.
10865         (INDEX5_SUFFIX): Likewise.
10866         (DEBUG_STR_SUFFIX): Likewise.
10867         (dwarf2_read_section): Make non-static.
10868         (mapped_index_string_hash): Move from here.
10869         (dwarf5_djb_hash): Likewise.
10870         (file_write): Likewise.
10871         (class data_buf): Likewise.
10872         (struct symtab_index_entry): Likewise.
10873         (struct mapped_symtab): Likewise.
10874         (find_slot): Likewise.
10875         (hash_expand): Likewise.
10876         (add_index_entry): Likewise.
10877         (uniquify_cu_indices): Likewise.
10878         (class c_str_view): Likewise.
10879         (class c_str_view_hasher): Likewise.
10880         (class vector_hasher): Likewise.
10881         (write_hash_table): Likewise.
10882         (psym_index_map): Likewise.
10883         (struct addrmap_index_data): Likewise.
10884         (add_address_entry): Likewise.
10885         (add_address_entry_worker): Likewise.
10886         (write_address_map): Likewise.
10887         (symbol_kind): Likewise.
10888         (write_psymbols): Likewise.
10889         (struct signatured_type_index_data): Likewise.
10890         (write_one_signatured_type): Likewise.
10891         (recursively_count_psymbols): Likewise.
10892         (recursively_write_psymbols): Likewise.
10893         (class debug_names): Likewise.
10894         (check_dwarf64_offsets): Likewise.
10895         (psyms_seen_size): Likewise.
10896         (write_gdbindex): Likewise.
10897         (write_debug_names): Likewise.
10898         (assert_file_size): Likewise.
10899         (write_psymtabs_to_index): Likewise.
10900         (save_gdb_index_command): Likewise.
10901         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10902         command.
10903         * dwarf2read.h: New file.
10904
10905 2018-03-27  Joel Brobecker  <[email protected]>
10906
10907         PR gdb/22670
10908         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10909         symbol name if the CU's language stores symbol names in linkage
10910         format.
10911         * language.h (struct language_defn)
10912         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10913         all instances of this struct.
10914
10915 2018-03-26  Tom Tromey  <[email protected]>
10916
10917         * stack.c (backtrace_command_1): Remove verbose code.
10918
10919 2018-03-26  Tom Tromey  <[email protected]>
10920
10921         * python/py-framefilter.c (py_print_type): Don't catch
10922         exceptions.  Return void.
10923         (py_print_value): Likewise.
10924         (py_print_single_arg): Likewise.
10925         (enumerate_args): Don't catch exceptions.
10926         (py_print_args): Likewise.
10927         (py_print_frame): Likewise.
10928         (gdbpy_apply_frame_filter): Catch exceptions here.
10929
10930 2018-03-26  Tom Tromey  <[email protected]>
10931
10932         * stack.c (_initialize_stack): Remove trailing newlines from help
10933         text.  Add "Usage" line to "backtrace" help.
10934
10935 2018-03-26  Tom Tromey  <[email protected]>
10936
10937         PR python/16486:
10938         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10939
10940 2018-03-26  Tom Tromey  <[email protected]>
10941
10942         * python/py-framefilter.c (py_print_single_arg): Return
10943         EXT_LANG_BT_ERROR from catch.
10944
10945 2018-03-26  Tom Tromey  <[email protected]>
10946
10947         PR backtrace/15584:
10948         * stack.c (backtrace_command_1): Move some code into no-filters
10949         "if".
10950
10951 2018-03-26  Tom Tromey  <[email protected]>
10952
10953         * python/py-framefilter.c (throw_quit_or_print_exception): New
10954         function.
10955         (gdbpy_apply_frame_filter): Use it.
10956
10957 2018-03-26  Tom Tromey  <[email protected]>
10958
10959         PR cli/17716:
10960         * python/py-framefilter.c (py_print_type, py_print_value)
10961         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10962         RETURN_MASK_ERROR.
10963
10964 2018-03-26  Tom Tromey  <[email protected]>
10965
10966         * python/py-framefilter.c (enumerate_args): Use
10967         gdb::unique_xmalloc_ptr.
10968
10969 2018-03-26  Tom Tromey  <[email protected]>
10970
10971         * python/py-framefilter.c (py_print_frame): Return
10972         EXT_LANG_BT_OK.
10973         (gdbpy_apply_frame_filter): Update comment.
10974         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10975         Remove.
10976         <EXT_LANG_BT_NO_FILTERS>: Change value.
10977
10978 2018-03-26  Tom Tromey  <[email protected]>
10979
10980         PR backtrace/15582:
10981         * stack.c (backtrace_command): Parse "hide" argument.
10982         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10983         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10984         constant.
10985
10986 2018-03-26  Tom Tromey  <[email protected]>
10987
10988         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10989         add "flags".
10990         (backtrace_command): Remove "fulltrace", add "flags".
10991
10992 2018-03-26  Tom Tromey  <[email protected]>
10993
10994         * stack.c (backtrace_command): Rewrite command line parsing.
10995
10996 2018-03-26  Simon Marchi  <[email protected]>
10997
10998         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10999
11000 2018-03-26  Simon Marchi  <[email protected]>
11001
11002         * filename-seen-cache.h: Add include guard.
11003
11004 2018-03-26  Keith Seitz  <[email protected]>
11005
11006         * symfile.c (place_section): Remove "struct" from section_addr_info
11007         in comment.
11008         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11009         "struct" keyword from section_addr_info.
11010
11011 2018-03-26  Alan Hayward  <[email protected]>
11012
11013         * regformats/regdef.h (reg): Add constructors.
11014
11015 2018-03-25  Pedro Alves  <[email protected]>
11016
11017         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11018         if then/else bodies in var_func_name extraction.
11019
11020 2018-03-23  Weimin Pan  <[email protected]>
11021
11022         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11023         lookup_minimal_symbol() to find symbol entry.
11024         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11025
11026 2018-03-23  Keith Seitz  <[email protected]>
11027
11028         PR c++/22968
11029         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11030         nested type definitions for C++, too.
11031
11032 2018-03-23  Tom Tromey  <[email protected]>
11033
11034         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11035         a typedef.
11036         (macho_register_oso): Remove.
11037         (macho_symtab_read): Take a std::vector.
11038         (oso_el_compare_name): Now a std::sort comparator.
11039         (macho_symfile_read_all_oso): Take a std::vector.
11040         (macho_symfile_read): Use std::vector.  Remove cleanups.
11041
11042 2018-03-22  Tom Tromey  <[email protected]>
11043
11044         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11045         (record_full_goto_bookmark): Use std::string.
11046
11047 2018-03-22  Pedro Franco de Carvalho  <[email protected]>
11048
11049         PR tdep/18295
11050         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11051         a single mask.
11052
11053 2018-03-22  Pedro Franco de Carvalho  <[email protected]>
11054
11055         * rs6000-tdep.c (store_insn_p): New function.
11056         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11057         and cr_reg to their unshifted values. Use store_insn_p to
11058         match LR saves using either R1 or fdata->alloca_reg. Use
11059         store_insn_p to match CR saves. Set alloca_reg_offset
11060         when alloca_reg and framep are set. Remove lr_reg shift
11061         when assigning to fdata->lr_register.
11062
11063 2018-03-22  Andreas Arnez  <[email protected]>
11064
11065         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11066         command line args instead of emitting a warning.
11067
11068 2018-03-22  Simon Marchi  <[email protected]>
11069
11070         * tracepoint.h (struct static_tracepoint_marker): Initialize
11071         fields, define default constructor, move constructor and move
11072         assignment, disable the rest.
11073         <str_id, extra>: Make std::string.
11074         (release_static_tracepoint_marker): Remove.
11075         (free_current_marker): Remove.
11076         * tracepoint.c (free_current_marker): Remove.
11077         (parse_static_tracepoint_marker_definition): Adjust to
11078         std::string, use new hex2str overload.
11079         (release_static_tracepoint_marker): Remove.
11080         (print_one_static_tracepoint_marker): Get marker by reference
11081         and adjust to std::string.
11082         (info_static_tracepoint_markers_command): Adjust to std::vector
11083         changes
11084         * target.h (static_tracepoint_marker_p): Remove typedef.
11085         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11086         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11087         bool.
11088         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11089         * target-debug.h
11090         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11091         (target_debug_print_std_vector_static_tracepoint_marker): New.
11092         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11093         to...
11094         (target_debug_print_static_tracepoint_marker_p): ... this.
11095         * target-delegates.c: Re-generate.
11096         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11097         Make std::string.
11098         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11099         (decode_static_tracepoint_spec): Adjust to std::vector.
11100         (tracepoint_print_one_detail): Adjust to std::string.
11101         (strace_marker_decode_location): Adjust to std::string.
11102         (update_static_tracepoint): Adjust to std::string, remove call
11103         to release_static_tracepoint_marker.
11104         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11105         Adjust to std::vector.
11106         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11107         (remote_static_tracepoint_markers_by_strid): Adjust to
11108         std::vector.
11109         * common/rsp-low.h (hex2str): New overload with explicit count
11110         of bytes.
11111         * common/rsp-low.c (hex2str): New overload with explicit count
11112         of bytes.
11113         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11114         (_initialize_rsp_low_selftests): Add test_hex2str test.
11115         * unittests/tracepoint-selftests.c
11116         (test_parse_static_tracepoint_marker_definition): Adjust to
11117         std::string.
11118
11119 2018-03-22  Simon Marchi  <[email protected]>
11120
11121         * tracepoint.c (parse_static_tracepoint_marker_definition):
11122         Consider case where the definition is followed by more
11123         definitions.
11124         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11125         tracepoint-selftests.c.
11126         * unittests/tracepoint-selftests.c: New.
11127
11128 2018-03-21  Pedro Franco de Carvalho  <[email protected]>
11129
11130         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11131         Carvalho.
11132
11133 2018-03-20  Stephen Roberts  <[email protected]>
11134
11135         * symtab.c (find_pc_sect_line): fixed indentation.
11136
11137 2018-03-20  Stephen Roberts  <[email protected]>
11138
11139         * symtab.c (find_pc_sect_line): now uses binary search.
11140
11141 2018-03-19  Tom Tromey  <[email protected]>
11142
11143         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11144         "IDENT" production.
11145
11146 2018-03-19  Pedro Alves  <[email protected]>
11147             Tom Tromey  <[email protected]>
11148
11149         * unittests/observable-selftests.c: New file.
11150         * common/observable.h: New file.
11151         * observable.h: New file.
11152         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11153         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11154         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11155         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11156         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11157         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11158         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11159         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11160         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11161         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11162         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11163         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11164         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11165         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11166         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11167         tui/tui-interp.c, valops.c: Update all users.
11168         * tui/tui-hooks.c (tui_bp_created_observer)
11169         (tui_bp_deleted_observer, tui_bp_modified_observer)
11170         (tui_inferior_exit_observer, tui_before_prompt_observer)
11171         (tui_normal_stop_observer, tui_register_changed_observer):
11172         Remove.
11173         (tui_observers_token): New global.
11174         (attach_or_detach, tui_attach_detach_observers): New functions.
11175         (tui_install_hooks, tui_remove_hooks): Use
11176         tui_attach_detach_observers.
11177         * record-btrace.c (record_btrace_thread_observer): Remove.
11178         (record_btrace_thread_observer_token): New global.
11179         * observer.sh: Remove.
11180         * observer.c: Rename to observable.c.
11181         * observable.c (namespace gdb_observers): Define new objects.
11182         (observer_debug): Move into gdb_observers namespace.
11183         (struct observer, struct observer_list, xalloc_observer_list_node)
11184         (xfree_observer_list_node, generic_observer_attach)
11185         (generic_observer_detach, generic_observer_notify): Remove.
11186         (_initialize_observer): Update.
11187         Don't include observer.inc.
11188         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11189         (clean mostlyclean): Likewise.
11190         (observer.h, observer.inc): Remove targets.
11191         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11192         (COMMON_SFILES): Use observable.c, not observer.c.
11193         * .gitignore: Remove observer.h.
11194
11195 2018-03-18  Tom Tromey  <[email protected]>
11196
11197         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11198         gdb::def_vector.
11199         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11200
11201 2018-03-17  Tom Tromey  <[email protected]>
11202
11203         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11204
11205 2018-03-17  Tom Tromey  <[email protected]>
11206
11207         * target.c (class scoped_target_fd): New.
11208         (target_fileio_close_cleanup): Remove.
11209         (target_fileio_read_alloc_1): Use scoped_target_fd.
11210
11211 2018-03-16  Simon Marchi  <[email protected]>
11212
11213         * silent-rules.mk: New.
11214         * Makefile.in: Include silent-rules.mk
11215         (srcdir, VPATH, top_srcdir): Move up.
11216         (COMPILE): Add ECHO_CXX.
11217         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11218         (init.c): Add ECHO_INIT_C.
11219         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11220         (version.c): Add ECHO_GEN.
11221         (printcmd.o): Add ECHO_CXX.
11222         (target-float.o): Add ECHO_CXX.
11223         (ada-exp.o): Add ECHO_CXX.
11224         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11225         (insight$(EXEEXT)): Add ECHO_CXXLD.
11226         * gnulib/configure.ac: Add AM_SILENT_RULES.
11227         * gnulib/aclocal.m4: Re-generate.
11228         * gnulib/configure: Re-generate.
11229         * gnulib/import/Makefile.in: Re-generate.
11230
11231 2018-03-16  Tom Tromey  <[email protected]>
11232
11233         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11234         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11235         * utils.c (do_free_section_addr_info)
11236         (make_cleanup_free_section_addr_info): Remove.
11237         * symfile.h (struct other_sections): Add constructor.
11238         (struct section_addr_info): Remove.
11239         (section_addr_info): New typedef.
11240         (struct sym_fns) <sym_offsets>: Change type of parameter.
11241         (build_section_addr_info_from_objfile)
11242         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11243         (default_symfile_offsets, symbol_file_add)
11244         (symbol_file_add_from_bfd)
11245         (build_section_addr_info_from_section_table): Update.
11246         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11247         * symfile.c (alloc_section_addr_info): Remove.
11248         (build_section_addr_info_from_section_table): Change return type.
11249         Update.
11250         (build_section_addr_info_from_bfd)
11251         (build_section_addr_info_from_objfile): Likewise.
11252         (free_section_addr_info): Remove.
11253         (relative_addr_info_to_section_offsets): Change type of "addrs".
11254         (addrs_section_compar): Now a std::sort comparator.
11255         (addrs_section_sort): Change return type.
11256         (addr_info_make_relative): Change type of "addrs".  Update.
11257         (default_symfile_offsets, syms_from_objfile_1)
11258         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11259         (symbol_file_add_separate): Update.
11260         (symbol_file_add): Change type of "addrs".  Update.
11261         (add_symbol_file_command): Update.  Remove cleanups.
11262         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11263         cleanups.
11264         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11265         * solib.c (solib_read_symbols): Update.
11266         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11267         * machoread.c (macho_symfile_offsets): Update.
11268         * jit.c (jit_bfd_try_read_symtab): Update.
11269
11270 2018-03-15  Simon Marchi  <[email protected]>
11271
11272         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11273         unittests/utils-selftests.c.
11274         * unittests/utils-selftests.c: New file.
11275
11276 2018-03-14  Tom Tromey  <[email protected]>
11277
11278         PR cli/14977:
11279         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11280         for NULL.
11281
11282 2018-03-14  Tom Tromey  <[email protected]>
11283
11284         PR cli/19918:
11285         * printcmd.c (printf_pointer): Allow "-" in format.
11286
11287 2018-03-14  Tom Tromey  <[email protected]>
11288
11289         * printcmd.c (_initialize_printcmd): Add usage to printf.
11290
11291 2018-03-14  Yao Qi  <[email protected]>
11292
11293         * MAINTAINERS: Update my email address.
11294
11295 2018-03-13  Tom Tromey  <[email protected]>
11296
11297         * machoread.c (macho_check_dsym): Change filenamep to a
11298         std::string*.
11299         (macho_symfile_read): Update.
11300         * symfile.c (load_command): Use std::string.
11301
11302 2018-03-12  Andrew Burgess  <[email protected]>
11303
11304         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11305         to error message string.
11306         (riscv_register_name): Use xsnprintf instead of sprintf.
11307         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11308         internal_error.
11309         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11310         error.
11311         (riscv_push_dummy_call): Likewise.
11312
11313 2018-03-12  Tom Tromey  <[email protected]>
11314
11315         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11316         Use gdb::byte_vector.
11317         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11318
11319 2018-03-12  Yao Qi  <[email protected]>
11320
11321         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11322         parameter type to readable_regcache.
11323         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11324         the declaration.
11325
11326 2018-03-11  Tom Tromey  <[email protected]>
11327
11328         * dwarf2read.c (struct nextfield): Add initializers.
11329         (struct nextfnfield): Remove.
11330         (struct fnfieldlist): Add initializers.  Remove "length" and
11331         "head", use std::vector.
11332         (struct decl_field_list): Remove.
11333         (struct field_info): Add initializers.
11334         <fields, baseclasses>: Now std::vector.
11335         <nbaseclasses, nfnfields, typedef_field_list_count,
11336         nested_types_list_count>: Remove.
11337         (dwarf2_add_field, dwarf2_add_type_defn)
11338         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11339         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11340         (process_structure_scope): Update.
11341
11342 2018-03-11  Tom Tromey  <[email protected]>
11343
11344         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11345         for use by std::sort.
11346         (build_type_psymtabs_1): Use std::vector.
11347
11348 2018-03-09  Eli Zaretskii  <[email protected]>
11349
11350         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11351         and LIBMPFR in the printed configuration.
11352
11353 2018-03-08  Tom Tromey  <[email protected]>
11354
11355         * source.c (get_filename_and_charpos): Use scoped_fd.
11356         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11357         (procfs_pidlist): Likewise.
11358         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11359         (iterate_over_mappings): Likewise.
11360
11361 2018-03-08  Tom Tromey  <[email protected]>
11362
11363         * infcall.c (struct call_return_meta_info)
11364         <stack_temporaries_enabled>: Remove.
11365         (get_call_return_value, call_function_by_hand_dummy): Update.
11366         * thread.c (disable_thread_stack_temporaries): Remove.
11367         (enable_thread_stack_temporaries): Remove.
11368         (thread_stack_temporaries_enabled_p): Return bool.
11369         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11370         (get_last_thread_stack_temporary): Update.
11371         * eval.c (evaluate_subexp): Update.
11372         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11373         class, not a function.
11374         (value_ptr, value_vec): Remove typedefs.
11375         (class thread_info) <stack_temporaries_enabled>: Now bool.
11376         <stack_temporaries>: Now a std::vector.
11377         (thread_stack_temporaries_enabled_p)
11378         (value_in_thread_stack_temporaries): Return bool.
11379
11380 2018-03-08  Simon Marchi  <[email protected]>
11381
11382         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11383         (getpkt_or_notif_sane_1): Likewise.
11384
11385 2018-03-08  Simon Marchi  <[email protected]>
11386
11387         * build-id.c (build_id_to_debug_bfd): Use std::string.
11388
11389 2018-03-08  Simon Marchi  <[email protected]>
11390
11391         * build-id.c (find_separate_debug_file_by_buildid): Return
11392         std::string.
11393         * build-id.h (find_separate_debug_file_by_buildid): Return
11394         std::string.
11395         * coffread.c (coff_symfile_read): Adjust to std::string.
11396         * elfread.c (elf_symfile_read): Adjust to std::string.
11397         * symfile.c (separate_debug_file_exists): Change parameter to
11398         std::string.
11399         (find_separate_debug_file): Return std::string.
11400         (find_separate_debug_file_by_debuglink): Return std::string.
11401         * symfile.h (find_separate_debug_file_by_debuglink): Return
11402         std::string.
11403
11404 2018-03-08  Simon Marchi  <[email protected]>
11405
11406         * common/xml-utils.c (xml_escape_text): Move code to...
11407         (xml_escape_text_append): ... this new function.
11408         * common/xml-utils.h (xml_escape_text_append): New declaration.
11409         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11410         New function.
11411         (_initialize_xml_utils): register test_xml_escape_text_append as
11412         a selftest.
11413
11414 2018-03-07  Alan Hayward  <[email protected]>
11415
11416         * defs.h: Remove MAX_REGISTER_SIZE.
11417         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11418         asserts.
11419         * python/py-unwind.c (pyuw_sniffer): Likewise.
11420
11421 2018-03-07  Tom Tromey  <[email protected]>
11422
11423         * linux-tdep.c (linux_info_proc): Update.
11424         * target.h (struct target_ops) <to_fileio_readlink>: Return
11425         optional<string>.
11426         (target_fileio_readlink): Return optional<string>.
11427         * remote.c (remote_hostio_readlink): Return optional<string>.
11428         * inf-child.c (inf_child_fileio_readlink): Return
11429         optional<string>.
11430         * target.c (target_fileio_readlink): Return optional<string>.
11431
11432 2018-03-07  Andrew Burgess  <[email protected]>
11433
11434         * regcache.c (cooked_read_test): Add riscv to the list of
11435         architectures that have a save_reggroup.
11436
11437 2018-03-07  Andreas Arnez  <[email protected]>
11438
11439         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11440         value is not a dynamic class object.
11441
11442 2018-03-06  Tom Tromey  <[email protected]>
11443
11444         * rust-exp.y: Formatting fixes.
11445
11446 2018-03-06  Andrew Burgess  <[email protected]>
11447
11448         * riscv-tdep.c (riscv_register_name): Remove target description
11449         support.
11450         (riscv_gdbarch_init): Remove target description check.
11451
11452 2018-03-06  Andrew Burgess  <[email protected]>
11453
11454         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11455         comment.
11456         * riscv-tdep.h: Likewise.
11457
11458 2018-03-06  Andrew Burgess  <[email protected]>
11459
11460         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11461         (riscv_pseudo_register_write): Delete.
11462         (riscv_gdbarch_init): Remove all use of pseudo registers.
11463
11464 2018-03-06  Simon Marchi  <[email protected]>
11465
11466         * record-btrace.c (btrace_print_lines): Replace cleanup
11467         parameter with RAII equivalents.
11468         (btrace_insn_history): Replace cleanup with RAII equivalents.
11469         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11470         make_cleanup_ui_out_tuple_begin_end): Remove.
11471         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11472         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11473         make_cleanup_ui_out_list_begin_end): Remove.
11474
11475 2018-03-06  Simon Marchi  <[email protected]>
11476
11477         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11478         parameter types to std::vector.  Use bool.
11479         (record_btrace_wait): Replace VEC(tp_t) with
11480         std::vector<thread_info *>.
11481         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11482
11483 2018-03-06  Simon Marchi  <[email protected]>
11484
11485         * record-btrace.c (record_btrace_disable_callback): Remove.
11486         (struct scoped_btrace_disable): New.
11487         (record_btrace_open): Use scoped_btrace_disable.
11488
11489 2018-03-06  Andrew Burgess  <[email protected]>
11490
11491         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11492         reading values from registers.
11493
11494 2018-03-06  Andrew Burgess  <[email protected]>
11495
11496         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11497         where appropriate.
11498
11499 2018-03-06  Andrew Burgess  <[email protected]>
11500
11501         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11502         change parameter type.  Use GDB's print functions, and use
11503         core_addr_to_string where appropriate.
11504         (riscv_push_dummy_call): Use core_addr_to_string where
11505         appropriate, update call to riscv_print_arg_location, and reindent
11506         a few lines.
11507         (riscv_return_value): Update call to riscv_print_arg_location.
11508
11509 2018-03-06  Andrew Burgess  <[email protected]>
11510             Tim Newsome <[email protected]>
11511             Albert Ou <[email protected]>
11512             Darius Rad <[email protected]>
11513
11514         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11515         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11516         (ALLDEPFILES): Add riscv-tdep.c
11517         * configure.tgt: Add riscv support.
11518         * riscv-tdep.c: New file.
11519         * riscv-tdep.h: New file.
11520         * NEWS: Mention new target.
11521         * MAINTAINERS: Add entry for riscv.
11522
11523 2018-03-06  Andrew Burgess  <[email protected]>
11524
11525         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11526         fields within aggregates.
11527
11528 2018-03-04  Simon Marchi  <[email protected]>
11529
11530         * record-btrace.c (btrace_print_lines): Change type of flags to
11531         gdb_disassembly_flags.
11532
11533 2018-03-04  John Baldwin  <[email protected]>
11534
11535         * fbsd-nat.c: Include "inf-ptrace.h".
11536         (USE_SIGTRAP_SIGINFO): Conditionally define.
11537         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11538         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11539         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11540         function.
11541         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11542         Likewise.
11543         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11544         Likewise.
11545         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11546         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11547         "supports_stopped_by_hw_breakpoint" target methods.
11548
11549 2018-03-04  John Baldwin  <[email protected]>
11550
11551         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11552         * fbsd-nat.c (debug_fbsd_nat): New variable.
11553         (show_fbsd_nat_debug): New function.
11554         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11555         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11556
11557 2018-03-04  John Baldwin  <[email protected]>
11558
11559         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11560         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11561         prototype.
11562         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11563         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11564         method.
11565
11566 2018-03-02  Simon Marchi  <[email protected]>
11567
11568         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11569         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11570
11571 2018-03-02  Simon Marchi  <[email protected]>
11572
11573         * charset.c (struct charset_vector): New.
11574         (charsets): Change type to charset_vector.
11575         (find_charset_names): Adjust.
11576         (add_one): Adjust.
11577         (_initialize_charset): Adjust.
11578
11579 2018-03-02  Simon Marchi  <[email protected]>
11580
11581         * progspace.h (struct program_space) <deleted_solibs>: Change
11582         type to std::vector<std::string>.
11583         * progspace.c (clear_program_space_solib_cache): Adjust.
11584         * breakpoint.c (print_solib_event): Adjust.
11585         (check_status_catch_solib): Adjust.
11586         * solib.c (update_solib_list): Adjust.
11587         * ui-out.h (class ui_out) <field_string>: New overload.
11588         * ui-out.c (ui_out::field_string): New overload.
11589
11590 2018-03-02  Simon Marchi  <[email protected]>
11591
11592         * progspace.h (struct program_space): Add constructor and
11593         destructor, initialize fields.
11594         (add_program_space): Remove.
11595         * progspace.c (add_program_space): Rename to...
11596         (program_space::program_space): ... this.
11597         (release_program_space): Rename to...
11598         (program_space::~program_space): ... this.
11599         (delete_program_space): Use delete to delete program_space.
11600         (initialize_progspace): Use new to allocate program_space.
11601         * inferior.c (add_inferior_with_spaces): Likewise.
11602         (clone_inferior_command): Likewise.
11603         * infrun.c (follow_fork_inferior): Likewise.
11604         (handle_vfork_child_exec_or_exit): Likewise.
11605
11606 2018-03-02  Simon Marchi  <[email protected]>
11607
11608         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11609         (delim_string_to_char_ptr_vec): Return std::vector of
11610         gdb::unique_xmalloc_ptr.
11611         (dirnames_to_char_ptr_vec_append): Take std::vector of
11612         gdb::unique_xmalloc_ptr.
11613         (dirnames_to_char_ptr_vec): Return std::vector of
11614         gdb::unique_xmalloc_ptr.
11615         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11616         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11617         (delim_string_to_char_ptr_vec): Return an std::vector of
11618         gdb::unique_xmalloc_ptr, adjust the code.
11619         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11620         gdb::unique_xmalloc_ptr, adjust the code.
11621         (dirnames_to_char_ptr_vec): Return an std::vector of
11622         gdb::unique_xmalloc_ptr, adjust the code.
11623         * auto-load.c (auto_load_safe_path_vec): Change type to
11624         std::vector of gdb::unique_xmalloc_ptr.
11625         (auto_load_expand_dir_vars): Return an std::vector of
11626         gdb::unique_xmalloc_ptr, adjust the code.
11627         (auto_load_safe_path_vec_update): Adjust.
11628         (filename_is_in_auto_load_safe_path_vec): Adjust.
11629         (auto_load_objfile_script_1): Adjust.
11630         * build-id.c (build_id_to_debug_bfd): Adjust.
11631         * linux-thread-db.c (thread_db_load_search): Adjust.
11632         * source.c (add_path): Adjust.
11633         (openp): Adjust.
11634         * symfile.c (find_separate_debug_file): Adjust.
11635         * utils.c (do_free_char_ptr_vec): Remove.
11636         (make_cleanup_free_char_ptr_vec): Remove.
11637
11638 2018-03-01  Sergio Durigan Junior  <[email protected]>
11639
11640         PR gdb/22907
11641         * common/pathstuff.c: Conditionally include "<windows.h>".
11642
11643 2018-03-01  Georg Sauthoff  <[email protected]>
11644
11645         PR gdb/22888
11646         * gcore.in: Quote variables and switch interpreter to bash.
11647
11648 2018-03-01  Tom Tromey  <[email protected]>
11649
11650         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11651         assertion.  Add assertion for discriminant_index.
11652         (quirk_rust_enum): Use correct base type name in univariant case.
11653
11654 2018-03-01  Simon Marchi  <[email protected]>
11655
11656         * record.c (get_call_history_modifiers): Return a
11657         record_print_flags.
11658         (cmd_record_call_history): Adjust.
11659         * record-btrace.c (record_btrace_call_history): Adjust.
11660         (record_btrace_call_history_range): Adjust.
11661         (record_btrace_call_history_from): Adjust.
11662         * target-debug.h (target_debug_print_record_print_flags): New.
11663         * target-delegates.c: Re-generate.
11664         * target.c (target_call_history): Change flags type.
11665         (target_call_history_from): Likewise.
11666         (target_call_history_range): Likewise.
11667         * target.h (struct target_ops) <target_call_history>: Likewise.
11668         (target_call_history_from): Likewise.
11669         (target_call_history_range): Likewise.
11670
11671 2018-02-28  Sergio Durigan Junior  <[email protected]>
11672             Simon Marchi  <[email protected]>
11673
11674         * common/common-utils.c: Include "sys/stat.h".
11675         (is_regular_file): Move here from "source.c"; change return
11676         type to "bool".
11677         * common/common-utils.h (is_regular_file): New prototype.
11678         * common/pathstuff.c (contains_dir_separator): New function.
11679         * common/pathstuff.h (contains_dir_separator): New prototype.
11680         * source.c: Don't include "sys/stat.h".
11681         (is_regular_file): Move to "common/common-utils.c".
11682
11683 2018-02-28  Sergio Durigan Junior  <[email protected]>
11684
11685         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11686         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11687         * auto-load.c: Include "common/pathstuff.h".
11688         * common/common-def.h (current_directory): Move here.
11689         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11690         function.
11691         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11692         prototype.
11693         * common/pathstuff.c: New file.
11694         * common/pathstuff.h: New file.
11695         * compile/compile.c: Include "common/pathstuff.h".
11696         * defs.h (current_directory): Move to "common/common-defs.h".
11697         * dwarf2read.c: Include "common/pathstuff.h".
11698         * exec.c: Likewise.
11699         * guile/scm-safe-call.c: Likewise.
11700         * linux-thread-db.c: Likewise.
11701         * main.c: Likewise.
11702         * nto-tdep.c: Likewise.
11703         * objfiles.c: Likewise.
11704         * source.c: Likewise.
11705         * symtab.c: Likewise.
11706         * utils.c: Include "common/pathstuff.h".
11707         (gdb_realpath): Move to "common/pathstuff.c".
11708         (gdb_realpath_keepfile): Likewise.
11709         (gdb_abspath): Likewise.
11710         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11711         (gdb_realpath_keepfile): Likewise.
11712         (gdb_abspath): Likewise.
11713
11714 2018-02-28  John Baldwin  <[email protected]>
11715
11716         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11717         wildcard process pid for super_resume for kernels with a
11718         specific bug.
11719
11720 2018-02-27  Phil Muldoon  <[email protected]>
11721
11722         * compile/compile.c (get_args): Add additional comments
11723         explaining function.
11724
11725 2018-02-27  Simon Marchi  <[email protected]>
11726             Tom Tromey  <[email protected]>
11727
11728         * target.h (memory_write_request_s): Remove typedef.  Don't define
11729         VEC.
11730         (target_write_memory_blocks): Change argument to std::vector.
11731         (struct memory_write_request): Add constructor.
11732         * target-memory.c (compare_block_starting_address): Return bool.
11733         Change argument types.
11734         (claim_memory): Change arguments to use std::vector.
11735         (split_regular_and_flash_blocks, blocks_to_erase)
11736         (compute_garbled_blocks): Likewise.
11737         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11738         (target_write_memory_blocks): Change argument to std::vector.
11739         * symfile.c (struct load_section_data): Add constructor and
11740         destructor.  Use std::vector for "requests".
11741         (struct load_progress_data): Add initializers.
11742         (load_section_callback): Update.  Use "new".
11743         (clear_memory_write_data): Remove.
11744         (generic_load): Update.
11745
11746 2018-02-27  Alan Hayward  <[email protected]>
11747
11748         * arch/aarch64.h: Use common/tdesc.h.
11749
11750 2018-02-26  Maciej W. Rozycki  <[email protected]>
11751
11752         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11753         architecture with a 64-bit ABI.
11754
11755 2018-02-26  Maciej W. Rozycki  <[email protected]>
11756
11757         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11758         ahead of target description loading.
11759
11760 2018-02-26  Tom Tromey  <[email protected]>
11761
11762         * stack.c (backtrace_command_1): Update.
11763         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11764         of "flags".
11765         * python/py-framefilter.c (py_print_frame)
11766         (gdbpy_apply_frame_filter): Change type of "flags".
11767         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11768         of "flags".
11769         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11770         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11771         * extension.h (enum frame_filter_flag): Rename from
11772         frame_filter_flags.
11773         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11774         (apply_ext_lang_frame_filter): Change type of "flags".
11775         * extension.c (apply_ext_lang_frame_filter): Change type of
11776         "flags".
11777         * extension-priv.h (struct extension_language_ops)
11778         <apply_frame_filter>: Change type of "flags".
11779
11780 2018-02-26  Tom Tromey  <[email protected]>
11781
11782         PR python/16497:
11783         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11784         off-by-one in py_end computation.
11785         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11786         PRINT_MORE_FRAMES.
11787         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11788         constant.
11789
11790 2018-02-26  Tom Tromey  <[email protected]>
11791
11792         * dwarf2read.c (struct variant_field): New.
11793         (struct nextfield) <variant>: New field.
11794         (dwarf2_add_field): Handle DW_TAG_variant_part.
11795         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11796         discriminated union.
11797         (read_structure_type): Handle DW_TAG_variant_part.
11798         (handle_struct_member_die): New function, extracted from
11799         process_structure_scope.  Handle DW_TAG_variant.
11800         (process_structure_scope): Handle discriminated unions.  Call
11801         handle_struct_member_die.
11802
11803 2018-02-26  Tom Tromey  <[email protected]>
11804
11805         * rust-lang.h (rust_last_path_segment): Declare.
11806         * rust-lang.c (rust_last_path_segment): Now public.  Change
11807         contract.
11808         (struct disr_info): Remove.
11809         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11810         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11811         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11812         (rust_enum_p, rust_enum_variant): New function.
11813         (rust_underscore_fields): Remove "offset" parameter.
11814         (rust_print_enum): New function.
11815         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11816         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11817         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11818         enums.
11819         (rust_internal_print_type): New function, from rust_print_type.
11820         Remove enum code.
11821         (rust_print_type): Call rust_internal_print_type.
11822         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11823         Update enum handling.
11824         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11825         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11826         (rust_union_quirks): New functions.
11827         (process_full_comp_unit, process_full_type_unit): Call
11828         rust_union_quirks.
11829         (process_structure_scope): Update rust_unions if necessary.
11830
11831 2018-02-26  Tom Tromey  <[email protected]>
11832
11833         * value.h (value_union_variant): Declare.
11834         * valops.c (value_union_variant): New function.
11835         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11836         (struct discriminant_info): New.
11837         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11838         enumerator.
11839         (struct main_type) <flag_discriminated_union>: New field.
11840
11841 2018-02-26  Tom Tromey  <[email protected]>
11842
11843         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11844         unittests/unpack-selftests.c.
11845         * unittests/unpack-selftests.c: New file.
11846         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11847
11848 2018-02-26  Yao Qi  <[email protected]>
11849
11850         * dwarf2read.c (struct partial_die_info) <read>: New method.
11851         (read_partial_die): Remove the declaration.
11852         (load_partial_dies): Update.
11853         (partial_die_info::partial_die_info):
11854         (read_partial_die): Change it to partial_die_info::read.
11855
11856 2018-02-26  Yao Qi  <[email protected]>
11857
11858         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11859         (fixup_partial_die): Remove declaration.
11860         (scan_partial_symbols): Update.
11861         (partial_die_parent_scope): Likewise.
11862         (partial_die_full_name): Likewise.
11863         (fixup_partial_die): Change it to partial_die_info::fixup.
11864
11865 2018-02-26  Yao Qi  <[email protected]>
11866
11867         * dwarf2read.c (read_partial_die): Update the declaration.
11868         (load_partial_dies): Caller update.
11869         (read_partial_die): Remove one argument abbrev_len.
11870
11871 2018-02-26  Yao Qi  <[email protected]>
11872
11873         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11874         assignment operator.
11875         (load_partial_dies): Use ctor and copy ctor.
11876         (read_partial_die): Update.
11877         (dwarf2_cu::find_partial_die): Use ctor.
11878
11879 2018-02-26  Yao Qi  <[email protected]>
11880
11881         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11882         (find_partial_die_in_comp_unit): Change it to
11883         dwarf2_cu::find_partial_die.
11884         (find_partial_die): Update.
11885
11886 2018-02-26  Yao Qi  <[email protected]>
11887
11888         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11889         is NULL.
11890
11891 2018-02-26  Yao Qi  <[email protected]>
11892
11893         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11894
11895 2018-02-26  Alan Hayward  <[email protected]>
11896
11897         * arch/amd64.h: Use common/tdesc.h.
11898         * arch/i386.c: Likewise.
11899         * arch/i386.h: Likewise.
11900         * arch/tic6x.c: Likewise.
11901         * arch/tdesc.h: Move file from here...
11902         * common/tdesc.h: ...to here.
11903         * features/aarch64-core.c: Regenerate.
11904         * features/aarch64-fpu.c: Regenerate.
11905         * features/i386/32bit-avx.c: Regenerate.
11906         * features/i386/32bit-avx512.c: Regenerate.
11907         * features/i386/32bit-core.c: Regenerate.
11908         * features/i386/32bit-linux.c: Regenerate.
11909         * features/i386/32bit-mpx.c: Regenerate.
11910         * features/i386/32bit-pkeys.c: Regenerate.
11911         * features/i386/32bit-sse.c: Regenerate.
11912         * features/i386/64bit-avx.c: Regenerate.
11913         * features/i386/64bit-avx512.c: Regenerate.
11914         * features/i386/64bit-core.c: Regenerate.
11915         * features/i386/64bit-linux.c: Regenerate.
11916         * features/i386/64bit-mpx.c: Regenerate.
11917         * features/i386/64bit-pkeys.c: Regenerate.
11918         * features/i386/64bit-segments.c: Regenerate.
11919         * features/i386/64bit-sse.c: Regenerate.
11920         * features/i386/x32-core.c: Regenerate.
11921         * features/tic6x-c6xp.c: Regenerate.
11922         * features/tic6x-core.c: Regenerate.
11923         * features/tic6x-gp.c: Regenerate.
11924         * target-descriptions.c: Use common/tdesc.h.
11925         * target-descriptions.h: Likewise.
11926
11927 2018-02-24  Tom Tromey  <[email protected]>
11928
11929         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11930         (try_thread_db_load_from_dir, thread_db_load_search): Use
11931         std::string.
11932         (info_auto_load_libthread_db_compare): Return bool.  Change
11933         argument types.
11934         (info_auto_load_libthread_db): Use std::vector, std::string.
11935         Remove cleanups.
11936
11937 2018-02-24  Tom Tromey  <[email protected]>
11938
11939         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11940         std::string.
11941         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11942         std::string*.
11943         * gdbarch.c: Rebuild.
11944         * gdbarch.h: Rebuild.
11945         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11946         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11947         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11948         std::string*.
11949
11950 2018-02-23  Simon Marchi  <[email protected]>
11951
11952         * gdbtypes.h (sect_offset): Change type to uint64_t.
11953         (sect_offset_str): New function.
11954         * dwarf2read.c (create_addrmap_from_aranges): Use
11955         sect_offset_str.
11956         (error_check_comp_unit_head): Likewise.
11957         (create_debug_type_hash_table): Likewise.
11958         (read_cutu_die_from_dwo): Likewise.
11959         (init_cutu_and_read_dies): Likewise.
11960         (init_cutu_and_read_dies_no_follow): Likewise.
11961         (process_psymtab_comp_unit_reader): Likewise.
11962         (partial_die_parent_scope): Likewise.
11963         (peek_die_abbrev): Likewise.
11964         (process_queue): Likewise.
11965         (dwarf2_physname): Likewise.
11966         (read_namespace_alias): Likewise.
11967         (read_import_statement): Likewise.
11968         (create_dwo_cu_reader): Likewise.
11969         (create_cus_hash_table): Likewise.
11970         (lookup_dwo_cutu): Likewise.
11971         (inherit_abstract_dies): Likewise.
11972         (read_func_scope): Likewise.
11973         (read_call_site_scope): Likewise.
11974         (dwarf2_add_member_fn): Likewise.
11975         (read_common_block): Likewise.
11976         (read_module_type): Likewise.
11977         (read_typedef): Likewise.
11978         (read_subrange_type): Likewise.
11979         (load_partial_dies): Likewise.
11980         (read_partial_die): Likewise.
11981         (find_partial_die): Likewise.
11982         (read_str_index): Likewise.
11983         (dwarf2_string_attr): Likewise.
11984         (build_error_marker_type): Likewise.
11985         (lookup_die_type): Likewise.
11986         (dump_die_shallow): Likewise.
11987         (follow_die_ref): Likewise.
11988         (dwarf2_fetch_die_loc_sect_off): Likewise.
11989         (dwarf2_fetch_constant_bytes): Likewise.
11990         (follow_die_sig): Likewise.
11991         (get_signatured_type): Likewise.
11992         (get_DW_AT_signature_type): Likewise.
11993         (dwarf2_find_containing_comp_unit): Likewise.
11994         (set_die_type): Likewise.
11995
11996 2018-02-21  John Baldwin  <[email protected]>
11997
11998         * arch/aarch64.c: Include "common-defs.h".
11999         * arch/amd64.c: Likewise.
12000         * arch/i386.c: Likewise.
12001
12002 2018-02-21  Tom Tromey  <[email protected]>
12003
12004         * value.h: (extract_field_op): Update.
12005         * eval.c (extract_field_op): Return a const char *.
12006         * expression.h (parse_expression_for_completion): Update.
12007         * completer.c (complete_expression): Update.
12008         (add_struct_fields): Make fieldname const.
12009         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12010         (mark_completion_tag, parse_exp_in_context_1): Update.
12011         (parse_expression_for_completion): Change "name" to
12012         unique_xmalloc_ptr*.
12013
12014 2018-02-21  Tom Tromey  <[email protected]>
12015
12016         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12017
12018 2018-02-21  Yao Qi  <[email protected]>
12019
12020         * avr-tdep.c (avr_read_pc): Change parameter type to
12021         readable_regcache.
12022         * gdbarch.sh (read_pc): Likewise.
12023         * gdbarch.c: Re-generated.
12024         * gdbarch.h: Re-generated.
12025         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12026         readable_regcache.
12027         * ia64-tdep.c (ia64_read_pc): Likewise.
12028         * mips-tdep.c (mips_read_pc): Likewise.
12029         * spu-tdep.c (spu_read_pc): Likewise.
12030
12031 2018-02-21  Yao Qi  <[email protected]>
12032
12033         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12034         * regcache-dump.c: New file.
12035         * regcache.c: Move register_dump to regcache-dump.c.
12036         (maintenance_print_registers): Likewise.
12037         (maintenance_print_raw_registers): Likewise.
12038         (maintenance_print_cooked_registers): Likewise.
12039         (maintenance_print_register_groups): Likewise.
12040         (maintenance_print_remote_registers): Likewise.
12041         (_initialize_regcache): Likewise.
12042         * regcache.h (register_dump): Moved from regcache.c.
12043
12044 2018-02-21  Yao Qi  <[email protected]>
12045
12046         * regcache.c (regcache::regcache): Update.
12047         (regcache::invalidate): Move it to detached_regcache::invalidate.
12048         (get_thread_arch_aspace_regcache): Update.
12049         (regcache::raw_update): Update.
12050         (regcache::cooked_read): Remove some code.
12051         (regcache::cooked_read_value): Likewise.
12052         (regcache::raw_write): Remove assert on m_readonly_p.
12053         (regcache::raw_supply_integer): Move it to
12054         detached_regcache::raw_supply_integer.
12055         (regcache::raw_supply_zeroed): Likewise.
12056         * regcache.h (detached_regcache) <raw_supply_integer>: New
12057         declaration.
12058         <raw_supply_zeroed, invalidate>: Likewise.
12059         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12060         <invalidate>: Likewise.
12061         <m_readonly_p>: Removed.
12062
12063 2018-02-21  Yao Qi  <[email protected]>
12064
12065         * infcmd.c (get_return_value): Let stop_regs point to
12066         get_current_regcache.
12067         * regcache.c (regcache::regcache): Remove.
12068         (register_dump_reg_buffer): New class.
12069         (regcache_print): Adjust.
12070         * regcache.h (regcache): Remove constructors.
12071
12072 2018-02-21  Yao Qi  <[email protected]>
12073
12074         * regcache.c (class register_dump): New class.
12075         (register_dump_regcache, register_dump_none): New class.
12076         (register_dump_remote, register_dump_groups): New class.
12077         (regcache_print): Update.
12078         * regcache.h (regcache_dump_what): Move it to regcache.c.
12079         (regcache) <dump>: Remove.
12080
12081 2018-02-21  Yao Qi  <[email protected]>
12082
12083         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12084          reg_buffer_rw *.
12085         (jit_unwind_reg_set_impl): Call raw_supply.
12086         (jit_frame_sniffer): Use reg_buffer_rw.
12087         * record-full.c (record_full_core_regbuf): Change its type.
12088         (record_full_core_open_1): Use reg_buffer_rw.
12089         (record_full_close): Likewise.
12090         (record_full_core_fetch_registers): Use regcache->raw_supply.
12091         (record_full_core_store_registers): Likewise.
12092         * regcache.c (regcache::get_register_status): Move it to
12093         reg_buffer.
12094         (regcache_raw_set_cached_value): Remove.
12095         (regcache::raw_set_cached_value): Remove.
12096         (regcache::raw_write): Call raw_supply.
12097         (regcache::raw_supply): Move it to reg_buffer_rw.
12098         * regcache.h (regcache_raw_set_cached_value): Remove.
12099         (reg_buffer_rw): New class.
12100
12101 2018-02-21  Yao Qi  <[email protected]>
12102
12103         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12104         readonly_detached_regcache.
12105         (dummy_frame_prev_register): Use regcache->cooked_read.
12106         * frame.c (frame_save_as_regcache): Change return type.
12107         (frame_pop): Update.
12108         * frame.h (frame_save_as_regcache): Update declaration.
12109         * inferior.h (get_infcall_suspend_state_regcache): Update
12110         declaration.
12111         * infrun.c (infcall_suspend_state) <registers>: use
12112         readonly_detached_regcache.
12113         (save_infcall_suspend_state): Don't use regcache_dup.
12114         (get_infcall_suspend_state_regcache): Change return type.
12115         * linux-fork.c (struct fork_info) <savedregs>: Change to
12116         readonly_detached_regcache.
12117         <pc>: New field.
12118         (fork_save_infrun_state): Don't use regcache_dup.
12119         (info_checkpoints_command): Adjust.
12120         * mi/mi-main.c (register_changed_p): Update declaration.
12121         (mi_cmd_data_list_changed_registers): Use
12122         readonly_detached_regcache.
12123         (register_changed_p): Change parameter type to
12124         readonly_detached_regcache.
12125         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12126         readonly_detached_regcache.
12127         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12128         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12129         New.
12130         (regcache::save): Move it to reg_buffer.
12131         (regcache::restore): Change parameter type.
12132         (regcache_dup): Remove.
12133         * regcache.h (reg_buffer) <save>: New method.
12134         (readonly_detached_regcache): New class.
12135         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12136         readonly_detached_regcache.
12137         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12138
12139 2018-02-21  Yao Qi  <[email protected]>
12140
12141         * frame.c (frame_save_as_regcache): Use regcache method save.
12142         (frame_pop): Use regcache method restore.
12143         * infrun.c (restore_infcall_suspend_state): Likewise.
12144         * linux-fork.c (fork_load_infrun_state): Likewise.
12145         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12146         save.
12147         * regcache.c (regcache_save): Remove.
12148         (regcache::restore): More asserts.
12149         (regcache_cpy): Remove.
12150         * regcache.h (regcache_save): Remove the declaration.
12151         (regcache::restore): Move from private to public.
12152         Remove the friend declaration of regcache_cpy.
12153         (regcache_cpy): Remove declaration.
12154
12155 2018-02-21  Yao Qi  <[email protected]>
12156
12157         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12158         parameter type to 'readable_regcache *'.
12159         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12160         * arm-tdep.c (arm_neon_quad_read): Likewise.
12161         (arm_pseudo_read): Likewise.
12162         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12163         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12164         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12165         * gdbarch.c: Re-generated.
12166         * gdbarch.h: Re-generated.
12167         * gdbarch.sh (pseudo_register_read): Change parameter type to
12168         'readable_regcache *'.
12169         (pseudo_register_read_value): Likewise.
12170         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12171         (h8300_pseudo_register_read): Likewise.
12172         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12173         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12174         (i386_pseudo_register_read_into_value): Likewise.
12175         (i386_pseudo_register_read_value): Likewise.
12176         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12177         declaration.
12178         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12179         * m32c-tdep.c (m32c_raw_read): Likewise.
12180         (m32c_read_flg): Likewise.
12181         (m32c_banked_register): Likewise.
12182         (m32c_banked_read): Likewise.
12183         (m32c_sb_read): Likewise.
12184         (m32c_part_read): Likewise.
12185         (m32c_cat_read): Likewise.
12186         (m32c_r3r2r1r0_read): Likewise.
12187         (m32c_pseudo_register_read): Likewise.
12188         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12189         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12190         (mep_pseudo_cr64_read): Likewise.
12191         (mep_pseudo_register_read): Likewise.
12192         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12193         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12194         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12195         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12196         (regcache::cooked_read): Likewise.
12197         (regcache::cooked_read_value): Likewise.
12198         (regcache_cooked_read_signed):
12199         (regcache::cooked_read): Likewise.
12200         * regcache.h (readable_regcache): New class.
12201         (regcache): Inherit readable_regcache.  Move some methods to
12202         readable_regcache.
12203         * rl78-tdep.c (rl78_pseudo_register_read): Change
12204         parameter type to 'readable_regcache *'.
12205         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12206         (e500_pseudo_register_read): Change parameter type to
12207         'readable_regcache *'.
12208         (dfp_pseudo_register_read): Likewise.
12209         (vsx_pseudo_register_read): Likewise.
12210         (efpr_pseudo_register_read): Likewise.
12211         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12212         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12213         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12214         (sh64_pseudo_register_read): Likewise.
12215         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12216         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12217         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12218         (spu_pseudo_register_read): Likewise.
12219         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12220         (xtensa_pseudo_register_read): Likewise.
12221
12222 2018-02-21  Yao Qi  <[email protected]>
12223
12224         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12225         (regcache::arch): Move it to reg_buffer::arch.
12226         (regcache::register_buffer): Likewise.
12227         (regcache::assert_regnum): Likewise.
12228         (regcache::num_raw_registers): Likewise.
12229         * regcache.h (reg_buffer): New class.
12230         (regcache): Inherit reg_buffer.
12231
12232 2018-02-20  Simon Marchi  <[email protected]>
12233
12234         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12235         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12236
12237 2018-02-20  Markus Metzger  <[email protected]>
12238
12239         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12240
12241 2018-02-19  Alan Hayward  <[email protected]>
12242
12243         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12244         (SFILES): Remove common/*.c files.
12245         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12246         * common/common.host: Add common reference.
12247         * configure.ac: Likewise.
12248         * configure: Regenerate.
12249
12250 2018-02-16  Yao Qi  <[email protected]>
12251
12252         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12253         (block_initialize_namespace): Use new.
12254         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12255         (dwarf2_free_objfile): Use delete.
12256         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12257         (copy_type_recursive): Use new.
12258         * gdb_obstack.h (allocate_on_obstack): New.
12259
12260 2018-02-15  Yao Qi  <[email protected]>
12261
12262         PR gdb/22849
12263         * inferior.c (exit_inferior_1): Reset inf->control.
12264
12265 2018-02-15  Joel Brobecker  <[email protected]>
12266
12267         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12268         declaration.
12269
12270 2018-02-14  Pedro Alves  <[email protected]>
12271
12272         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12273         frame_cleanup_after_sniffer on exception.
12274
12275 2018-02-14  Tom Tromey  <[email protected]>
12276
12277         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12278         const.
12279         (solib_bfd_open): Make pathname const.
12280         * solib.c (solib_bfd_open): Make pathname const.
12281         * solib-spu.c (spu_bfd_fopen): Make name const.
12282         (spu_bfd_open): Make pathname const.
12283         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12284         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12285
12286 2018-02-14  Tom Tromey  <[email protected]>
12287
12288         * symfile.c (symfile_bfd_open): Update.
12289         * source.h (openp, source_full_path_of, find_and_open_source):
12290         Change argument type to unique_xmalloc_ptr.
12291         * source.c (openp): Take a unique_xmalloc_ptr.
12292         (source_full_path_of, find_and_open_source): Likewise.
12293         (open_source_file, symtab_to_fullname): Update.
12294         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12295         unique_xmalloc_ptr.
12296         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12297         (exec_file_find): Update.
12298         * psymtab.c (psymtab_to_fullname): Update.
12299         * nto-tdep.h (nto_find_and_open_solib): Update.
12300         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12301         unique_xmalloc_ptr.
12302         * exec.c (exec_file_attach): Update.
12303         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12304         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12305
12306 2018-02-14  Tom Tromey  <[email protected]>
12307
12308         * solib.c: Include source.h.
12309         * nto-tdep.c: Include source.h.
12310         * mi/mi-cmd-env.c: Include source.h.
12311         * infcmd.c: Include source.h.
12312         * exec.c: Include source.h.
12313         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12314         (add_path, directory_switch, source_path, init_source_path): Move
12315         declarations...
12316         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12317         (add_path, directory_switch, source_path, init_source_path):
12318         ...here.
12319
12320 2018-02-14  Tom Tromey  <[email protected]>
12321
12322         * solist.h (exec_file_find, solib_find): Return
12323         unique_xmalloc_ptr.
12324         (solib_bfd_fopen): Take a const char *.
12325         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12326         (exec_file_find, solib_find): Likewise.
12327         (solib_bfd_fopen): Do not take ownership of "pathname".
12328         (solib_bfd_open): Use unique_xmalloc_ptr.
12329         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12330         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12331         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12332         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12333
12334 2018-02-14  Joel Brobecker  <[email protected]>
12335
12336         * ada-lang.c (name_match_type_from_name): Remove reference to
12337         ada_name_for_lookup in function's documentation.
12338         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12339
12340 2018-02-13  Simon Marchi  <[email protected]>
12341
12342         * defs.h (enum openp_flags): New enum.
12343         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12344         Move to enum openp_flags.
12345         (openp_flags): New enum flags.
12346         (openp): Change parameter type to openp_flags.
12347         * source.c (openp): Change parameter type to openp_flags.
12348         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12349         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12350
12351 2018-02-13  Simon Marchi  <[email protected]>
12352
12353         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12354         per-command.
12355
12356 2018-02-12  Andrew Burgess  <[email protected]>
12357
12358         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12359         into...
12360         (class dwarf2_queue_guard): ...the destructor of this new class.
12361         (dw2_do_instantiate_symtab): Create instance of the new class
12362         dwarf2_queue_guard, remove cleanup.
12363
12364 2018-02-09  Tom Tromey  <[email protected]>
12365
12366         * source.c (find_source_lines): Don't reference past the end of
12367         the vector.
12368
12369 2018-02-09  Markus Metzger  <[email protected]>
12370
12371         * remote.c (remote_btrace_maybe_reopen): Change error message.
12372         * btrace.c (btrace_enable): Likewise.
12373         (parse_xml_btrace): Likewise.
12374         (parse_xml_btrace_conf): Likewise.
12375
12376 2018-02-09  Markus Metzger  <[email protected]>
12377
12378         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12379         (linux_enable_pt, linux_enable_bts): Call
12380         diagnose_perf_event_open_fail.
12381
12382 2018-02-09  Markus Metzger  <[email protected]>
12383
12384         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12385         Remove parameter and change return type.  Update callers.  Move it.
12386         (linux_enable_bts, linux_enable_pt): Improve error message.
12387         (linux_enable_pt): Remove zero buffer size check.
12388         (linux_enable_btrace): Improve error messages.  Remove NULL return
12389         check.
12390
12391 2018-02-09  Markus Metzger  <[email protected]>
12392
12393         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12394         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12395         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12396         (linux_supports_pt, linux_supports_btrace): Remove.
12397         (linux_enable_bts): Call cpu_supports_bts.
12398         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12399         * remote.c (remote_supports_btrace): Remove.
12400         (init_remote_ops): Remove remote_supports_btrace.
12401         * target-delegates.c: Regenerated.
12402         * target.c (target_supports_btrace): Remove.
12403         * target.h (target_ops) <to_supports_btrace>: Remove
12404         (target_supports_btrace): Remove.
12405         * x86-linux-nat.c (x86_linux_create_target): Remove
12406         linux_supports_btrace.
12407
12408 2018-02-09  Markus Metzger  <[email protected]>
12409
12410         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12411         btrace failed.
12412         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12413         exception and use message in own exception.
12414
12415 2018-02-09  Markus Metzger  <[email protected]>
12416
12417         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12418         (perf_event_pt_event_type): Use gdb_file_up.
12419         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12420         scoped_fd, and scoped_mmap.
12421
12422 2018-02-09  Markus Metzger  <[email protected]>
12423
12424         * common/scoped_mmap.h: New.
12425         * unittests/scoped_mmap-selftest.c: New.
12426         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12427         unittests/scoped_mmap-selftest.c.
12428
12429 2018-02-09  Markus Metzger  <[email protected]>
12430
12431         * common/scoped_fd.h: New.
12432         * unittests/scoped_fd-selftest.c: New.
12433         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12434         unittests/scoped_fd-selftest.c.
12435
12436 2018-02-09  Tom Tromey  <[email protected]>
12437
12438         * auto-load.c (auto_load_section_scripts): Use
12439         gdb::unique_xmalloc_ptr.
12440
12441 2018-02-09  Tom Tromey  <[email protected]>
12442
12443         * auto-load.c (execute_script_contents): Use std::string.
12444
12445 2018-02-09  Joel Brobecker  <[email protected]>
12446
12447         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12448         Python function, rather than a new command.
12449
12450 2018-02-08  Tom Tromey  <[email protected]>
12451
12452         * solib.c (solib_find_1): Use std::string.
12453         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12454
12455 2018-02-08  Tom Tromey  <[email protected]>
12456
12457         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12458
12459 2018-02-08  Tom Tromey  <[email protected]>
12460
12461         * source.c (find_source_lines): Use gdb::def_vector.
12462
12463 2018-02-08  Tom Tromey  <[email protected]>
12464
12465         * macrocmd.c (struct temporary_macro_definition): New.
12466         (macro_define_command): Use temporary_macro_definition.  Remove
12467         cleanups.
12468         (free_macro_definition_ptr): Remove.
12469
12470 2018-02-08  Tom Tromey  <[email protected]>
12471
12472         * macroexp.c (maybe_expand): Use std::string.
12473
12474 2018-02-08  Tom Tromey  <[email protected]>
12475
12476         * macroexp.c (struct macro_buffer): Add initializers for some
12477         members.
12478         (init_buffer, init_shared_buffer, free_buffer)
12479         (free_buffer_return_text): Remove.
12480         (macro_buffer): New constructors.
12481         (~macro_buffer): New destructor.
12482         (macro_buffer::set_shared): New method.
12483         (macro_buffer::resize_buffer, macro_buffer::appendc)
12484         (macro_buffer::appendmem): Now methods, not free functions.
12485         (set_token, append_tokens_without_splicing, stringify)
12486         (macro_stringify): Update.
12487         (gather_arguments): Change return type.  Remove argc_p argument,
12488         add args_ptr argument.  Use std::vector.
12489         (substitute_args): Remove argc argument.  Accept std::vector.
12490         (expand): Update.  Use std::vector.
12491         (scan, macro_expand, macro_expand_next): Update.
12492
12493 2018-02-08  Tom Tromey  <[email protected]>
12494
12495         * symtab.c (default_collect_symbol_completion_matches_break_on):
12496         Use unique_xmalloc_ptr.
12497         * macroscope.h: (sal_macro_scope, user_macro_scope)
12498         (default_macro_scope): Return unique_xmalloc_ptr.
12499         * macroscope.c (sal_macro_scope, user_macro_scope)
12500         (default_macro_scope): Return unique_xmalloc_ptr.
12501         * macroexp.h (macro_expand, macro_expand_once): Return
12502         unique_xmalloc_ptr.
12503         * macroexp.c (macro_expand, macro_expand_once): Return
12504         unique_xmalloc_ptr.
12505         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12506         (info_macro_command, info_macros_command): Use
12507         unique_xmalloc_ptr.
12508         * compile/compile-c-support.c (write_macro_definitions): Use
12509         unique_xmalloc_ptr.
12510         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12511
12512 2018-02-07  Simon Marchi  <[email protected]>
12513
12514         * value.c (value_static_field): Assign field type instead of
12515         containing type when returning an optimized out value.
12516
12517 2018-02-06  Yao Qi  <[email protected]>
12518
12519         * ft32-tdep.c (ft32_read_pc): Remove.
12520         (ft32_write_pc): Remove.
12521         (ft32_gdbarch_init): Update.
12522         * m32r-tdep.c (m32r_read_pc): Remove.
12523         (m32r_gdbarch_init): Update.
12524         * mep-tdep.c (mep_read_pc): Remove.
12525         (mep_gdbarch_init): Update.
12526         * microblaze-tdep.c (microblaze_write_pc): Remove.
12527         (microblaze_gdbarch_init): Update.
12528         * mn10300-tdep.c (mn10300_read_pc): Remove.
12529         (mn10300_write_pc): Remove.
12530         (mn10300_gdbarch_init): Update.
12531         * moxie-tdep.c (moxie_read_pc): Remove.
12532         (moxie_write_pc): Remove.
12533         (moxie_gdbarch_init): Update.
12534
12535 2018-02-06  Yao Qi  <[email protected]>
12536
12537         * expprint.c (print_subexp_standard): Handle
12538         OP_F77_UNDETERMINED_ARGLIST.
12539         (dump_subexp_body_standard): Likewise.
12540
12541 2018-02-05  Alan Hayward  <[email protected]>
12542
12543         * target-descriptions.c (tdesc_element_visitor) Add empty
12544         implementations.
12545         (tdesc_type): Move make_gdb_type from here.
12546         (tdesc_type_builtin): Likewise.
12547         (tdesc_type_vector): Likewise.
12548         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12549         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12550         (make_gdb_type_union): Likewise.
12551         (make_gdb_type_flags): Likewise.
12552         (make_gdb_type_enum): Likewise.
12553         (make_gdb_type): New function.
12554         (tdesc_register_type): Use static make_gdb_type.
12555
12556 2018-02-05  Ruslan Kabatsayev <[email protected]>
12557
12558         * infcmd.c (default_print_one_register_info): Align natural-format
12559         column values consistently one under another.
12560         (pad_to_column): New function.
12561
12562 2018-02-05  Joel Brobecker  <[email protected]>
12563
12564         * dwarf2read.c (dwarf2_physname): Move commment.
12565
12566 2018-02-01  Leszek Swirski  <[email protected]>
12567
12568         * varobj.c (varobj_formatted_print_options): Allow recursive
12569         pretty printing if pretty printing is enabled.
12570
12571 2018-02-01  Leszek Swirski  <[email protected]>
12572
12573         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12574         names after a structop as a filename.
12575
12576 2018-02-01  Yao Qi  <[email protected]>
12577
12578         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12579         (arm_record_coproc_data_proc): Likewise.
12580
12581 2018-02-01  Yao Qi  <[email protected]>
12582
12583         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12584
12585 2018-01-31  Nikola Prica  <[email protected]>
12586
12587         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12588         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12589
12590 2018-01-31  Pedro Alves  <[email protected]>
12591
12592         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12593         * inflow.c (child_terminal_save_inferior): Wrap reference to
12594         tcgetpgrp in HAVE_TERMIOS_H.
12595         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12596         _WIN32.
12597         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12598         always iterate over all inferiors.
12599         (gdbsim_cntrl_c): Adjust.
12600         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12601
12602 2018-01-31  Joel Brobecker  <[email protected]>
12603
12604         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12605         index type is objfile-owned if the element type is as well.
12606
12607 2018-01-31  Joel Brobecker  <[email protected]>
12608
12609         GDB 8.1 released.
12610
12611 2018-01-30  Philipp Rudo  <[email protected]>
12612
12613         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12614         "features/s390x-linux64.c".
12615         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12616         s390_linux32 and s390x_linux64.
12617         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12618         default tdesc.
12619         * s390-tdep.c: Include "features/s390-linux32.c" and
12620         "features/s390x-linux64.c".
12621         (s390_tdesc_valid): Add check for tdesc_has_registers.
12622         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12623         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12624         tdesc_s390x_linux64.
12625         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12626         tdesc_s390x_linux64 to...
12627         * s390-tdep.h: ...here.
12628
12629 2018-01-30  Pedro Alves  <[email protected]>
12630
12631         PR gdb/13211
12632         * config.in, configure: Regenerate.
12633         * configure.ac: Check for getpgid.
12634         * go32-nat.c (go32_pass_ctrlc): New.
12635         (go32_target): Install it.
12636         * inf-child.c (inf_child_target): Install
12637         child_terminal_save_inferior, child_pass_ctrlc and
12638         child_interrupt.
12639         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12640         (inf_ptrace_target): No longer install it.
12641         * infcmd.c (interrupt_target_1): Adjust.
12642         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12643         (child_interrupt): Declare.
12644         (inferior::terminal_state): New.
12645         * inflow.c (struct terminal_info): Update comments.
12646         (inferior_process_group): Delete.
12647         (terminal_is_ours): Delete.
12648         (gdb_tty_state): New.
12649         (child_terminal_init): Adjust.
12650         (is_gdb_terminal, sharing_input_terminal_1)
12651         (sharing_input_terminal): New functions.
12652         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12653         Set the process's actual process group in the foreground if
12654         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12655         mark terminal as the inferior's if not sharing GDB's terminal.
12656         Don't check attach_flag.
12657         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12658         pass down a target_terminal_state.
12659         (child_terminal_save_inferior): New, factored out from ...
12660         (child_terminal_ours_1): ... this.  Handle
12661         target_terminal_state::is_ours_for_output.
12662         (child_interrupt, child_pass_ctrlc): New.
12663         (inflow_inferior_exit): Clear the inferior's terminal_state.
12664         (copy_terminal_info): Copy the inferior's terminal state.
12665         (_initialize_inflow): Remove reference to terminal_is_ours.
12666         * inflow.h (inferior_process_group): Delete.
12667         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12668         * procfs.c (procfs_target): Don't install procfs_interrupt.
12669         (procfs_interrupt): Delete.
12670         * remote.c (remote_serial_quit_handler): Adjust.
12671         (remote_interrupt): Remove ptid parameter.  Adjust.
12672         * target-delegates.c: Regenerate.
12673         * target.c: Include "terminal.h".
12674         (target_terminal::terminal_state): Rename to ...
12675         (target_terminal::m_terminal_state): ... this.
12676         (target_terminal::init): Adjust.
12677         (target_terminal::inferior): Adjust to per-inferior
12678         terminal_state.
12679         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12680         (target_terminal::ours, target_terminal::ours_for_output): Use
12681         target_terminal_is_ours_kind.
12682         (target_interrupt): Remove ptid parameter.  Adjust.
12683         (default_target_pass_ctrlc): Adjust.
12684         * target.h (target_ops::to_terminal_save_inferior): New field.
12685         (target_ops::to_interrupt): Remove ptid_t parameter.
12686         (target_interrupt): Remove ptid_t parameter.  Update comment.
12687         (target_pass_ctrlc): Update comment.
12688         * target/target.h (target_terminal_state): New scoped enum,
12689         factored out of ...
12690         (target_terminal::terminal_state): ... here.
12691         (target_terminal::inferior): Update comments.
12692         (target_terminal::restore_inferior): New.
12693         (target_terminal::is_inferior, target_terminal::is_ours)
12694         (target_terminal::is_ours_for_output): Adjust.
12695         (target_terminal::scoped_restore_terminal_state): Adjust to
12696         rename, and call restore_inferior() instead of inferior().
12697         (target_terminal::scoped_restore_terminal_state::m_state): Change
12698         type.
12699         (target_terminal::terminal_state): Rename to ...
12700         (target_terminal::m_terminal_state): ... this and change type.
12701
12702 2018-01-30  Pedro Alves  <[email protected]>
12703
12704         * linux-nat.c (wait_for_signal): New function.
12705         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12706         directly.
12707         (async_terminal_is_ours)
12708         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12709         (linux_nat_add_target): Don't override
12710         to_terminal_inferior/to_terminal_ours.
12711
12712 2018-01-29  Sergio Durigan Junior  <[email protected]>
12713
12714         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12715
12716 2018-01-28  Simon Marchi  <[email protected]>
12717
12718         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12719         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12720         dwarf2_per_objfile_free here.
12721         (dwarf2_per_objfile_free): Remove.
12722         (_initialize_dwarf2_read): Don't register
12723         dwarf2_per_objfile_free as a registry cleanup.
12724
12725 2018-01-27  Eli Zaretskii  <[email protected]>
12726
12727         Avoid compilation errors in MinGW native builds
12728
12729         The error is triggered by including python-internal.h, and the
12730         error message is:
12731
12732              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12733                       from build-gnulib/import/math.h:27,
12734                       from d:/usr/Python26/include/pyport.h:235,
12735                       from d:/usr/Python26/include/Python.h:58,
12736                       from python/python-internal.h:94,
12737                       from python/py-arch.c:24:
12738              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12739         using ::hypot;
12740                 ^~~~~
12741
12742         This happens because Python headers define 'hypot' to expand t
12743         '_hypot' in the Windows builds.
12744         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12745         'hypoth'.  This avoids a compilation error.
12746
12747 2018-01-26  Alan Hayward  <[email protected]>
12748
12749         * MAINTAINERS (Write After Approval): Fix ordering.
12750
12751 2018-01-26  Alan Hayward  <[email protected]>
12752
12753         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12754
12755 2018-01-26  Alan Modra  <[email protected]>
12756
12757         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12758         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12759         Remove nop.  Make const.  Comment.
12760         (powerpc32_plt_stub_so_2): New.
12761         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12762         Correct count.  Update uses.
12763         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12764         Move common code reading PLT entry word.  Correct
12765         powerpc32_plt_stub PLT address calculation.
12766         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12767         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12768         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12769         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12770         (ppc64_standard_linkage8): Likewise.
12771         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12772         Correct insns description.
12773         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12774
12775 2018-01-24  Pedro Alves  <[email protected]>
12776
12777         GCC PR libstdc++/83906
12778         * gdbtypes.c (operator==(const dynamic_prop &,
12779         const dynamic_prop &)): New.
12780         (operator==(const range_bounds &, const range_bounds &)): New.
12781         (check_types_equal): Use them instead of memcmp.
12782         * gdbtypes.h (operator==(const dynamic_prop &,
12783         const dynamic_prop &)): Declare.
12784         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12785         (operator==(const range_bounds &, const range_bounds &)): Declare.
12786         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12787
12788 2018-01-23  Philipp Rudo  <[email protected]>
12789
12790         * s390-linux-tdep.c (s390_record_address_mask)
12791         (s390_record_calc_disp_common, s390_record_calc_disp)
12792         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12793         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12794         (s390_process_record): Move to s390-tdep.c.
12795         (s390_linux_init_abi_any): Adjust.
12796         * s390-tdep.c (s390_record_address_mask)
12797         (s390_record_calc_disp_common, s390_record_calc_disp)
12798         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12799         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12800         (s390_process_record): Moved from s390-linux-tdep.c
12801         (s390_gdbarch_init): Adjust.
12802
12803 2018-01-23  Philipp Rudo  <[email protected]>
12804
12805         * s390-linux-nat.c (s390-tdep.h): New include.
12806         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12807         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12808         (ALLDEPFILES): Add s390-tdep.c.
12809         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12810         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12811         * s390-tdep.h: ...this.  New file.
12812         * s390-linux-tdep.c (s390-tdep.h): New include.
12813         (_initialize_s390_tdep): Rename to...
12814         (_initialize_s390_linux_tdep): ...this and adjust.
12815         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12816         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12817         s390-tdep.h.
12818         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12819         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12820         (s390_is_partial_instruction, s390_software_single_step)
12821         (is_non_branch_ril, s390_displaced_step_copy_insn)
12822         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12823         (s390_prologue_data, s390_addr, s390_store, s390_load)
12824         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12825         (s390_register_call_saved, s390_guess_tracepoint_registers)
12826         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12827         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12828         (s390_pseudo_register_name, s390_pseudo_register_type)
12829         (s390_pseudo_register_read, s390_pseudo_register_write)
12830         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12831         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12832         (s390_addr_bits_remove, s390_address_class_type_flags)
12833         (s390_address_class_type_flags_to_name)
12834         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12835         (s390_function_arg_float, s390_function_arg_vector)
12836         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12837         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12838         (s390_frame_align, s390_register_return_value, s390_return_value)
12839         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12840         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12841         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12842         (s390_trad_frame_prev_register, s390_unwind_cache)
12843         (s390_prologue_frame_unwind_cache)
12844         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12845         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12846         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12847         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12848         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12849         (s390_frame_base_address, s390_local_base_address)
12850         (s390_frame_base, s390_gcc_target_options)
12851         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12852         (s390_validate_reg_range, s390_tdesc_valid)
12853         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12854         * s390-tdep.c: ...this.  New file.
12855
12856 2018-01-23  Philipp Rudo  <[email protected]>
12857
12858         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12859         (s390_process_record, s390_gdbarch_tdep_alloc)
12860         (s390_linux_init_abi_any): Use/set new hook.
12861
12862 2018-01-23  Philipp Rudo  <[email protected]>
12863
12864         * s390-linux-tdep.c (osabi.h): New include.
12865         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12866         (s390_linux_init_abi_any): New functions.
12867         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12868
12869 2018-01-23  Philipp Rudo  <[email protected]>
12870
12871         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12872         tdesc_has_registers check
12873
12874 2018-01-23  Philipp Rudo  <[email protected]>
12875
12876         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12877         (s390_validate_reg_range): New macro.
12878         (s390_gdbarch_init): Adjust.
12879
12880 2018-01-23  Philipp Rudo  <[email protected]>
12881
12882         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12883         (s390_gdbarch_tdep_alloc): Adjust.
12884         (s390_gdbarch_init): Adjust.
12885
12886 2018-01-23  Philipp Rudo  <[email protected]>
12887
12888         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12889         <have_tdb>: Change type to bool.
12890         (s390_gdbarch_tdep_alloc): Adjust.
12891         (s390_gdbarch_init): Adjust.
12892
12893 2018-01-23  Philipp Rudo  <[email protected]>
12894
12895         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12896         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12897         (s390_gdbarch_tdep_alloc): New function.
12898         (s390_gdbarch_init): Allocate tdep at start and use its fields
12899         instead of separate variables.
12900
12901 2018-01-23  Philipp Rudo  <[email protected]>
12902
12903         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12904         when looking for cached gdbarch and add comment for remaining.
12905
12906 2018-01-22  Pedro Alves  <[email protected]>
12907             Sergio Durigan Junior  <[email protected]>
12908
12909         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12910         case.
12911
12912 2018-01-22  Maciej W. Rozycki  <[email protected]>
12913
12914         * MAINTAINERS: Update my company e-mail address.
12915
12916 2018-01-22  Yao Qi  <[email protected]>
12917
12918         * regcache.c (cooked_write_test): New function.
12919         (_initialize_regcache): Register the test.
12920
12921 2018-01-22  Yao Qi  <[email protected]>
12922
12923         * ia64-tdep.c (ia64_pseudo_register_read): Call
12924         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12925         * m32c-tdep.c (m32c_cat_read): Likewise.
12926         (m32c_r3r2r1r0_read): Likewise.
12927         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12928         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12929
12930 2018-01-22  Yao Qi  <[email protected]>
12931
12932         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12933         method raw_read instead of regcache_raw_read.
12934         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12935         * arm-tdep.c (arm_neon_quad_read): Likewise.
12936         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12937         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12938         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12939         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12940         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12941         (i386_pseudo_register_read_into_value): Likewise.
12942         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12943         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12944         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12945         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12946         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12947         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12948         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12949         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12950         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12951
12952 2018-01-22  Yao Qi  <[email protected]>
12953
12954         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12955         * configure.tgt: Remove target mt.
12956         * mt-tdep.c: Remove.
12957         * regcache.c (cooked_read_test): Remove the check for mt.
12958
12959 2018-01-22  Yao Qi  <[email protected]>
12960
12961         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12962         instead of gdbarch_pseudo_register_read_value.
12963
12964 2018-01-22  Joel Brobecker  <[email protected]>
12965
12966         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12967         language is Ada.
12968
12969 2018-01-22  Joel Brobecker  <[email protected]>
12970
12971         * linespec.c (create_sals_line_offset): Remove code that preserved
12972         the symtab_and_line's line number.
12973
12974 2018-01-21  Andrew Burgess  <[email protected]>
12975
12976         * varobj.c (varobj_create): Don't set valid_block when creating a
12977         floating varobj.
12978
12979 2018-01-21  Andrew Burgess  <[email protected]>
12980
12981         * varobj.c (varobj_create): Remove out of date comment.
12982
12983 2018-01-21  Andrew Burgess  <[email protected]>
12984
12985         PR mi/20395
12986         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12987         updating innermost block.
12988         * parse.c (innermost_block_tracker::update): Take extra type
12989         parameter, and check types match before updating innermost block.
12990         (write_dollar_variable): Update innermost block for registers.
12991         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12992         (innermost_block_tracker::innermost_block_tracker): Initialise
12993         m_types member.
12994         (innermost_block_tracker::reset): Take type parameter.
12995         (innermost_block_tracker::update): Take type parameter, and pass
12996         type through as needed.
12997         (innermost_block_tracker::m_types): New member.
12998         * varobj.c (varobj_create): Pass type when reseting innermost
12999         block.
13000
13001 2018-01-21  Andrew Burgess  <[email protected]>
13002
13003         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13004         * ada-lang.c (resolve_subexp): Likewise.
13005         * breakpoint.c (set_breakpoint_condition) Likewise.
13006         (watch_command_1) Likewise.
13007         * c-exp.y (variable): Likewise.
13008         * d-exp.y (PrimaryExpression): Likewise.
13009         * f-exp.y (variable): Likewise.
13010         * go-exp.y (variable): Likewise.
13011         * m2-exp.y (variable): Likewise.
13012         * objfiles.c (objfile::~objfile): Likewise.
13013         * p-exp.y (variable): Likewise.
13014         * parse.c (innermost_block): Change type.
13015         * parser-defs.h (class innermost_block_tracker): New.
13016         (innermost_block): Change to innermost_block_tracker.
13017         * printcmd.c (display_command): Switch to innermost_block API.
13018         (do_one_display): Likewise.
13019         * rust-exp.y (do_one_display): Likewise.
13020         * symfile.c (clear_symtab_users): Likewise.
13021         * varobj.c (varobj_create): Switch to innermost_block API, replace
13022         use of innermost_block with block stored on varobj object.
13023
13024 2018-01-21  Andrew Burgess  <[email protected]>
13025
13026         * expression.h (innermost_block): Remove declaration.
13027         * varobj.c: Add 'parser-defs.h' include.
13028
13029 2018-01-19  Tom Tromey  <[email protected]>
13030
13031         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13032         symbols in the static and global blocks.
13033
13034 2018-01-19  James Clarke  <[email protected]>
13035
13036         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13037         gdb_ptrace.h, and move including gdb_wait.h ...
13038         * nat/linux-ptrace.h: ... to here.
13039
13040 2018-01-19  Simon Marchi  <[email protected]>
13041
13042         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13043         inf_ptrace_detach_success.
13044         (inf_ptrace_detach_success): Add inferior parameter, use it
13045         instead of inferior_ptid, pass it to detach_inferior.
13046         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13047         parameter.
13048         * inferior.c (detach_inferior): Add overload that takes an
13049         inferior object.
13050         * inferior.h (detach_inferior): Likewise.
13051         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13052         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13053         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13054
13055 2018-01-19  Simon Marchi  <[email protected]>
13056
13057         * target.h (struct target_ops) <to_detach>: Add inferior
13058         parameter.
13059         (target_detach): Likewise.
13060         * target.c (dispose_inferior): Pass inferior down.
13061         (target_detach): Pass inferior down.  Assert that it is equal to
13062         the current inferior.
13063         * aix-thread.c (aix_thread_detach): Pass inferior down.
13064         * corefile.c (core_file_command): Pass current_inferior() down.
13065         * corelow.c (core_detach): Add inferior parameter.
13066         * darwin-nat.c (darwin_detach): Likewise.
13067         * gnu-nat.c (gnu_detach): Likewise.
13068         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13069         * infcmd.c (detach_command): Pass current_inferior() down to
13070         target_detach.
13071         * infrun.c (follow_fork_inferior): Pass parent_inf to
13072         target_detach.
13073         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13074         target_detach.
13075         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13076         * linux-thread-db.c (thread_db_detach): Likewise.
13077         * nto-procfs.c (procfs_detach): Likewise.
13078         * procfs.c (procfs_detach): Likewise.
13079         * record.c (record_detach): Likewise.
13080         * record.h (struct inferior): Forward-declare.
13081         (record_detach): Add inferior parameter.
13082         * remote-sim.c (gdbsim_detach): Likewise.
13083         * remote.c (remote_detach_1): Likewise.
13084         (remote_detach): Likewise.
13085         (extended_remote_detach): Likewise.
13086         * sol-thread.c (sol_thread_detach): Likewise.
13087         * target-debug.h (target_debug_print_inferior_p): New macro.
13088         * target-delegates.c: Re-generate.
13089         * top.c (kill_or_detach): Pass inferior down to target_detach.
13090         * windows-nat.c (windows_detach): Add inferior parameter.
13091
13092 2018-01-19  Simon Marchi  <[email protected]>
13093
13094         * target.h (struct target_ops) <to_detach>: Remove args
13095         parameter.
13096         (target_detach): Likewise.
13097         * target.c (dispose_inferior): Adjust.
13098         (target_detach): Remove args parameter, adjust.
13099         * aix-thread.c (aix_thread_detach): Adjust.
13100         * corefile.c (core_file_command): Adjust.
13101         * corelow.c (core_detach): Adjust.
13102         * darwin-nat.c (darwin_detach): Adjust.
13103         * gnu-nat.c (gnu_detach): Adjust.
13104         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13105         * infcmd.c (detach_command): Adjust
13106         * infrun.c (follow_fork_inferior): Adjust.
13107         (handle_vfork_child_exec_or_exit): Adjust.
13108         * linux-fork.c (linux_fork_detach): Remove args parameter.
13109         * linux-fork.h (linux_fork_detach): Likewise.
13110         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13111         * linux-thread-db.c (thread_db_detach): Likewise.
13112         * nto-procfs.c (procfs_detach): Likewise.
13113         * procfs.c (procfs_detach): Likewise.
13114         (do_detach): Remove signo parameter.
13115         * record.c (record_detach): Remove args parameter.
13116         * record.h (record_detach): Likewise.
13117         * remote-sim.c (gdbsim_detach): Likewise.
13118         * remote.c (remote_detach_1): Likewise.
13119         (remote_detach): Likewise.
13120         (extended_remote_detach): Likewise.
13121         * sol-thread.c (sol_thread_detach): Likewise.
13122         * target-delegates.c: Re-generate.
13123         * top.c (struct qt_args) <args>: Remove field.
13124         (kill_or_detach): Don't pass args.
13125         (quit_force): Don't set args.
13126         * windows-nat.c (windows_detach): Remove args parameter.
13127
13128 2018-01-19  Yao Qi  <[email protected]>
13129
13130         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13131         (arm_linux_init_abi): Install it.
13132
13133 2018-01-19  Yao Qi  <[email protected]>
13134
13135         * osabi.c (gdb_osabi_names): Extend the regexp for
13136         arm-linux-gnueabihf.
13137
13138 2018-01-18  Yao Qi  <[email protected]>
13139
13140         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13141         m_abbrevs.
13142         (abbrev_table::add_abbrev): Update.
13143         (abbrev_table::lookup_abbrev): Update.
13144
13145 2018-01-18  Yao Qi  <[email protected]>
13146
13147         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13148
13149 2018-01-17  Sergio Durigan Junior  <[email protected]>
13150
13151         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13152         to "std::string".
13153
13154 2018-01-17  Tom Tromey  <[email protected]>
13155
13156         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13157
13158 2018-01-17  Tom Tromey  <[email protected]>
13159
13160         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13161         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13162         (create_array_type_with_stride): Update.
13163         * dwarf2read.c (set_die_type): Update.
13164
13165 2018-01-17  Tom Tromey  <[email protected]>
13166
13167         * dwarf2read.c (delayed_method_info): Remove typedef.
13168         (dwarf2_cu::method_info): Now a std::vector.
13169         (add_to_method_list): Update.
13170         (free_delayed_list): Remove.
13171         (compute_delayed_physnames): Update.
13172         (process_full_comp_unit, process_full_type_unit): Clear the method
13173         list.  Remove cleanups.
13174         (psymtab_include_file_name): Add name_holder parameter.  Use
13175         unique_xmalloc_ptr.
13176         (dwarf_decode_lines): Update.
13177
13178 2018-01-17  Tom Tromey  <[email protected]>
13179             Simon Marchi  <[email protected]>
13180
13181         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13182         (dwarf2_per_objfile::free_cached_comp_units)
13183         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13184         (init_cutu_and_read_dies_no_follow): Update.
13185         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13186         (dwarf2_cu::~dwarf2_cu): New.
13187         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13188         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13189
13190 2018-01-17  Tom Tromey  <[email protected]>
13191             Simon Marchi  <[email protected]>
13192
13193         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13194         (struct die_reader_specs) <abbrev_table>: New member.
13195         (struct abbrev_table): Add constructor.
13196         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13197         <abbrev_obstack>: Now an auto_obstack.
13198         (abbrev_table_up): New typedef.
13199         (init_cu_die_reader): Add abbrev_table parameter.
13200         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13201         Add result_dwo_abbrev_table.
13202         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13203         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13204         Update.
13205         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13206         parameter.
13207         (skip_children): Update.
13208         (abbrev_table::alloc_abbrev): Rename from
13209         abbrev_table_alloc_abbrev.
13210         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13211         (abbrev_table::lookup_abbrev): Rename from
13212         abbrev_table_lookup_abbrev.
13213         (abbrev_table_read_table): Return abbrev_table_up.
13214         (abbrev_table_free, abbrev_table_free_cleanup)
13215         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13216         (load_partial_dies): Update.
13217
13218 2018-01-17  Tom Tromey  <[email protected]>
13219
13220         * dwarf2read.c (dwarf2_compute_name): Update comment.
13221         (read_func_scope, read_variable): Update.
13222         (new_symbol): Remove.
13223         (new_symbol_full): Rename to new_symbol.
13224
13225 2018-01-17  Mike Gulick  <[email protected]>
13226
13227         PR gdb/16577
13228         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13229         a warning instead of throwing an error, set section size to 0 and return
13230         NULL.
13231         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13232
13233 2018-01-17  Simon Marchi  <[email protected]>
13234
13235         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13236         std::string.
13237         (linux_ptrace_attach_fail_reason_string): Likewise.
13238         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13239         Likewise.
13240         (linux_ptrace_attach_fail_reason_string): Likewise.
13241         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13242
13243 2018-01-17  Simon Marchi  <[email protected]>
13244
13245         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13246
13247 2018-01-17  Eldar Abusalimov  <[email protected]>
13248
13249         PR gdb/21559
13250         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13251         checking for fs_base/gs_base fields in struct user_regs_struct.
13252         * configure: Regenerate.
13253
13254 2018-01-17  Yao Qi  <[email protected]>
13255
13256         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13257         function.
13258         (aarch64_linux_init_abi): Install it to gdbarch hook
13259         gcc_target_options.
13260
13261 2018-01-15  Pedro Alves  <[email protected]>
13262
13263         * common/signals-state-save-restore.c
13264         (save_original_signals_state): Fix typos.
13265
13266 2017-01-12  Tom Tromey  <[email protected]>
13267             Sergio Durigan Junior  <[email protected]>
13268
13269         * Makefile.in (install-only): Install gdb-add-index.
13270
13271 2018-01-12  John Baldwin  <[email protected]>
13272
13273         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13274
13275 2018-01-12  Andreas Arnez  <[email protected]>
13276
13277         * infrun.c (keep_going_pass_signal): Clear step-over info when
13278         insert_breakpoints fails.
13279
13280 2018-01-11  Pedro Alves  <[email protected]>
13281
13282         PR gdb/22583
13283         * infrun.c (resume): Rename to ...
13284         (resume_1): ... this.
13285         (resume): Reimplement as wrapper around resume_1.
13286
13287 2018-01-11  Pedro Alves  <[email protected]>
13288
13289         PR remote/22597
13290         * remote.c (remote_parse_stop_reply): Default to the last-set
13291         general thread instead of to 'magic_null_ptid'.
13292
13293 2018-01-10  Pedro Alves  <[email protected]>
13294
13295         * language.h (language_get_symbol_name_matcher): Rename ...
13296         (get_symbol_name_matcher): ... this.
13297         * language.c (language_get_symbol_name_matcher): Ditto.
13298         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13299         callers adjusted.
13300
13301 2018-01-10  Pedro Alves  <[email protected]>
13302
13303         PR gdb/22670
13304         * dwarf2read.c
13305         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13306         Adjust to use language_get_symbol_name_matcher instead of
13307         language_defn::la_get_symbol_name_matcher.
13308         * language.c (language_get_symbol_name_matcher): If in Ada mode
13309         and the lookup name is a verbatim match, return Ada's matcher.
13310         * language.h (language_get_symbol_name_matcher): Adjust comment.
13311         (ada_lookup_name_info::verbatim_p):: New method.
13312
13313 2018-01-10  Pedro Alves  <[email protected]>
13314
13315         PR gdb/22670
13316         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13317         minsym's language is language_auto or language_cplus, pass down
13318         language_ada instead.
13319         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13320
13321 2018-01-10  Pedro Alves  <[email protected]>
13322
13323         PR gdb/22670
13324         * minsyms.c (linkage_name_str): New function.
13325         (iterate_over_minimal_symbols): Use it.
13326
13327 2018-01-09  John Baldwin  <[email protected]>
13328
13329         * NEWS: Document that 'info proc' now works on FreeBSD.
13330
13331 2018-01-09  John Baldwin  <[email protected]>
13332
13333         * configure.ac: Check for kinfo_getfile in libutil.
13334         * configure: Regenerate.
13335         * config.in: Regenerate.
13336         * fbsd-nat.c: Include "fbsd-tdep.h".
13337         (fbsd_fetch_cmdline): New.
13338         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13339         rather than calling error.
13340         (fbsd_info_proc): New.
13341         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13342         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13343         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13344
13345 2018-01-09  John Baldwin  <[email protected]>
13346
13347         * fbsd-nat.c (struct free_deleter): Remove.
13348         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13349
13350 2018-01-09  John Baldwin  <[email protected]>
13351
13352         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13353         NULL for an empty pathname.
13354
13355 2018-01-09  John Baldwin  <[email protected]>
13356
13357         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13358         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13359         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13360         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13361         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13362         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13363         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13364         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13365         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13366         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13367         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13368         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13369         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13370         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13371         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13372
13373 2018-01-08  Samuel Thibault  <[email protected]>
13374
13375         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13376         (gnu_xfer_auxv): New function.
13377         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13378         TARGET_OBJECT_AUXV.
13379
13380 2018-01-08  Yao Qi  <[email protected]>
13381             Simon Marchi  <[email protected]>
13382
13383         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13384         common/selftest.c.
13385         (COMMON_OBS): Remove selftest.o.
13386         * configure.ac: Append selftest-arch.c and common/selftest.c to
13387         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13388         * configure: Re-generated.
13389         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13390         GDB_SELF_TEST.
13391         (maintenance_info_selftests): Likewise.
13392
13393 2018-01-08  Xavier Roirand  <[email protected]>
13394
13395         * ada-valprint.c (val_print_packed_array_elements): Use
13396         proper number of elements when printing an array indexed
13397         by an enumeration type.
13398
13399 2018-01-07  Simon Marchi  <[email protected]>
13400
13401         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13402         (dw2_get_file_names_reader): Adjust.
13403         (lookup_dwo_signatured_type): Adjust.
13404         (lookup_dwp_signatured_type): Adjust.
13405         (lookup_signatured_type): Adjust.
13406         (create_type_unit_group): Adjust.
13407         (get_type_unit_group): Adjust.
13408         (process_psymtab_comp_unit_reader): Adjust.
13409         (build_type_psymtabs_reader): Adjust.
13410         (scan_partial_symbols): Adjust.
13411         (add_partial_symbol): Adjust.
13412         (add_partial_subprogram): Adjust.
13413         (peek_die_abbrev): Adjust.
13414         (fixup_go_packaging): Adjust.
13415         (process_imported_unit_die): Adjust.
13416         (dwarf2_compute_name): Adjust.
13417         (dwarf2_physname): Adjust.
13418         (read_import_statement): Adjust.
13419         (handle_DW_AT_stmt_list): Adjust.
13420         (read_file_scope): Adjust.
13421         (read_func_scope): Adjust.
13422         (read_lexical_block_scope): Adjust.
13423         (read_call_site_scope): Adjust.
13424         (read_variable): Adjust.
13425         (dwarf2_rnglists_process): Adjust.
13426         (dwarf2_ranges_process): Adjust.
13427         (dwarf2_ranges_read): Adjust.
13428         (dwarf2_get_pc_bounds): Adjust.
13429         (dwarf2_record_block_ranges): Adjust.
13430         (dwarf2_add_field): Adjust.
13431         (dwarf2_add_member_fn): Adjust.
13432         (read_structure_type): Adjust.
13433         (process_structure_scope): Adjust.
13434         (read_enumeration_type): Adjust.
13435         (read_array_type): Adjust.
13436         (mark_common_block_symbol_computed): Adjust.
13437         (read_common_block): Adjust.
13438         (read_namespace_type): Adjust.
13439         (read_namespace): Adjust.
13440         (read_module_type): Adjust.
13441         (read_tag_pointer_type): Adjust.
13442         (read_tag_ptr_to_member_type): Adjust.
13443         (read_tag_string_type): Adjust.
13444         (read_subroutine_type): Adjust.
13445         (read_typedef): Adjust.
13446         (read_base_type): Adjust.
13447         (attr_to_dynamic_prop): Adjust.
13448         (read_subrange_type): Adjust.
13449         (read_unspecified_type): Adjust.
13450         (dwarf2_read_abbrevs): Adjust.
13451         (load_partial_dies): Adjust.
13452         (read_partial_die): Adjust.
13453         (find_partial_die): Adjust.
13454         (guess_partial_die_structure_name): Adjust.
13455         (fixup_partial_die): Adjust.
13456         (read_attribute_value): Adjust.
13457         (read_addr_index): Adjust.
13458         (read_addr_index_from_leb128): Adjust.
13459         (read_str_index): Adjust.
13460         (dwarf2_string_attr): Adjust.
13461         (get_debug_line_section): Adjust.
13462         (dwarf_decode_line_header): Adjust.
13463         (lnp_state_machine::check_line_address): Adjust.
13464         (dwarf_decode_lines_1): Adjust.
13465         (dwarf_decode_lines): Adjust.
13466         (dwarf2_start_symtab): Adjust.
13467         (var_decode_location): Adjust.
13468         (new_symbol_full): Adjust.
13469         (dwarf2_const_value_data): Adjust.
13470         (dwarf2_const_value_attr): Adjust.
13471         (dwarf2_const_value): Adjust.
13472         (die_type): Adjust.
13473         (die_containing_type): Adjust.
13474         (build_error_marker_type): Adjust.
13475         (lookup_die_type): Adjust.
13476         (guess_full_die_structure_name): Adjust.
13477         (anonymous_struct_prefix): Adjust.
13478         (determine_prefix): Adjust.
13479         (dwarf2_name): Adjust.
13480         (follow_die_ref_or_sig): Adjust.
13481         (follow_die_offset): Adjust.
13482         (follow_die_ref): Adjust.
13483         (follow_die_sig_1): Adjust.
13484         (follow_die_sig): Adjust.
13485         (get_signatured_type): Adjust.
13486         (get_DW_AT_signature_type): Adjust.
13487         (decode_locdesc): Adjust.
13488         (dwarf_decode_macros): Adjust.
13489         (cu_debug_loc_section): Adjust.
13490         (fill_in_loclist_baton): Adjust.
13491         (dwarf2_symbol_mark_computed): Adjust.
13492         (init_one_comp_unit): Don't assign
13493         dwarf2_cu::dwarf2_per_objfile.
13494         (set_die_type): Adjust.
13495
13496 2018-01-07  Simon Marchi  <[email protected]>
13497
13498         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13499         <dwarf2_per_objfile>: New field.
13500         (dwarf2_per_objfile): Remove global.
13501         (get_dwarf2_per_objfile): New function.
13502         (set_dwarf2_per_objfile): New function.
13503         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13504         dwarf2_per_objfile.
13505         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13506         (read_abbrev_offset): Likewise.
13507         (read_indirect_string): Likewise.
13508         (read_indirect_line_string): Likewise.
13509         (read_indirect_string_at_offset): Likewise.
13510         (read_indirect_string_from_dwz): Likewise.
13511         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13512         dwarf2_per_objfile.
13513         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13514         (create_all_comp_units): Change objfile parameter to
13515         dwarf2_per_objfile.
13516         (create_all_type_units): Likewise.
13517         (process_queue): Add dwarf2_per_objfile parameter.
13518         (read_and_check_comp_unit_head): Likewise.
13519         (lookup_dwo_unit_in_dwp): Likewise.
13520         (get_dwp_file): Likewise.
13521         (process_cu_includes): Likewise.
13522         (struct free_dwo_file_cleanup_data): New struct.
13523         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13524         set_dwarf2_per_objfile.
13525         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13526         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13527         context, adjust calls.
13528         (dw2_instantiate_symtab): Likewise.
13529         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13530         (dw2_get_cu): Likewise.
13531         (create_cu_from_index_list): Change objfile parameter to
13532         dwarf2_per_objfile.
13533         (create_cus_from_index_list): Get dwarf2_per_objfile from
13534         context, adjust calls.
13535         (create_cus_from_index): Likewise.
13536         (create_signatured_type_table_from_index): Change objfile
13537         parameter to dwarf2_per_objfile.
13538         (create_signatured_type_table_from_debug_names): Change objfile
13539         parameter to dwarf2_per_objfile.
13540         (create_addrmap_from_index): Likewise.
13541         (create_addrmap_from_aranges): Likewise.
13542         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13543         (dw2_setup): Remove.
13544         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13545         context.
13546         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13547         get_dwarf2_per_objfile.
13548         (dw2_forget_cached_source_info): Likewise.
13549         (dw2_map_symtabs_matching_filename): Likewise.
13550         (struct dw2_symtab_iterator) <index>: Remove.
13551         <dwarf2_per_objfile>: New field.
13552         (dw2_symtab_iter_init): Replace index parameter with
13553         dwarf2_per_objfile.
13554         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13555         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13556         (dw2_print_stats): Likewise.
13557         (dw2_dump): Likewise.
13558         (dw2_expand_symtabs_for_function): Likewise.
13559         (dw2_expand_all_symtabs): Likewise.
13560         (dw2_expand_symtabs_with_fullname): Likewise.
13561         (dw2_expand_marked_cus): Replace index and objfile parameters
13562         with dwarf2_per_objfile.
13563         (dw_expand_symtabs_matching_file_matcher): Add
13564         dwarf2_per_objfile parameter and adjust calls.
13565         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13566         adjust calls.
13567         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13568         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13569         adjust calls.
13570         (create_cus_from_debug_names_list): Replace objfile parameter
13571         with dwarf2_per_objfile and adjust calls.
13572         (create_cus_from_debug_names): Likewise.
13573         (dwarf2_read_debug_names): Likewise.
13574         (mapped_debug_names::namei_to_name): Adjust call.
13575         (dw2_debug_names_iterator::next): Likewise.
13576         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13577         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13578         (dw2_debug_names_dump): Likewise.
13579         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13580         (dw2_debug_names_expand_symtabs_matching): Likewise.
13581         (dwarf2_initialize_objfile): Likewise.
13582         (dwarf2_build_psymtabs): Likewise.
13583         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13584         this_cu.
13585         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13586         (read_and_check_comp_unit_head): Likewise.
13587         (read_abbrev_offset): Likewise.
13588         (create_debug_type_hash_table): Likewise.
13589         (create_debug_types_hash_table): Likewise.
13590         (create_all_type_units): Replace objfile parameter with
13591         dwarf2_per_objfile.
13592         (add_type_unit): Add dwarf2_per_objfile parameter.
13593         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13594         with dwarf2_per_objfile.
13595         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13596         (lookup_dwp_signatured_type): Likewise.
13597         (lookup_signatured_type): Likewise.
13598         (read_cutu_die_from_dwo): Likewise.
13599         (init_tu_and_read_dwo_dies): Likewise.
13600         (init_cutu_and_read_dies): Likewise.
13601         (init_cutu_and_read_dies_no_follow): Likewise.
13602         (allocate_type_unit_groups_table): Add objfile parameter.
13603         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13604         (get_type_unit_group): Likewise.
13605         (process_psymtab_comp_unit): Update call.
13606         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13607         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13608         (print_tu_stats): Likewise.
13609         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13610         in void* parameter.
13611         (build_type_psymtabs): Change objfile parameter to
13612         dwarf2_per_objfile.
13613         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13614         passed in void* parameter.
13615         (process_skeletonless_type_units): Change objfile parameter to
13616         dwarf2_per_objfile.
13617         (set_partial_user): Likewise.
13618         (dwarf2_build_psymtabs_hard): Likewise.
13619         (read_comp_units_from_section): Likewise.
13620         (create_all_comp_units): Likewise.
13621         (scan_partial_symbols): Update calls.
13622         (add_partial_symbol): Likewise.
13623         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13624         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13625         (process_queue): Add dwarf2_per_objfile parameter.
13626         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13627         (compute_compunit_symtab_includes): Likewise.
13628         (process_cu_includes): Add dwarf2_per_objfile parameter.
13629         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13630         (process_full_type_unit): Likewise.
13631         (process_imported_unit_die): Update call.
13632         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13633         (read_file_scope): Likewise.
13634         (allocate_dwo_file_hash_table): Add objfile parameter.
13635         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13636         (create_cus_hash_table): Likewise.
13637         (create_dwp_hash_table): Likewise.
13638         (create_dwo_unit_in_dwp_v1): Likewise.
13639         (create_dwp_v2_section): Likewise.
13640         (create_dwo_unit_in_dwp_v2): Likewise.
13641         (lookup_dwo_unit_in_dwp): Likewise.
13642         (try_open_dwop_file): Likewise.
13643         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13644         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13645         cleanup to include a reference to dwarf2_per_objfile.
13646         (open_dwp_file): Add dwarf2_per_objfile parameter.
13647         (open_and_init_dwp_file): Likewise.
13648         (get_dwp_file): Likewise.
13649         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13650         (queue_and_load_all_dwo_tus): Update call.
13651         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13652         data.
13653         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13654         (dwarf2_ranges_process): Likewise.
13655         (dwarf2_get_pc_bounds): Likewise.
13656         (mark_common_block_symbol_computed): Likewise.
13657         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13658         (dwarf2_read_abbrevs): Update call.
13659         (read_partial_die): Use dwarf2_per_objfile from cu.
13660         (find_partial_die): Likewise.
13661         (fixup_partial_die): Likewise.
13662         (read_attribute_value): Likewise.
13663         (read_indirect_string_at_offset_from): Add objfile parameter.
13664         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13665         parameter.
13666         (read_indirect_string_from_dwz): Add objfile parameter.
13667         (read_indirect_string): Add objfile parameter.
13668         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13669         (read_addr_index): Use dwarf2_per_objfile from cu.
13670         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13671         call dw2_setup.
13672         (read_str_index): Use dwarf2_per_objfile from cu.
13673         (get_debug_line_section): Likewise.
13674         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13675         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13676         (new_symbol_full): Use dwarf2_per_objfile from cu.
13677         (build_error_marker_type): Likewise.
13678         (lookup_die_type): Likewise.
13679         (determine_prefix): Likewise.
13680         (follow_die_offset): Likewise.
13681         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13682         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13683         (dwarf2_fetch_die_type_sect_off): Likewise.
13684         (dwarf2_get_die_type): Likewise.
13685         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13686         (get_signatured_type): Likewise.
13687         (get_DW_AT_signature_type): Likewise.
13688         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13689         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13690         (cu_debug_loc_section): Likewise.
13691         (fill_in_loclist_baton): Likewise.
13692         (dwarf2_symbol_mark_computed): Likewise.
13693         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13694         dwarf2_per_objfile.
13695         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13696         parameter.
13697         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13698         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13699         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13700         (set_die_type): Use dwarf2_free_objfile from cu.
13701         (get_die_type_at_offset): Likewise.
13702         (dwarf2_per_objfile_free): Don't assign global variable.
13703         (debug_names) <constructor>: Add dwarf2_per_objfile
13704         parameter, update m_debugstrlookup construction.
13705         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13706         parameter.
13707         <m_dwarf2_per_objfile>: New field.
13708         <lookup>: Use m_dwarf2_per_objfile.
13709         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13710         (psyms_seen_size): Likewise.
13711         (write_gdbindex): Replace objfile parameter with
13712         dwarf2_per_objfile.
13713         (write_debug_names): Likewise.
13714         (write_psymtabs_to_index): Likewise.
13715         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13716         calls.
13717
13718 2018-01-07  Simon Marchi  <[email protected]>
13719
13720         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13721         <dwarf2_per_objfile>: New field.
13722         (struct dwarf2_per_cu_data) <objfile>: Remove.
13723         <dwarf2_per_objfile>: New field.
13724         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13725         of objfile.
13726         (create_signatured_type_table_from_index): Likewise.
13727         (create_debug_type_hash_table): Likewise.
13728         (fill_in_sig_entry_from_dwo_entry): Likewise.
13729         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13730         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13731         objfile.
13732         (create_partial_symtab): Access objfile through
13733         dwarf2_per_objfile.
13734         (process_psymtab_comp_unit_reader): Likewise.
13735         (read_comp_units_from_section): Likewise.
13736         (scan_partial_symbols): Likewise.
13737         (add_partial_symbol): Likewise.
13738         (add_partial_subprogram): Likewise.
13739         (peek_die_abbrev): Likewise.
13740         (fixup_go_packaging): Likewise.
13741         (process_full_comp_unit): Likewise.
13742         (process_full_type_unit): Likewise.
13743         (process_imported_unit_die): Likewise.
13744         (dwarf2_compute_name): Likewise.
13745         (dwarf2_physname): Likewise.
13746         (read_import_statement): Likewise.
13747         (create_cus_hash_table): Assign dwarf2_physname instead of
13748         objfile.
13749         (read_func_scope): Access objfile through dwarf2_per_objfile.
13750         (read_lexical_block_scope): Likewise.
13751         (read_call_site_scope): Likewise.
13752         (read_variable): Likewise.
13753         (dwarf2_rnglists_process): Likewise.
13754         (dwarf2_ranges_process): Likewise.
13755         (dwarf2_ranges_read): Likewise.
13756         (dwarf2_record_block_ranges): Likewise.
13757         (dwarf2_add_field): Likewise.
13758         (dwarf2_add_member_fn): Likewise.
13759         (read_structure_type): Likewise.
13760         (process_structure_scope): Likewise.
13761         (read_enumeration_type): Likewise.
13762         (read_array_type): Likewise.
13763         (read_common_block): Likewise.
13764         (read_namespace_type): Likewise.
13765         (read_namespace): Likewise.
13766         (read_module_type): Likewise.
13767         (read_tag_pointer_type): Likewise.
13768         (read_tag_ptr_to_member_type): Likewise.
13769         (read_tag_string_type): Likewise.
13770         (read_subroutine_type): Likewise.
13771         (read_typedef): Likewise.
13772         (read_base_type): Likewise.
13773         (attr_to_dynamic_prop): Likewise.
13774         (read_subrange_type): Likewise.
13775         (read_unspecified_type): Likewise.
13776         (load_partial_dies): Likewise.
13777         (read_partial_die): Likewise.
13778         (find_partial_die): Likewise.
13779         (guess_partial_die_structure_name): Likewise.
13780         (fixup_partial_die): Likewise.
13781         (read_attribute_value): Likewise.
13782         (read_addr_index_from_leb128): Likewise.
13783         (dwarf2_read_addr_index): Likewise.
13784         (dwarf2_string_attr): Likewise.
13785         (lnp_state_machine::check_line_address): Likewise.
13786         (dwarf_decode_lines_1): Likewise.
13787         (dwarf_decode_lines): Likewise.
13788         (dwarf2_start_symtab): Likewise.
13789         (var_decode_location): Likewise.
13790         (new_symbol_full): Likewise.
13791         (dwarf2_const_value_data): Likewise.
13792         (dwarf2_const_value_attr): Likewise.
13793         (dwarf2_const_value): Likewise.
13794         (die_type): Likewise.
13795         (die_containing_type): Likewise.
13796         (lookup_die_type): Likewise.
13797         (guess_full_die_structure_name): Likewise.
13798         (anonymous_struct_prefix): Likewise.
13799         (dwarf2_name): Likewise.
13800         (follow_die_ref_or_sig): Likewise.
13801         (follow_die_offset): Likewise.
13802         (follow_die_ref): Likewise.
13803         (dwarf2_fetch_die_loc_sect_off): Likewise.
13804         (dwarf2_fetch_constant_bytes): Likewise.
13805         (dwarf2_fetch_die_type_sect_off): Likewise.
13806         (dwarf2_get_die_type): Likewise.
13807         (follow_die_sig): Likewise.
13808         (decode_locdesc): Likewise.
13809         (dwarf2_per_cu_objfile): Likewise.
13810         (dwarf2_per_cu_text_offset): Likewise.
13811         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13812         objfile.
13813         (set_die_type): Access objfile through
13814         dwarf2_per_objfile.
13815
13816 2018-01-07  Simon Marchi  <[email protected]>
13817
13818         * valprint.c (converted_character_d): Remove typedef.
13819         (DEF_VEC_O (converted_character_d)): Remove.
13820         (count_next_character): Use std::vector.
13821         (print_converted_chars_to_obstack): Likewise.
13822         (generic_printstr): Likewise.
13823
13824 2018-01-07  Simon Marchi  <[email protected]>
13825
13826         * xml-support.h (struct gdb_xml_value): Add constructor.
13827         <value>: Change type to unique_xmalloc_ptr.
13828         (gdb_xml_value_s): Remove typedef.
13829         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13830         (gdb_xml_element_start_handler): Change parameter type to
13831         std::vector.
13832         (xml_find_attribute): Likewise.
13833         * xml-support.c (xml_find_attribute): Change parameter type to
13834         std::vector and adjust.
13835         (gdb_xml_values_cleanup): Remove.
13836         (gdb_xml_parser::start_element): Adjust to std::vector.
13837         (xinclude_start_include): Change paraeter type to std::vector
13838         and adjust.
13839         * btrace.c (check_xml_btrace_version): Likewise.
13840         (parse_xml_btrace_block): Likewise.
13841         (parse_xml_btrace_pt_config_cpu): Likewise.
13842         (parse_xml_btrace_pt): Likewise.
13843         (parse_xml_btrace_conf_bts): Likewise.
13844         (parse_xml_btrace_conf_pt): Likewise.
13845         * memory-map.c (memory_map_start_memory): Likewise.
13846         (memory_map_start_property): Likewise.
13847         * osdata.c (osdata_start_osdata): Likewise.
13848         (osdata_start_item): Likewise.
13849         (osdata_start_column): Likewise.
13850         * remote.c (start_thread): Likewise.
13851         * solib-aix.c (library_list_start_library): Likewise.
13852         (library_list_start_list): Likewise.
13853         * solib-svr4.c (library_list_start_library): Likewise.
13854         (svr4_library_list_start_list): Likewise.
13855         * solib-target.c (library_list_start_segment): Likewise.
13856         (library_list_start_section): Likewise.
13857         (library_list_start_library): Likewise.
13858         (library_list_start_list): Likewise.
13859         * tracepoint.c (traceframe_info_start_memory): Likewise.
13860         (traceframe_info_start_tvar): Likewise.
13861         * xml-syscall.c (syscall_start_syscall): Likewise.
13862         * xml-tdesc.c (tdesc_start_target): Likewise.
13863         (tdesc_start_feature): Likewise.
13864         (tdesc_start_reg): Likewise.
13865         (tdesc_start_union): Likewise.
13866         (tdesc_start_struct): Likewise.
13867         (tdesc_start_flags): Likewise.
13868         (tdesc_start_enum): Likewise.
13869         (tdesc_start_field): Likewise.
13870         (tdesc_start_enum_value): Likewise.
13871         (tdesc_start_vector): Likewise.
13872
13873 2018-01-07  Simon Marchi  <[email protected]>
13874
13875         * extension.h (struct xmethod_worker) <clone>: Remove.
13876         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13877         Remove.
13878         (python_xmethod_worker::clone): Remove.
13879         * valops.c (find_overload_match): Use std::move instead of
13880         clone.
13881
13882 2018-01-07  Simon Marchi  <[email protected]>
13883
13884         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13885         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13886         <free_xmethod_worker_data>: Remove.
13887         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13888         <get_xmethod_arg_types>: Remove.
13889         <get_xmethod_result_type>: Remove.
13890         <invoke_xmethod>: Remove.
13891         * extension.c (new_xmethod_worker): Remove.
13892         (clone_xmethod_worker): Remove.
13893         (get_matching_xmethod_workers): Return void, pass std::vector by
13894         pointer.
13895         (get_xmethod_arg_types): Rename to...
13896         (xmethod_worker::get_arg_types): ... this, and adjust.
13897         (get_xmethod_result_type): Rename to...
13898         (xmethod_worker::get_result_type): ... this, and adjust.
13899         (invoke_xmethod): Remove.
13900         (free_xmethod_worker): Remove.
13901         (free_xmethod_worker_vec): Remove.
13902         * extension.h (enum ext_lang_rc): Move here from
13903         extension-priv.h.
13904         (struct xmethod_worker): Add constructor and destructor.
13905         <data>: Remove.
13906         <value>: Remove.
13907         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13908         virtual pure methods.
13909         <get_arg_types, get_result_type>: New methods.
13910         (xmethod_worker_ptr): Remove typedef.
13911         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13912         (xmethod_worker_vec): Remove typedef.
13913         (xmethod_worker_up): New typedef.
13914         (invoke_xmethod): Remove.
13915         (clone_xmethod_worker): Remove.
13916         (free_xmethod_worker): Remove.
13917         (free_xmethod_worker_vec): Remove.
13918         (get_xmethod_arg_types): Remove.
13919         (get_xmethod_result_type): Remove.
13920         * valops.c (find_method_list): Use std::vector, don't use
13921         intermediate vector.
13922         (value_find_oload_method_list): Use std::vector.
13923         (find_overload_match): Use std::vector.
13924         (find_oload_champ): Use std::vector.
13925         * value.c (value_free): Use operator delete.
13926         (value_of_xmethod): Rename to...
13927         (value_from_xmethod): ... this.  Don't assign
13928         xmethod_worker::value, take rvalue-reference.
13929         (result_type_of_xmethod): Adjust.
13930         (call_xmethod): Adjust.
13931         * value.h: Include extension.h.
13932         (struct xmethod_worker): Don't forward-declare.
13933         (value_of_xmethod): Rename to...
13934         (value_from_xmethod): ... this, take rvalue-reference.
13935         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13936         (struct python_xmethod_worker): ... this, add constructor and
13937         destructor.
13938         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13939         (gdbpy_free_xmethod_worker_data): Rename to...
13940         (python_xmethod_worker::~python_xmethod_worker): ... this and
13941         adjust.
13942         (gdbpy_clone_xmethod_worker_data): Rename to...
13943         (python_xmethod_worker::clone): ... this and adjust.
13944         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13945         temporary vector.
13946         (gdbpy_get_xmethod_arg_types): Rename to...
13947         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13948         (gdbpy_get_xmethod_result_type): Rename to...
13949         (python_xmethod_worker::do_get_result_type): ... this and
13950         adjust.
13951         (gdbpy_invoke_xmethod): Rename to...
13952         (python_xmethod_worker::invoke): ... this and adjust.
13953         (new_python_xmethod_worker): Rename to...
13954         (python_xmethod_worker::python_xmethod_worker): ... this and
13955         adjust.
13956         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13957         Remove.
13958         (gdbpy_free_xmethod_worker_data): Remove.
13959         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13960         (gdbpy_get_xmethod_arg_types): Remove.
13961         (gdbpy_get_xmethod_result_type): Remove.
13962         (gdbpy_invoke_xmethod): Remove.
13963         * python/python.c (python_extension_ops): Remove obsolete
13964         callbacks.
13965
13966 2018-01-05  Pedro Alves  <[email protected]>
13967
13968         PR gdb/18653
13969         * common/signals-state-save-restore.c
13970         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13971         find a custom handler preinstalled, instead of internal erroring.
13972         But only warn if !quiet.
13973         * common/signals-state-save-restore.h
13974         (save_original_signals_state): New parameter 'quiet'.
13975         * main.c (captured_main_1): Move save_original_signals_state call
13976         after option handling, and pass QUIET.
13977
13978 2018-01-05  Pedro Alves  <[email protected]>
13979
13980         * spu-tdep.c (spu_catch_start): Pass
13981         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13982
13983 2018-01-05  Pedro Alves  <[email protected]>
13984
13985         PR gdb/22670
13986         * ada-lang.c (literal_symbol_name_matcher): New function.
13987         (ada_get_symbol_name_matcher): Use it for
13988         symbol_name_match_type::SEARCH_NAME.
13989         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13990         it down instead of assuming symbol_name_match_type::FULL.
13991         * block.h (block_lookup_symbol): New parameter 'match_type'.
13992         * c-valprint.c (print_unpacked_pointer): Use
13993         lookup_symbol_search_name instead of lookup_symbol.
13994         * compile/compile-object-load.c (get_out_value_type): Pass down
13995         symbol_name_match_type::SEARCH_NAME.
13996         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13997         symbol_name_match_type::FULL.
13998         * cp-support.c (cp_get_symbol_name_matcher): Handle
13999         symbol_name_match_type::SEARCH_NAME.
14000         * infrun.c (insert_exception_resume_breakpoint): Use
14001         lookup_symbol_search_name.
14002         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14003         * psymtab.c (maintenance_check_psymtabs): Use
14004         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14005         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14006         SYMBOL_SEARCH_NAME.
14007         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14008         if symbol_name_match_type::SEARCH_NAME.
14009         (lookup_symbol_in_language): Pass down
14010         symbol_name_match_type::FULL.
14011         (lookup_symbol_search_name): New.
14012         (lookup_language_this): Pass down
14013         symbol_name_match_type::SEARCH_NAME.
14014         (lookup_symbol_aux, lookup_local_symbol): New parameter
14015         'match_type'.  Pass it down.
14016         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14017         (lookup_symbol_search_name): New declaration.
14018         (lookup_symbol_in_block): New 'match_type' parameter.
14019
14020 2018-01-05  Pedro Alves  <[email protected]>
14021
14022         PR gdb/22670
14023         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14024         ada_lookup_symbol.
14025         (ada_lookup_symbol): Reimplement in terms of
14026         ada_lookup_symbol_list, bits factored out from
14027         ada_lookup_encoded_symbol.
14028
14029 2018-01-05  Joel Brobecker  <[email protected]>
14030
14031         * ada-exp.y (write_object_renaming): When subscripting an array
14032         using a symbol as the index, pass the block in call to
14033         ada_lookup_encoded_symbol when looking that symbol up.
14034
14035 2018-01-05  Jerome Guitton  <[email protected]>
14036
14037         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14038         TYPE_INDEX_TYPE.
14039
14040 2018-01-05  Joel Brobecker  <[email protected]>
14041
14042         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14043         the case where VALUE_LVAL (val0) is not lval_memory.
14044
14045 2018-01-05  Xavier Roirand  <[email protected]>
14046
14047         * ada-valprint.c (print_optional_low_bound): Handle
14048         character-indexed array printing like boolean-indexed array
14049         printing.
14050
14051 2018-01-05  Joel Brobecker  <[email protected]>
14052
14053         * NEWS: Create a new section for the next release branch.
14054         Rename the section of the current branch, now that it has
14055         been cut.
14056
14057 2018-01-05  Joel Brobecker  <[email protected]>
14058
14059         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14060         * version.in: Bump version to 8.1.50.DATE-git.
14061
14062 2018-01-03  Xavier Roirand  <[email protected]>
14063
14064         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14065         Add field.
14066         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14067         Add field.
14068         (default_exception_support_info) <catch_handlers_sym>: Add field.
14069         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14070         (ada_exception_name_addr_1): Add "catch handlers" handling.
14071         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14072         Update all callers.
14073         (create_excep_cond_exprs) <ex>: Add parameter.
14074         (re_set_exception): Update create_excep_cond_exprs call.
14075         (print_it_exception, print_one_exception, print_mention_exception)
14076         (print_recreate_exception): Add "catch handler" handling.
14077         (allocate_location_catch_handlers, re_set_catch_handlers)
14078         (check_status_catch_handlers, print_it_catch_handlers)
14079         (print_one_catch_handlers, print_mention_catch_handlers)
14080         (print_recreate_catch_handlers): New function.
14081         (catch_handlers_breakpoint_ops): New variable.
14082         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14083         Add parameter.  Add "catch handler" handling.
14084         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14085         Add "catch handler" handling.
14086         (ada_exception_catchpoint_cond_string): Add "catch handler"
14087         handling.
14088         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14089         call.
14090         (catch_ada_handlers_command): New function.
14091         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14092         operations structure.
14093         (_initialize_ada_language): Add "catch handlers" command entry.
14094         * NEWS: Document "catch handlers" feature.
14095
14096 2018-01-02  Joel Brobecker  <[email protected]>
14097
14098         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14099         account when creating the array type of the slice.
14100         (ada_value_slice): Likewise.
14101
14102 2018-01-02  Joel Brobecker  <[email protected]>
14103
14104         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14105         New enum value.
14106         (create_array_type_with_stride): Add byte_stride_prop parameter.
14107         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14108         New parameter.  Update all callers in this file.
14109         (array_type_has_dynamic_stride): New function.
14110         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14111         of arrays with dynamic byte strides.
14112         * dwarf2read.c (read_array_type): Add support for dynamic
14113         DW_AT_byte_stride attributes.
14114
14115 2018-01-02  Joel Brobecker  <[email protected]>
14116
14117         * dwarf2read.c (read_unspecified_type): Treat
14118         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14119
14120 2018-01-01  Joel Brobecker  <[email protected]>
14121
14122         Update copyright year range in all GDB files.
14123
14124 2018-01-01  Joel Brobecker  <[email protected]>
14125
14126         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14127         and gdb/testsuite/gdb.base/step-line.c.
14128
14129 2018-01-01  Joel Brobecker  <[email protected]>
14130
14131         * copyright.py (main): Dump the contents of
14132         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14133         even if BY_HAND is empty.
14134
14135 2018-01-01  Joel Brobecker  <[email protected]>
14136
14137         * top.c (print_gdb_version): Update Copyright year in version
14138         message.
14139
14140 2018-01-01  Joel Brobecker  <[email protected]>
14141
14142         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14143
14144 For older changes see ChangeLog-2017.
14145 \f
14146 Local Variables:
14147 mode: change-log
14148 left-margin: 8
14149 fill-column: 74
14150 version-control: never
14151 coding: utf-8
14152 End:
This page took 0.821064 seconds and 4 git commands to generate.