Fix build error in aarch64-linux-tdep.c on macOS
[external/binutils.git] / gdb / ChangeLog
1 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2
3         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
4         of vl to ULONGEST.
5
6 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
7
8         * breakpoint.c (update_inserted_breakpoint_locations): Remove
9         redundant condition.
10
11 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
12
13         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
14
15         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
16         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
17         * sol-thread.c (ps_pdmodel): Don't guard definition.
18
19         * procfs.c: Fix formatting.
20
21         * procfs.c (sysset_t_alloc): Remove.
22         (create_procinfo): Use XNEW instead of sysset_t_alloc.
23         (procfs_debug_inferior): Likewise.
24         (procfs_set_exec_trap): Likewise.
25         (proc_set_traced_sysentry): Don't allocate argp dynamically.
26         (proc_set_traced_sysexit): Likewise.
27
28         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
29         (dead_procinfo): Likewise.
30         (proc_warn): Likewise.
31         (proc_error): Likewise.
32         (proc_get_LDT_entry): Likewise.
33         (do_attach): Likewise.
34         (procfs_target::pid_to_str): Likewise.
35         (iterate_over_mappings): Likewise.
36
37         * procfs.c (create_procinfo): Fix ARI warning.
38         (proc_get_status): Likewise.
39         (proc_stop_process): Likewise.
40         (proc_run_process): Likewise.
41         (proc_kill): Likewise.
42         (proc_get_LDT_entry): Likewise.
43         (procfs_find_LDT_entry): Likewise.
44         (proc_update_threads): Likewise.
45         (proc_iterate_over_threads): Likewise.
46         (do_attach): Likewise.
47         (procfs_xfer_memory): Likewise.
48         (invalidate_cache): Likewise.
49         (procfs_target::resume): Likewise.
50         (procfs_init_inferior): Likewise.
51         (procfs_set_exec_trap): Likewise.
52         (procfs_target::thread_alive): Likewise.
53         (procfs_target::pid_to_exec_file): Likewise.
54         (iterate_over_mappings): Likewise.
55         (procfs_target::make_corefile_notes): Likewise.
56         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
57
58         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
59         (procfs_find_LDT_entry): Likewise.
60         * sol-thread.c (ps_lgetLDT): Likewise.
61
62 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
63
64         PR tdep/17903
65         * procfs.c (procfs_target): Declare pid_to_exec_file.
66         (procfs_target::pid_to_exec_file): New.
67
68 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
69
70         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
71         renaming.
72         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
73         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
74
75 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
76
77         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
78         (supply_fpregset, fill_fpregset): Move ...
79         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
80         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
81         Remove references to ioctl-based procfs.
82         Include <sys/reg.h>.
83         Remove PR_MODEL_NATIVE guards.
84         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
85         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
86
87 2018-09-19  Xavier Roirand  <roirand@adacore.com>
88
89         PR gdb/20981:
90         * solib-darwin.c (darwin_get_dyld_bfd): New function.
91         (darwin_solib_get_all_image_info_addr_at_init): Update call.
92         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
93
94 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
95
96         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
97         (fbsd_print_sockaddr_in6): Likewise.
98
99 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
100             Chris January  <chris.january@arm.com>
101
102         * eval.c (skip_undetermined_arglist): Skip argument list helper.
103         (evaluate_subexp_standard): Return a dummy type when
104         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
105         OP_F77_UNDETERMINED_ARGLIST case.
106         * expression.h (enum noside): Update comment.
107
108 2018-09-19  George Vasick <george.vasick@oracle.com>
109
110         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
111
112 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
113             April Chin <april.chin@oracle.com>
114             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
115
116         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
117         uint_t lwpid_t.
118         (create_procinfo): Print pids in /proc without leading zeros.
119
120 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
121
122         * nios2-tdep.c (nios2_gcc_target_options): New.
123         (nios2_gdb_arch_init): Install new hook.
124
125 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
126
127         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
128         New file.
129         * update-gnulib.sh: Apply patch.
130         * configure: Re-generate.
131
132 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
133
134         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
135         description.  Make "info proc" command descriptions more
136         consistent.
137
138 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
139
140         * NEWS: Mention 'info proc files' command.
141
142 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
143
144         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
145         descriptors for IP_FILES and IP_ALL.
146
147 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
148
149         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
150         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
151         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
152         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
153         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
154         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
155         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
156         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
157         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
158         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
159         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
160         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
161         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
162         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
163         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
164         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
165         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
166         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
167         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
168         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
169         (struct fbsd_sockaddr_un): New types.
170         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
171         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
172         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
173         (fbsd_core_info_proc_files): New functions.
174         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
175         IP_ALL.
176         * fbsd-tdep.h (fbsd_info_proc_files_header)
177         (fbsd_info_proc_files_entry): New.
178
179 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
180
181         * defs.h (enum info_proc_what) [IP_FILES]: New value.
182         * infcmd.c (info_proc_cmd_files): New function.
183         (_initialize_infcmd): Register 'info proc files' command.
184
185 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
186
187         * gnulib/aclocal-m4-deps.mk: Re-generate.
188         * gnulib/aclocal.m4: Re-generate.
189         * gnulib/config.in: Re-generate.
190         * gnulib/configure: Re-generate.
191         * gnulib/import/Makefile.am: Re-generate.
192         * gnulib/import/Makefile.in: Re-generate.
193         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
194         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
195         * gnulib/import/arpa_inet.in.h: New file.
196         * gnulib/import/inet_ntop.c: New file.
197         * gnulib/import/m4/arpa_inet_h.m4: New file.
198         * gnulib/import/m4/inet_ntop.m4: New file.
199         * gnulib/import/m4/netinet_in_h.m4: New file.
200         * gnulib/import/m4/socklen.m4: New file.
201         * gnulib/import/m4/sockpfaf.m4: New file.
202         * gnulib/import/m4/stdalign.m4: New file.
203         * gnulib/import/m4/sys_uio_h.m4: New file.
204         * gnulib/import/netinet_in.in.h: New file.
205         * gnulib/import/stdalign.in.h: New file.
206         * gnulib/import/sys_socket.c: New file.
207         * gnulib/import/sys_socket.in.h: New file.
208         * gnulib/import/sys_uio.in.h: New file.
209         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
210         module.
211
212 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
213
214         * gnulib/aclocal-m4-deps.mk: New file.
215         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
216         deterministically.
217
218 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
219
220         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
221         KVE_PATH.
222
223 2018-09-18  Tom Tromey  <tom@tromey.com>
224
225         * compile/compile-object-load.c (struct
226         link_hash_table_cleanup_data): Add constructor and destructor.
227         Use DISABLE_COPY_AND_ASSIGN.
228         (~link_hash_table_cleanup_data): Rename from
229         link_hash_table_free.  Now a destructor.
230         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
231
232 2018-09-18  Tom Tromey  <tom@tromey.com>
233
234         * compile/compile-object-run.c (do_module_cleanup): Use delete.
235         * compile/compile-object-load.c (struct munmap_list): Move to
236         header file.
237         (munmap_list::add): Rename from munmap_list_add; rewrite.
238         (munmap_list::~munmap_list): Rename from munmap_list_free.
239         (munmap_listp_free_cleanup): Remove.
240         (compile_object_load): Update.
241         * compile/compile-object-load.h (struct munmap_list): Move from
242         compile-object-load.c.  Rewrite.
243
244 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
245
246         * aarch64-tdep.c (pass_in_v): Use register size.
247         (aarch64_extract_return_value): Likewise.
248         (aarch64_store_return_value): Likewise.
249
250 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
251
252         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
253         rlim_t.
254
255 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
256
257         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
258         Fix short help line.
259
260 2018-09-17  Tom Tromey  <tom@tromey.com>
261
262         PR python/20445:
263         * configure: Rebuild.
264         * configure.ac: Conditionally use -DNDEBUG for Python.
265
266 2018-09-17  Tom Tromey  <tom@tromey.com>
267
268         * configure: Rebuild.
269         * configure.ac: Use gmp as a library dependency when checking for
270         mpfr.
271
272 2018-09-17  Pedro Alves  <palves@redhat.com>
273
274         * python/py-inferior.c (find_inferior_object): Delete.
275
276 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
277
278         * compile/compile-cplus-types.c
279         (compile_cplus_instance::enter_scope): Don't use new_scope after
280         std::move.
281
282 2018-09-17  Tom Tromey  <tom@tromey.com>
283
284         * common/pathstuff.c (get_standard_cache_dir): Use
285         ~/Library/Caches on macOS.
286         * common/pathstuff.h (get_standard_cache_dir): Update comment.
287
288 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
289
290         PR python/23669
291         * breakpoint.c (commands_cmd_element): New.
292         (_initialize_breakpoint): Assign commands_cmd_element.
293         * breakpoint.h (commands_cmd_element): New.
294         * cli/cli-script.c (while_cmd_element, if_command,
295         define_cmd_element): New.
296         (command_name_equals): Remove.
297         (process_next_line): Compare commands by pointer, not by name.
298         (_initialize_cli_script): Assign the various cmd_list_element
299         variables.
300         * compile/compile.c (compile_cmd_element): New.
301         (_initialize_compile): Assign compile_cmd_element.
302         * compile/compile.h (compile_cmd_element): New.
303         * guile/guile.c (guile_cmd_element): New.
304         (install_gdb_commands): Assign guile_cmd_element.
305         * guile/guile.h (guile_cmd_element): New.
306         * python/python.c (python_cmd_element): New.
307         (_initialize_python): Assign python_cmd_element.
308         * python/python.h (python_cmd_element): New.
309         * tracepoint.c (while_stepping_cmd_element): New.
310         (_initialize_tracepoint): Assign while_stepping_cmd_element.
311         * tracepoint.h (while_stepping_cmd_element): New.
312
313 2018-09-17  Tom Tromey  <tom@tromey.com>
314
315         * infrun.c (save_infcall_suspend_state): Return
316         infcall_suspend_state_up.
317         (save_infcall_control_state): Return infcall_control_state_up.
318         * inferior.h (save_infcall_suspend_state)
319         (save_infcall_control_state): Declare later.  Return unique
320         pointers.
321
322 2018-09-17  Tom Tromey  <tom@tromey.com>
323
324         * infrun.c (struct stop_context): Declare constructor,
325         destructor, "changed" method.
326         (stop_context::stop_context): Rename from save_stop_context.
327         (stop_context::~stop_context): Rename from
328         release_stop_context_cleanup.
329         (normal_stop): Update.
330         (stop_context::changed): Rename from stop_context_changed.  Return
331         bool.
332
333 2018-09-17  Tom Tromey  <tom@tromey.com>
334
335         * inferior.h (struct infcall_suspend_state_deleter): New.
336         (infcall_suspend_state_up): New typedef.
337         (struct infcall_control_state_deleter): New.
338         (infcall_control_state_up): New typedef.
339         (make_cleanup_restore_infcall_suspend_state)
340         (make_cleanup_restore_infcall_control_state): Don't declare.
341         * infcall.c (call_function_by_hand_dummy): Update.
342         * infrun.c (do_restore_infcall_suspend_state_cleanup)
343         (make_cleanup_restore_infcall_suspend_state): Remove.
344         (do_restore_infcall_control_state_cleanup)
345         (make_cleanup_restore_infcall_control_state): Remove.
346
347 2018-09-17  Tom Tromey  <tom@tromey.com>
348
349         * gdbthread.h (struct thread_control_state): Add initializer.
350         (class thread_info) <control>: Remove initializer.
351         * inferior.h (struct inferior_control_state): Add initializer.
352         (class inferior) <control>: Remove initializer.
353         (exit_inferior_1): Update.
354         * infrun.c (struct infcall_control_state): Add constructors.
355         (save_infcall_control_state): Use new.
356         (restore_infcall_control_state, discard_infcall_control_state):
357         Use delete.
358
359 2018-09-17  Tom Tromey  <tom@tromey.com>
360
361         * infrun.c (struct infcall_suspend_state) <registers>: Now a
362         unique_ptr.
363         <siginfo_data>: Now a unique_xmalloc_ptr.
364         (save_infcall_suspend_state, restore_infcall_suspend_state)
365         (discard_infcall_suspend_state)
366         (get_infcall_suspend_state_regcache): Update.
367
368 2018-09-17  Tom Tromey  <tom@tromey.com>
369
370         * gdbthread.h (struct thread_suspend_state): Add initializers.
371         (class thread_info) <suspend>: Remove initializer.
372         * infrun.c (struct infcall_suspend_state): Add initializers.
373         (save_infcall_suspend_state): Use new.
374         (discard_infcall_suspend_state): Use delete.
375
376 2018-09-16  Tom Tromey  <tom@tromey.com>
377
378         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
379         Remove.
380         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
381         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
382         (py_varobj_iter_new): Likewise.
383         (py_varobj_get_iterator): Use gdbpy_ref.
384
385 2018-09-16  Tom Tromey  <tom@tromey.com>
386
387         * python/py-threadevent.c (py_get_event_thread): Simplify.
388         * python/py-inferior.c (infpy_thread_from_thread_handle):
389         Return immediately after calling thread_to_thread_object.  Use
390         Py_RETURN_NONE.
391         (thread_to_thread_object): Set the exception on a NULL return.
392
393 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
394
395         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
396
397 2018-09-16  Tom Tromey  <tom@tromey.com>
398
399         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
400         Remove.
401
402 2018-09-16  Tom Tromey  <tom@tromey.com>
403
404         * python/python-internal.h (thread_to_thread_object): Change
405         return type.
406         * python/py-inferior.c (thread_to_thread_object): Return a new
407         reference.
408         (infpy_thread_from_thread_handle): Update.
409         * python/py-infthread.c (gdbpy_selected_thread): Update.
410         * python/py-stopevent.c (create_stop_event_object): Update.
411         * python/py-threadevent.c (py_get_event_thread): Return a new
412         reference.
413         (py_get_event_thread): Update.
414         * python/py-event.h (py_get_event_thread): Change return type.
415         * python/py-continueevent.c (create_continue_event_object):
416         Update.
417
418 2018-09-16  Tom Tromey  <tom@tromey.com>
419
420         * python/py-progspace.c (pspy_get_objfiles): Update.
421         * python/python-internal.h (objfile_to_objfile_object): Change
422         return type.
423         * python/py-newobjfileevent.c (create_new_objfile_event_object):
424         Update.
425         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
426         Update.
427         * python/python.c (gdbpy_get_current_objfile): Update.
428         (gdbpy_objfiles): Update.
429         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
430         Update.
431         (objfile_to_objfile_object): Return a new reference.
432         * python/py-symtab.c (stpy_get_objfile): Update.
433         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
434         Update.
435
436 2018-09-16  Tom Tromey  <tom@tromey.com>
437
438         * python/py-inferior.c (infpy_get_progspace): Update.
439         * python/python-internal.h (pspace_to_pspace_object): Change
440         return type.
441         * python/py-newobjfileevent.c
442         (create_clear_objfiles_event_object): Update.
443         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
444         Update.
445         * python/python.c (gdbpy_get_current_progspace): Update.
446         (gdbpy_progspaces): Update.
447         * python/py-progspace.c (pspace_to_pspace_object): Return a new
448         reference.
449         * python/py-objfile.c (objfpy_get_progspace): Update.
450         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
451         Update.
452
453 2018-09-16  Tom Tromey  <tom@tromey.com>
454
455         * python/lib/gdb/__init__.py (current_progspace, objfiles)
456         (solib_name, block_for_pc, find_pc_line): New functions.
457         (execute_unwinders): Update.
458         * python/py-block.c (gdbpy_block_for_pc): Remove.
459         * python/py-inferior.c (infpy_get_progspace): New function.
460         (inferior_object_getset) <progspace>: Add.
461         * python/py-progspace.c (pspy_objfiles): Rewrite.
462         (pspy_solib_name, pspy_block_for_pc)
463         (pspy_find_pc_line, pspy_is_valid): New functions.
464         (progspace_object_methods): Add entries for solib_name,
465         block_for_pc, find_pc_line, is_valid.
466         * python/python-internal.h (gdbpy_block_for_pc)
467         (build_objfiles_list): Don't declare.
468         * python/python.c: Don't include solib.h.
469         (gdbpy_solib_name, gdbpy_find_pc_line)
470         (gdbpy_get_current_progspace, build_objfiles_list)
471         (gdbpy_objfiles): Remove.
472         (GdbMethods) <current_progspace, objfiles, block_for_pc,
473         solib_name, find_pc_line>: Remove entries.
474
475 2018-09-16  Tom Tromey  <tom@tromey.com>
476
477         * top.c (new_ui_command): Use GNU style for metasyntactic
478         variables.
479         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
480         variables.
481         * maint.c (maintenance_translate_address): Remove "<>" around
482         text.
483         * interps.c (interpreter_exec_cmd): Use GNU style for
484         metasyntactic variables.
485         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
486         metasyntactic variables.
487         * tracepoint.c (tfind_range_command): Use GNU style for
488         metasyntactic variables.
489         (tfind_outside_command): Likewise.
490         (_initialize_tracepoint): Likewise.
491         * remote.c (extended_remote_target::create_inferior): Use GNU
492         style for metasyntactic variables.
493         * sparc64-tdep.c (adi_examine_command): Use GNU style for
494         metasyntactic variables.
495         (adi_assign_command): Likewise.
496
497 2018-09-16  Tom Tromey  <tom@tromey.com>
498
499         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
500         metasyntactic variables.  Print message if no disassembler options
501         are available.
502
503 2018-09-15  Tom Tromey  <tom@tromey.com>
504
505         * infcmd.c (get_inferior_args): Return const char *.
506         * inferior.h (get_inferior_args): Return type now const.
507         * linux-tdep.c (linux_fill_prpsinfo): Update.
508         * procfs.c (procfs_target::make_corefile_notes): Update.
509
510 2018-09-07  Tom Tromey  <tom@tromey.com>
511
512         * python/python.c (execute_gdb_command): Call bpstat_do_actions
513         inside the TRY.
514
515 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
516
517         * nios2-tdep.c (nios2_type_align): New.
518         (nios2_gdb_arch_init): Install type_align hook.
519
520 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
521
522         * eval.c (fake_method::fake_method): Call xzalloc directly for a
523         type that is neither object file owned, nor gdbarch owned.
524         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
525         gdbarch is non-NULL.
526         (alloc_type_instance): Allocate non-objfile owned types on the
527         gdbarch obstack.
528         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
529         using TYPE_ALLOC to ensure memory is allocated on the correct
530         obstack.
531         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
532         obstack, or the gdbarch obstack.
533         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
534
535 2018-09-14  Tom Tromey  <tom@tromey.com>
536
537         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
538         block.
539
540 2018-09-14  Tom Tromey  <tom@tromey.com>
541
542         * nat/fork-inferior.c (get_startup_shell): Remove "static".
543
544 2018-09-13  Tom Tromey  <tom@tromey.com>
545
546         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
547         static.
548
549 2018-09-13  Tom Tromey  <tom@tromey.com>
550
551         * exec.c (try_open_exec_file): Use std::string.
552
553 2018-09-13  Tom Tromey  <tom@tromey.com>
554
555         * utils.h (gdb_bfd_errmsg): Return std::string.
556         * exec.c (exec_file_attach): Update.
557         * compile/compile-object-load.c (compile_object_load): Update.
558         * utils.c (gdb_bfd_errmsg): Return std::string.
559
560 2018-09-13  Tom Tromey  <tom@tromey.com>
561
562         * procfs.c (struct procinfo_deleter): New.
563         (procinfo_up): New typedef.
564         (do_destroy_procinfo_cleanup): Remove.
565         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
566
567 2018-09-13  Tom Tromey  <tom@tromey.com>
568
569         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
570
571 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
572 2018-09-13  Tom Tromey  <tom@tromey.com>
573
574         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
575         (pspy_get_objfiles): New function.
576         (progspace_object_methods): New.
577         (pspace_object_type): Add tp_methods callback.
578         * python/python-internal.h (build_objfiles_list): New
579         declaration.
580         * python/python.c (build_objfiles_list): New function.
581         (gdbpy_objfiles): Implement using build_objfiles_list.
582         * NEWS: Mention the Progspace.objfiles method.
583
584 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
585
586         * python/py-inferior.c (infpy_get_progspace): New function.
587         (inferior_object_getset): Add progspace property.
588         * NEWS: Mention the new property.
589
590 2018-09-13  Tom Tromey  <tom@tromey.com>
591
592         PR rust/23650:
593         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
594
595 2018-09-13  Tom Tromey  <tom@tromey.com>
596
597         PR rust/23626:
598         * rust-lang.c (rust_enum_variant): Now static.
599         (rust_empty_enum_p): New function.
600         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
601         Handle empty enum.
602
603 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
604
605         * python/py-inferior.c (infpy_repr): New.
606         (inferior_object_type): Register infpy_repr.
607         * python/py-objfile.c (objfpy_repr): New.
608         (objfile_object_type): Register objfpy_repr.
609
610 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
611
612         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
613
614 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
615
616         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
617         typo.
618
619 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
620
621         * common/common-utils.c: Don't include '<sys/stat.h>'.
622         (is_regular_file): Move to...
623         * common/filestuff.c (is_regular_file): ... here.
624         * common/common-utils.h (is_regular_file): Move to...
625         * common/filestuff.h (is_regular_file): ... here.
626
627 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
628
629         * skip.c (debug_skip): New variable.
630         (skiplist_entry::do_skip_file_p): Add debug output.
631         (skiplist_entry::do_skip_gfile_p): Likewise.
632         (skiplist_entry::skip_function_p): Likewise.
633         (_initialize_step_skip): Create debug command.
634         * NEWS: Mention set/show debug skip.
635
636 2018-09-11  Xavier Roirand  <roirand@adacore.com>
637
638         * darwin-nat.c (should_disable_startup_with_shell):
639         New function.
640         (darwin_nat_target::create_inferior): Add call.
641
642 2018-09-11  Xavier Roirand  <roirand@adacore.com>
643
644         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
645         inf_port, msg_state>: Initialize.
646         (struct darwin_thread_info) <signaled, single_step>: Change
647         type and initialize.
648         (struct darwin_thread_info) <event>: Initialize.
649
650 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
651
652         PR gdb/23555
653         PR gdb/23558
654         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
655         guesses.
656
657 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
658
659         Revert:
660         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
661
662         PR gdb/23555
663         PR gdb/23558
664         * gnulib/aclocal.m4: Regenerate.
665         * gnulib/config.in: Regenerate.
666         * gnulib/configure: Regenerate.
667         * gnulib/import/Makefile.am: Update.
668         * gnulib/import/Makefile.in: Update.
669         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
670         * gnulib/import/_Noreturn.h: ... this.
671         * gnulib/import/alloca.in.h: Update.
672         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
673         * gnulib/import/arg-nonnull.h: ... this.
674         * gnulib/import/assure.h: Update.
675         * gnulib/import/at-func.c: Update.
676         * gnulib/import/basename-lgpl.c: Update.
677         * gnulib/import/extra/snippet/c++defs.h: Rename to...
678         * gnulib/import/c++defs.h: ... this.
679         * gnulib/import/canonicalize-lgpl.c: Update.
680         * gnulib/import/cdefs.h: Update.
681         * gnulib/import/chdir-long.c: Update.
682         * gnulib/import/chdir-long.h: Update.
683         * gnulib/import/cloexec.c: Update.
684         * gnulib/import/cloexec.h: Update.
685         * gnulib/import/close.c: Update.
686         * gnulib/import/closedir.c: Update.
687         * gnulib/import/config.charset: Update.
688         * gnulib/import/dirent-private.h: Update.
689         * gnulib/import/dirent.in.h: Update.
690         * gnulib/import/dirfd.c: Update.
691         * gnulib/import/dirname-lgpl.c: Update.
692         * gnulib/import/dirname.h: Update.
693         * gnulib/import/dosname.h: Update.
694         * gnulib/import/dup-safer-flag.c: Update.
695         * gnulib/import/dup-safer.c: Update.
696         * gnulib/import/dup.c: Update.
697         * gnulib/import/dup2.c: Update.
698         * gnulib/import/errno.in.h: Update.
699         * gnulib/import/error.c: Update.
700         * gnulib/import/error.h: Update.
701         * gnulib/import/exitfail.c: Update.
702         * gnulib/import/exitfail.h: Update.
703         * gnulib/import/extra/update-copyright: Update.
704         * gnulib/import/fchdir.c: Update.
705         * gnulib/import/fcntl.c: Update.
706         * gnulib/import/fcntl.in.h: Update.
707         * gnulib/import/fd-hook.c: Update.
708         * gnulib/import/fd-hook.h: Update.
709         * gnulib/import/fd-safer-flag.c: Update.
710         * gnulib/import/fd-safer.c: Update.
711         * gnulib/import/fdopendir.c: Update.
712         * gnulib/import/filename.h: Update.
713         * gnulib/import/filenamecat-lgpl.c: Update.
714         * gnulib/import/filenamecat.h: Update.
715         * gnulib/import/flexmember.h: Update.
716         * gnulib/import/float+.h: Update.
717         * gnulib/import/float.c: Update.
718         * gnulib/import/float.in.h: Update.
719         * gnulib/import/fnmatch.c: Update.
720         * gnulib/import/fnmatch.in.h: Update.
721         * gnulib/import/fnmatch_loop.c: Update.
722         * gnulib/import/fpucw.h: Update.
723         * gnulib/import/frexp.c: Update.
724         * gnulib/import/frexpl.c: Update.
725         * gnulib/import/fstat.c: Update.
726         * gnulib/import/fstatat.c: Update.
727         * gnulib/import/getcwd-lgpl.c: Update.
728         * gnulib/import/getcwd.c: Update.
729         * gnulib/import/getdtablesize.c: Update.
730         * gnulib/import/getlogin_r.c: Update.
731         * gnulib/import/getprogname.c: Update.
732         * gnulib/import/getprogname.h: Update.
733         * gnulib/import/gettext.h: Update.
734         * gnulib/import/gettimeofday.c: Update.
735         * gnulib/import/glob-libc.h: Update.
736         * gnulib/import/glob.c: Update.
737         * gnulib/import/glob.in.h: Update.
738         * gnulib/import/glob_internal.h: Update.
739         * gnulib/import/glob_pattern_p.c: Update.
740         * gnulib/import/globfree.c: Update.
741         * gnulib/import/hard-locale.c: Update.
742         * gnulib/import/hard-locale.h: Update.
743         * gnulib/import/intprops.h: Update.
744         * gnulib/import/inttypes.in.h: Update.
745         * gnulib/import/isnan.c: Update.
746         * gnulib/import/isnand-nolibm.h: Update.
747         * gnulib/import/isnand.c: Update.
748         * gnulib/import/isnanl-nolibm.h: Update.
749         * gnulib/import/isnanl.c: Update.
750         * gnulib/import/itold.c: Update.
751         * gnulib/import/libc-config.h: Update.
752         * gnulib/import/limits.in.h: Update.
753         * gnulib/import/localcharset.c: Update.
754         * gnulib/import/localcharset.h: Update.
755         * gnulib/import/localtime-buffer.c: Update.
756         * gnulib/import/localtime-buffer.h: Update.
757         * gnulib/import/lstat.c: Update.
758         * gnulib/import/m4/00gnulib.m4: Update.
759         * gnulib/import/m4/__inline.m4: Update.
760         * gnulib/import/m4/absolute-header.m4: Update.
761         * gnulib/import/m4/alloca.m4: Update.
762         * gnulib/import/m4/builtin-expect.m4: Update.
763         * gnulib/import/m4/canonicalize.m4: Update.
764         * gnulib/import/m4/chdir-long.m4: Update.
765         * gnulib/import/m4/close.m4: Update.
766         * gnulib/import/m4/closedir.m4: Update.
767         * gnulib/import/m4/configmake.m4: Update.
768         * gnulib/import/m4/d-ino.m4: Update.
769         * gnulib/import/m4/d-type.m4: Update.
770         * gnulib/import/m4/dirent_h.m4: Update.
771         * gnulib/import/m4/dirfd.m4: Update.
772         * gnulib/import/m4/dirname.m4: Update.
773         * gnulib/import/m4/double-slash-root.m4: Update.
774         * gnulib/import/m4/dup.m4: Update.
775         * gnulib/import/m4/dup2.m4: Update.
776         * gnulib/import/m4/eealloc.m4: Update.
777         * gnulib/import/m4/environ.m4: Update.
778         * gnulib/import/m4/errno_h.m4: Update.
779         * gnulib/import/m4/error.m4: Update.
780         * gnulib/import/m4/exponentd.m4: Update.
781         * gnulib/import/m4/exponentl.m4: Update.
782         * gnulib/import/m4/extensions.m4: Update.
783         * gnulib/import/m4/extern-inline.m4: Update.
784         * gnulib/import/m4/fchdir.m4: Update.
785         * gnulib/import/m4/fcntl-o.m4: Update.
786         * gnulib/import/m4/fcntl.m4: Update.
787         * gnulib/import/m4/fcntl_h.m4: Update.
788         * gnulib/import/m4/fdopendir.m4: Update.
789         * gnulib/import/m4/filenamecat.m4: Update.
790         * gnulib/import/m4/flexmember.m4: Update.
791         * gnulib/import/m4/float_h.m4: Update.
792         * gnulib/import/m4/fnmatch.m4: Update.
793         * gnulib/import/m4/fnmatch_h.m4: Update.
794         * gnulib/import/m4/fpieee.m4: Update.
795         * gnulib/import/m4/frexp.m4: Update.
796         * gnulib/import/m4/frexpl.m4: Update.
797         * gnulib/import/m4/fstat.m4: Update.
798         * gnulib/import/m4/fstatat.m4: Update.
799         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
800         * gnulib/import/m4/getcwd-path-max.m4: Update.
801         * gnulib/import/m4/getcwd.m4: Update.
802         * gnulib/import/m4/getdtablesize.m4: Update.
803         * gnulib/import/m4/getlogin.m4: Update.
804         * gnulib/import/m4/getlogin_r.m4: Update.
805         * gnulib/import/m4/getpagesize.m4: Update.
806         * gnulib/import/m4/getprogname.m4: Update.
807         * gnulib/import/m4/gettimeofday.m4: Update.
808         * gnulib/import/m4/glibc21.m4: Update.
809         * gnulib/import/m4/glob.m4: Update.
810         * gnulib/import/m4/glob_h.m4: Update.
811         * gnulib/import/m4/gnulib-cache.m4: Update.
812         * gnulib/import/m4/gnulib-common.m4: Update.
813         * gnulib/import/m4/gnulib-comp.m4: Update.
814         * gnulib/import/m4/gnulib-tool.m4: Update.
815         * gnulib/import/m4/hard-locale.m4: Update.
816         * gnulib/import/m4/include_next.m4: Update.
817         * gnulib/import/m4/inttypes-pri.m4: Update.
818         * gnulib/import/m4/inttypes.m4: Update.
819         * gnulib/import/m4/isnand.m4: Update.
820         * gnulib/import/m4/isnanl.m4: Update.
821         * gnulib/import/m4/largefile.m4: Update.
822         * gnulib/import/m4/limits-h.m4: Update.
823         * gnulib/import/m4/localcharset.m4: Update.
824         * gnulib/import/m4/locale-fr.m4: Update.
825         * gnulib/import/m4/locale-ja.m4: Update.
826         * gnulib/import/m4/locale-zh.m4: Update.
827         * gnulib/import/m4/localtime-buffer.m4: Update.
828         * gnulib/import/m4/longlong.m4: Update.
829         * gnulib/import/m4/lstat.m4: Update.
830         * gnulib/import/m4/malloc.m4: Update.
831         * gnulib/import/m4/malloca.m4: Update.
832         * gnulib/import/m4/math_h.m4: Update.
833         * gnulib/import/m4/mbrtowc.m4: Update.
834         * gnulib/import/m4/mbsinit.m4: Update.
835         * gnulib/import/m4/mbsrtowcs.m4: Update.
836         * gnulib/import/m4/mbstate_t.m4: Update.
837         * gnulib/import/m4/memchr.m4: Update.
838         * gnulib/import/m4/memmem.m4: Update.
839         * gnulib/import/m4/mempcpy.m4: Update.
840         * gnulib/import/m4/memrchr.m4: Update.
841         * gnulib/import/m4/mkdir.m4: Update.
842         * gnulib/import/m4/mkstemp.m4: Update.
843         * gnulib/import/m4/mmap-anon.m4: Update.
844         * gnulib/import/m4/mode_t.m4: Update.
845         * gnulib/import/m4/msvc-inval.m4: Update.
846         * gnulib/import/m4/msvc-nothrow.m4: Update.
847         * gnulib/import/m4/multiarch.m4: Update.
848         * gnulib/import/m4/nocrash.m4: Update.
849         * gnulib/import/m4/off_t.m4: Update.
850         * gnulib/import/m4/onceonly.m4: Update.
851         * gnulib/import/m4/open-cloexec.m4: Update.
852         * gnulib/import/m4/open.m4: Update.
853         * gnulib/import/m4/openat.m4: Update.
854         * gnulib/import/m4/opendir.m4: Update.
855         * gnulib/import/m4/pathmax.m4: Update.
856         * gnulib/import/m4/rawmemchr.m4: Update.
857         * gnulib/import/m4/readdir.m4: Update.
858         * gnulib/import/m4/readlink.m4: Update.
859         * gnulib/import/m4/realloc.m4: Update.
860         * gnulib/import/m4/rename.m4: Update.
861         * gnulib/import/m4/rewinddir.m4: Update.
862         * gnulib/import/m4/rmdir.m4: Update.
863         * gnulib/import/m4/save-cwd.m4: Update.
864         * gnulib/import/m4/secure_getenv.m4: Update.
865         * gnulib/import/m4/setenv.m4: Update.
866         * gnulib/import/m4/signal_h.m4: Update.
867         * gnulib/import/m4/ssize_t.m4: Update.
868         * gnulib/import/m4/stat-time.m4: Update.
869         * gnulib/import/m4/stat.m4: Update.
870         * gnulib/import/m4/std-gnu11.m4: Update.
871         * gnulib/import/m4/stdbool.m4: Update.
872         * gnulib/import/m4/stddef_h.m4: Update.
873         * gnulib/import/m4/stdint.m4: Update.
874         * gnulib/import/m4/stdio_h.m4: Update.
875         * gnulib/import/m4/stdlib_h.m4: Update.
876         * gnulib/import/m4/strchrnul.m4: Update.
877         * gnulib/import/m4/strdup.m4: Update.
878         * gnulib/import/m4/strerror.m4: Update.
879         * gnulib/import/m4/string_h.m4: Update.
880         * gnulib/import/m4/strstr.m4: Update.
881         * gnulib/import/m4/strtok_r.m4: Update.
882         * gnulib/import/m4/sys_socket_h.m4: Update.
883         * gnulib/import/m4/sys_stat_h.m4: Update.
884         * gnulib/import/m4/sys_time_h.m4: Update.
885         * gnulib/import/m4/sys_types_h.m4: Update.
886         * gnulib/import/m4/tempname.m4: Update.
887         * gnulib/import/m4/time_h.m4: Update.
888         * gnulib/import/m4/unistd-safer.m4: Update.
889         * gnulib/import/m4/unistd_h.m4: Update.
890         * gnulib/import/m4/warn-on-use.m4: Update.
891         * gnulib/import/m4/wchar_h.m4: Update.
892         * gnulib/import/m4/wchar_t.m4: Update.
893         * gnulib/import/m4/wctype_h.m4: Update.
894         * gnulib/import/m4/wint_t.m4: Update.
895         * gnulib/import/malloc.c: Update.
896         * gnulib/import/malloc/scratch_buffer.h: Update.
897         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
898         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
899         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
900         * gnulib/import/malloca.c: Update.
901         * gnulib/import/malloca.h: Update.
902         * gnulib/import/malloca.valgrind: Update.
903         * gnulib/import/math.in.h: Update.
904         * gnulib/import/mbrtowc.c: Update.
905         * gnulib/import/mbsinit.c: Update.
906         * gnulib/import/mbsrtowcs-impl.h: Update.
907         * gnulib/import/mbsrtowcs-state.c: Update.
908         * gnulib/import/mbsrtowcs.c: Update.
909         * gnulib/import/memchr.c: Update.
910         * gnulib/import/memmem.c: Update.
911         * gnulib/import/mempcpy.c: Update.
912         * gnulib/import/memrchr.c: Update.
913         * gnulib/import/mkdir.c: Update.
914         * gnulib/import/mkstemp.c: Update.
915         * gnulib/import/msvc-inval.c: Update.
916         * gnulib/import/msvc-inval.h: Update.
917         * gnulib/import/msvc-nothrow.c: Update.
918         * gnulib/import/msvc-nothrow.h: Update.
919         * gnulib/import/open.c: Update.
920         * gnulib/import/openat-die.c: Update.
921         * gnulib/import/openat-priv.h: Update.
922         * gnulib/import/openat-proc.c: Update.
923         * gnulib/import/openat.c: Update.
924         * gnulib/import/openat.h: Update.
925         * gnulib/import/opendir.c: Update.
926         * gnulib/import/pathmax.h: Update.
927         * gnulib/import/pipe-safer.c: Update.
928         * gnulib/import/rawmemchr.c: Update.
929         * gnulib/import/readdir.c: Update.
930         * gnulib/import/readlink.c: Update.
931         * gnulib/import/realloc.c: Update.
932         * gnulib/import/ref-add.sin: Update.
933         * gnulib/import/ref-del.sin: Update.
934         * gnulib/import/rename.c: Update.
935         * gnulib/import/rewinddir.c: Update.
936         * gnulib/import/rmdir.c: Update.
937         * gnulib/import/same-inode.h: Update.
938         * gnulib/import/save-cwd.c: Update.
939         * gnulib/import/save-cwd.h: Update.
940         * gnulib/import/scratch_buffer.h: Update.
941         * gnulib/import/secure_getenv.c: Update.
942         * gnulib/import/setenv.c: Update.
943         * gnulib/import/signal.in.h: Update.
944         * gnulib/import/stat-time.c: Update.
945         * gnulib/import/stat-time.h: Update.
946         * gnulib/import/stat-w32.c: Update.
947         * gnulib/import/stat-w32.h: Update.
948         * gnulib/import/stat.c: Update.
949         * gnulib/import/stdbool.in.h: Update.
950         * gnulib/import/stddef.in.h: Update.
951         * gnulib/import/stdint.in.h: Update.
952         * gnulib/import/stdio.in.h: Update.
953         * gnulib/import/stdlib.in.h: Update.
954         * gnulib/import/str-two-way.h: Update.
955         * gnulib/import/strchrnul.c: Update.
956         * gnulib/import/strdup.c: Update.
957         * gnulib/import/streq.h: Update.
958         * gnulib/import/strerror-override.c: Update.
959         * gnulib/import/strerror-override.h: Update.
960         * gnulib/import/strerror.c: Update.
961         * gnulib/import/string.in.h: Update.
962         * gnulib/import/stripslash.c: Update.
963         * gnulib/import/strnlen1.c: Update.
964         * gnulib/import/strnlen1.h: Update.
965         * gnulib/import/strstr.c: Update.
966         * gnulib/import/strtok_r.c: Update.
967         * gnulib/import/sys_stat.in.h: Update.
968         * gnulib/import/sys_time.in.h: Update.
969         * gnulib/import/sys_types.in.h: Update.
970         * gnulib/import/tempname.c: Update.
971         * gnulib/import/tempname.h: Update.
972         * gnulib/import/time.in.h: Update.
973         * gnulib/import/unistd--.h: Update.
974         * gnulib/import/unistd-safer.h: Update.
975         * gnulib/import/unistd.in.h: Update.
976         * gnulib/import/unsetenv.c: Update.
977         * gnulib/import/verify.h: Update.
978         * gnulib/import/extra/snippet/warn-on-use.h: Update.
979         * gnulib/import/wchar.in.h: Update.
980         * gnulib/import/wctype.in.h: Update.
981         * gnulib/import/xalloc-oversized.h: Update.
982         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
983         "53e2c179f26a890fa6685af4b6c1397ee370433b".
984
985 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
986
987         * record-btrace.c (get_thread_current_frame): Remove
988         old_inferior_ptid.
989
990 2018-09-10  Jerome Guitton  <guitton@adacore.com>
991
992         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
993         with check_tag to 1 if and only if the type is tagged and the
994         component being searched cannot been found in the current
995         view. Otherwise, always call ada_to_fixed_type with
996         check_tag to 0.
997
998 2018-09-10  Xavier Roirand  <roirand@adacore.com>
999
1000         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1001         declaration.
1002         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1003         * ada-varobj.c (ada_varobj_get_number_of_children,
1004         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1005
1006 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1007
1008         * ada-valprint.c (ada_value_print): Use type instead of
1009         enclosing type.
1010
1011 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1012
1013         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1014         an array of access to unconstrained array.
1015
1016 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1017
1018         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1019         (ada_check_typedef): Use it.
1020
1021 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1022
1023         * ada-varobj.c (ada_varobj_describe_struct_child)
1024         (ada_varobj_describe_child): Handle union case like struct one.
1025
1026 2018-09-10  Tom Tromey  <tom@tromey.com>
1027
1028         PR python/18380:
1029         * python/python.c (_initialize_python): Make example in "python"
1030         help work in Python 3.
1031
1032 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1033
1034         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1035         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1036         $(EXEEXT) to the script, as it is not a program.
1037
1038 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1039
1040         * python/py-prettyprint.c (pretty_print_one_value): Return
1041         gdbpy_ref<>.
1042         (print_string_repr): Adjust.
1043         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1044         * python/python-internal.h (apply_varobj_pretty_printer): Return
1045         gdbpy_ref<>.
1046         * varobj.c (varobj_value_get_print_value): Adjust.
1047
1048 2018-09-08  Tom Tromey  <tom@tromey.com>
1049
1050         PR python/16047:
1051         * python/py-prettyprint.c (pretty_print_one_value): Check for
1052         to_string method.
1053
1054 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1055
1056         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1057         replace_operator_with_call.
1058
1059 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1060
1061         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1062
1063 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1064
1065         * ada-typeprint.c (print_range): Print the bounds using TYPE
1066         rather than its TYPE_TARGET_TYPE.
1067
1068 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1069
1070         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1071         call to ada_to_fixed_value_create.
1072
1073 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1074
1075         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1076
1077 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1078
1079         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1080         by calls to error.
1081
1082 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1083
1084         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1085         Move update of loop variable "fi".
1086
1087 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1088
1089         * ada-lang.c (value_assign_to_component): In the case of
1090         big-endian targets, extract the bits of the given VAL
1091         using an src_offset of zero if container is not a scalar.
1092
1093 2018-09-06  Simon Ser  <contact@emersion.fr>
1094
1095         PR gdb/23105
1096         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1097         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1098         * fbsd-tdep.c (fbsd_make_note_desc): New.
1099         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1100         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1101         * target.h (enum target_object) Add FreeBSD-specific
1102         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1103
1104 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1105
1106         * compile/compile-c.h (generate_c_for_variable_locations):
1107         Change reference to pointer.
1108         * compile/compile-c-support.c (compile_program) <compute>:
1109         Likewise.
1110         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1111         (generate_c_for_for_one_variable): Likewise
1112         (generate_c_for_variable_locations): Likewise
1113         * compile/compile-c-types.c (compile_c_instance::convert_type):
1114         Likewise
1115         * compile/compile-cplus-symbols.c (convert_one_symbol):
1116         std::move the scope passed to enter_scope.
1117         * compile/compile-cplus-types.c
1118         (compile_cplus_instance::enter_scope): Make parameter
1119         rvalue-reference.
1120         (compile_cplus_instance::new_scope): Change reference to
1121         pointer.
1122         (compile_cplus_instance::convert_type): Likewise
1123         (compile_cplus_convert_typedef): std::move the scope passed to
1124         enter_scope.
1125         (compile_cplus_convert_struct_or_union): Likewise.
1126         (compile_cplus_convert_enum): Likewise.
1127         (compile_cplus_convert_namespace): Likewise.
1128         * compile/compile-cplus.h (compile_cplus_instance)
1129         <enter_scope>: Make parameter rvalue-reference.
1130         * compile/compile-internal.h (compile_instance)
1131         <get_cached_type>: Likewise
1132         * compile/compile-loc2c.c (push): Likewise
1133         (pushf): Likewise
1134         (unary): Likewise
1135         (binary): Likewise
1136         (print_label): Likewise
1137         (pushf_register_address): Likewise
1138         (pushf_register): Likewise
1139         (do_compile_dwarf_expr_to_c): Likewise
1140         (compile_dwarf_expr_to_c): Likewise
1141         (compile_dwarf_bounds_to_c): Likewise
1142         * compile/compile.c (compile_instance::get_cached_type):
1143         Likewise
1144         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1145         (compile_dwarf_bounds_to_c): Likewise
1146         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1147         (dwarf2_compile_property_to_c): Likewise
1148         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1149         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1150         Likewise
1151
1152 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1153
1154         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1155         * tui/tui-data.c (init_content_element): Don't initialize it.
1156
1157 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1158
1159         * tui/tui-data.h (struct tui_win_info)
1160         <detail::opaque>: Remove.
1161         * tui/tui-data.c (init_win_info): Remove assignment.
1162
1163 2018-09-05  Tom Tromey  <tom@tromey.com>
1164
1165         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1166         -Wformat-nonliteral.
1167         * target-float.c (host_float_ops<T>::to_string)
1168         (host_float_ops<T>::from_string): Use
1169         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1170         * configure: Rebuild.
1171
1172 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1173
1174         * printcmd.c (printf_c_string): Use
1175         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1176         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1177
1178 2018-09-05  Tom Tromey  <tom@tromey.com>
1179
1180         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1181
1182 2018-09-05  Tom de Vries  <tdevries@suse.de>
1183
1184         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1185         with resolve_abstract_p == true.
1186         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1187         defaulting to false. Propagate resolve_abstract_p to
1188         dwarf2_fetch_die_loc_sect_off.
1189         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1190         parameter, defaulting to false.
1191         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1192         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1193         parameter.
1194         * dwarf2read.h (struct die_info): Forward-declare.
1195         (die_info_ptr): New typedef.
1196         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1197
1198 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1199
1200         GDB 8.2 released.
1201
1202 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1203             Pedro Alves  <palves@redhat.com>
1204
1205         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1206         "aclocal-m4-deps.mk".  Include file here.
1207         $(srcdir)/aclocal.m4: Add "configure.ac".
1208         * gnulib/aclocal-m4-deps.mk: New file.
1209         * gnulib/update-gnulib.sh: Automatically update
1210         "aclocal-m4-deps.mk".
1211
1212 2018-09-04  Tom Tromey  <tom@tromey.com>
1213
1214         * configure: Rebuild.
1215         * configure.ac: Remove multi-ice code.
1216
1217 2018-09-04  Tom Tromey  <tom@tromey.com>
1218
1219         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1220         (ada-exp.o): Update.
1221
1222 2018-09-04  Tom Tromey  <tom@tromey.com>
1223
1224         * Makefile.in (printcmd.o, target-float.o): Remove.
1225         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1226
1227 2018-09-04  Tom Tromey  <tom@tromey.com>
1228
1229         * gnulib/Makefile.in: Remove obsolete comment.
1230         * Makefile.in: Remove obsolete comment.
1231
1232 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1233
1234         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1235         line with '+'.
1236
1237 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1238
1239         * riscv-tdep.c: Add 'prologue-value.h' include.
1240         (struct riscv_unwind_cache): New struct.
1241         (riscv_debug_unwinder): New global.
1242         (riscv_scan_prologue): Update arguments, capture register details
1243         from prologue scan.
1244         (riscv_skip_prologue): Reformat arguments line, move end of
1245         prologue calculation into riscv_scan_prologue.
1246         (riscv_frame_cache): Update return type, create
1247         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1248         details.
1249         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1250         (riscv_frame_prev_register): Use the trad_frame within the
1251         riscv_unwind_cache.
1252         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1253         flag.
1254
1255 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1256
1257         * trad-frame.h (trad_frame_set_realreg): Declare.
1258         (trad_frame_set_addr): Declare.
1259         * trad-frame.c (trad_frame_set_realreg): Define new function.
1260         (trad_frame_set_addr): Define new function.
1261         (trad_frame_set_reg_realreg): Use new function.
1262         (trad_frame_set_reg_addr): Use new function.
1263
1264 2018-09-01  Keith Seitz  <keiths@redhat.com>
1265
1266         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1267         pulongest instead of "%lld".
1268         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1269         ATTRIBUTE_UNUSED.
1270
1271 2018-08-31  Tom Tromey  <tom@tromey.com>
1272
1273         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1274         variant part type.
1275
1276 2018-08-31  Pedro Alves  <palves@redhat.com>
1277
1278         * gdbarch.h: Regenerate.
1279
1280 2018-08-31  Pedro Alves  <palves@redhat.com>
1281
1282         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1283         * target.h (Hardware watchpoint interfaces): Describe
1284         continuable/steppable/non-steppable watchpoints.
1285         * gdbarch.h, gdbarch.c: Regenerate.
1286
1287 2018-08-31  Pedro Alves  <palves@redhat.com>
1288
1289         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1290         Delete.
1291         * s390-linux-nat.c
1292         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1293         * target.h (target_ops::have_continuable_watchpoint): Delete.
1294         (target_have_continuable_watchpoint): Delete.
1295         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1296         * target-delegates.c: Regenerate.
1297
1298 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1299
1300         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1301         the files present in "gnulib/import/m4/".
1302
1303 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1304
1305         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1306         c.sw, c.swsp, and c.sdsp.
1307
1308 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1309
1310         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1311         (riscv_read_misa_reg): Don't cache value read into inferior data.
1312         (riscv_new_inferior_data): Delete.
1313         (riscv_inferior_data_cleanup): Delete.
1314         (riscv_inferior_data): Delete.
1315         (riscv_invalidate_inferior_data): Delete.
1316         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1317
1318 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1319
1320         * compile/compile-cplus-types.c
1321         (compile_cplus_instance::leave_scope): Take the address of scope
1322         object.
1323         (compile_cplus_instance::convert_qualified_base): Compare quals
1324         to 0.
1325
1326 2018-08-30  Keith Seitz  <keiths@redhat.com>
1327
1328         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1329         Use "%s" and host_address_to_string instead of "%p" in printf.
1330
1331 2018-08-29  Keith Seitz  <keiths@redhat.com>
1332
1333         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1334         and compile-cplus-types.c.
1335         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1336         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1337         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1338         Declare.
1339         * compile/compile-c-support.c: Include compile-cplus.h.
1340         (load_libcompile): Templatize.
1341         (get_compile_context): "New" function.
1342         (c_get_compile_context): Use get_compile_context.
1343         (cplus_get_compile_context): New function.
1344         (cplus_push_user_expression, cplus_pop_user_expression)
1345         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1346         (cplus_compute_program): Define new structs/functions.
1347         * compile/compile-cplus-symmbols.c: New file.
1348         * compile/compile-cplus-types.c: New file.
1349         * compile/compile-cplus.h: New file.
1350         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1351         Declare.
1352         * compile/compile-object-load.c (get_out_value_type): Use
1353         strncmp_iw when comparing symbol names.
1354         (compile_object_load): Add mst_bss and mst_data.
1355         * compile/compile.c (_initialize_compile): Remove
1356         -Wno-implicit-function-declaration from `compile_args'.
1357         * compile/gcc-cp-plugin.h: New file.
1358         * NEWS: Mention C++ compile support and new debug options.
1359
1360 2018-08-29  Keith Seitz  <keiths@redhat.com>
1361
1362         * linespec.c (collect_info::add_symbol): Make virtual.
1363         (struct symbol_searcher_collect_info): New struct.
1364         (symbol_searcher::find_all_symbols): New method.
1365         * symtab.h (class symbol_searcher): New class.
1366
1367 2018-08-29  Keith Seitz  <keiths@redhat.com>
1368
1369         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1370         Change to vector of block_symbol.  Update all users.
1371         (struct collect_info) <symbols>: Likewise.
1372         (collect_info::add_symbol): Take block_symbol as argument.
1373         Update all callers.
1374         (decode_compound_collector) <m_symbols>: Change type to vector
1375         of block_symbol.  Update all users.
1376         (decode_compound_collector::operator ()): Change parameter type
1377         to block_symbol.
1378         (find_method, find_function_symbols, find_linespec_symbols)
1379         (find_label_symbols_in_block, find_label_symbols): Change symbol
1380         vectors to block_symbol vectors.
1381         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1382         block_symbol.
1383
1384 2018-08-29  Keith Seitz  <keiths@redhat.com>
1385
1386         * linespec.c (symbolp): Remove typedef and VEC definitions.
1387         (bound_minimal_symbol_d): Likewise.
1388
1389 2018-08-29  Keith Seitz  <keiths@redhat.com>
1390
1391         * linespec.c (decode_compound_collector::decode_compound_collector):
1392         Remove initialization for `m_symtabs'.
1393         (decode_compound_collector::release_symbols): Change return type
1394         to std::vector.  Update all callers.
1395         (class decode_compound_collector) <m_symbols>: Change type to
1396         std::vector.
1397         (lookup_prefix_sym): Change return type to std::vector.  Update all
1398         callers.
1399         (compare_symbols): Remove.
1400         (std_compare_symbols): Rename to `compare_symbols'.
1401         (find_method): Change `sym_classes' parameter to std::vector.
1402         Update all callers.  Use std::sort to sort sym_classes.
1403         (find_linespec_symbols): Remove cleanup.
1404
1405 2018-08-29  Keith Seitz  <keiths@redhat.com>
1406
1407         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1408         std::vector.  Update all users.
1409         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1410         (struct collect_info) <minimal_symbols>: Likewise.
1411         (compare_msymbols): Return bool.  Change parameters to const
1412         bound_minimal_symbol references.
1413         (find_method, find_function_symbols, find_linespec_symbols): Change
1414         `minsyms' parameter to std::vector.  Update all callers.
1415
1416 2018-08-29  Keith Seitz  <keiths@redhat.com>
1417
1418         * linespec.c (struct linespec) <label_symbols>: Change type to
1419         std::vector.  Update all users.
1420         (find_label_symbols_in_block): Change `result' parameter to
1421         std::vector.  Update all callers.
1422         (find_label_symbols): Return std::vector.  Update all callers.
1423
1424 2018-08-29  Keith Seitz  <keiths@redhat.com>
1425
1426         * linespec.c (struct linespec) <function_symbols>: Change type to
1427         std::vector.  Update all users.
1428         (struct collect_info) <function_symbols>: Likewise.
1429         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1430         (std_compare_symbols): New function.
1431         (find_method, find_function_symbols, find_linespec_symbols)
1432         (find_label_symbols_in_block): Change `symbols' parameter to
1433         std::vector.  Update all callers.
1434         (find_label_symbols): Likewise for `function_symbols' and
1435         `label_funcs_ret'.
1436
1437 2018-08-29  Keith Seitz  <keiths@redhat.com>
1438
1439         * linespec.c (symtab_vector_up): Define.
1440         (struct linespec) <file_symtabs>: Change type to std::vector *.
1441         Update all uses.
1442         (struct collect_info) <file_symtabs>: Likewise.
1443         (collect_symtabs_from_filename): Return symtab_vector_up.
1444         Update all callers.
1445         (decode_objc): Remove cleanup.
1446         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1447         (symtab_collector::release_symtabs): Return symtab_vector_up.
1448         Update all callers.
1449         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1450         Update all users.
1451         (collect_symtabs_from_filename, symtabs_from_filename): Return
1452         symtab_vector_up.  Update all callers.
1453
1454 2018-08-29  Tom Tromey  <tom@tromey.com>
1455
1456         * csky-tdep.c (csky_analyze_prologue): Use
1457         core_addr_to_string_nz.
1458
1459 2018-08-29  Tom Tromey  <tom@tromey.com>
1460
1461         * windows-nat.c (struct xlate_exception) <them>: Change type to
1462         DWORD.
1463         (xlate): Fix formatting.  Remove last entry.
1464         (struct xlate_exception, xlate): Comment out.
1465         (windows_nat_target::resume): Use ranged for.
1466
1467 2018-08-29  Jim Wilson  <jimw@sifive.com>
1468
1469         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1470         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1471         of NT_PRFPREG.
1472         (riscv_linux_nat_target::store_registers): Likewise.
1473
1474 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1475
1476         PR gdb/23555
1477         PR gdb/23558
1478         * gnulib/aclocal.m4: Regenerate.
1479         * gnulib/config.in: Regenerate.
1480         * gnulib/configure: Regenerate.
1481         * gnulib/import/Makefile.am: Update.
1482         * gnulib/import/Makefile.in: Update.
1483         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1484         * gnulib/import/_Noreturn.h: ... this.
1485         * gnulib/import/alloca.in.h: Update.
1486         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1487         * gnulib/import/arg-nonnull.h: ... this.
1488         * gnulib/import/assure.h: Update.
1489         * gnulib/import/at-func.c: Update.
1490         * gnulib/import/basename-lgpl.c: Update.
1491         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1492         * gnulib/import/c++defs.h: ... this.
1493         * gnulib/import/canonicalize-lgpl.c: Update.
1494         * gnulib/import/cdefs.h: Update.
1495         * gnulib/import/chdir-long.c: Update.
1496         * gnulib/import/chdir-long.h: Update.
1497         * gnulib/import/cloexec.c: Update.
1498         * gnulib/import/cloexec.h: Update.
1499         * gnulib/import/close.c: Update.
1500         * gnulib/import/closedir.c: Update.
1501         * gnulib/import/config.charset: Update.
1502         * gnulib/import/dirent-private.h: Update.
1503         * gnulib/import/dirent.in.h: Update.
1504         * gnulib/import/dirfd.c: Update.
1505         * gnulib/import/dirname-lgpl.c: Update.
1506         * gnulib/import/dirname.h: Update.
1507         * gnulib/import/dosname.h: Update.
1508         * gnulib/import/dup-safer-flag.c: Update.
1509         * gnulib/import/dup-safer.c: Update.
1510         * gnulib/import/dup.c: Update.
1511         * gnulib/import/dup2.c: Update.
1512         * gnulib/import/errno.in.h: Update.
1513         * gnulib/import/error.c: Update.
1514         * gnulib/import/error.h: Update.
1515         * gnulib/import/exitfail.c: Update.
1516         * gnulib/import/exitfail.h: Update.
1517         * gnulib/import/extra/update-copyright: Update.
1518         * gnulib/import/fchdir.c: Update.
1519         * gnulib/import/fcntl.c: Update.
1520         * gnulib/import/fcntl.in.h: Update.
1521         * gnulib/import/fd-hook.c: Update.
1522         * gnulib/import/fd-hook.h: Update.
1523         * gnulib/import/fd-safer-flag.c: Update.
1524         * gnulib/import/fd-safer.c: Update.
1525         * gnulib/import/fdopendir.c: Update.
1526         * gnulib/import/filename.h: Update.
1527         * gnulib/import/filenamecat-lgpl.c: Update.
1528         * gnulib/import/filenamecat.h: Update.
1529         * gnulib/import/flexmember.h: Update.
1530         * gnulib/import/float+.h: Update.
1531         * gnulib/import/float.c: Update.
1532         * gnulib/import/float.in.h: Update.
1533         * gnulib/import/fnmatch.c: Update.
1534         * gnulib/import/fnmatch.in.h: Update.
1535         * gnulib/import/fnmatch_loop.c: Update.
1536         * gnulib/import/fpucw.h: Update.
1537         * gnulib/import/frexp.c: Update.
1538         * gnulib/import/frexpl.c: Update.
1539         * gnulib/import/fstat.c: Update.
1540         * gnulib/import/fstatat.c: Update.
1541         * gnulib/import/getcwd-lgpl.c: Update.
1542         * gnulib/import/getcwd.c: Update.
1543         * gnulib/import/getdtablesize.c: Update.
1544         * gnulib/import/getlogin_r.c: Update.
1545         * gnulib/import/getprogname.c: Update.
1546         * gnulib/import/getprogname.h: Update.
1547         * gnulib/import/gettext.h: Update.
1548         * gnulib/import/gettimeofday.c: Update.
1549         * gnulib/import/glob-libc.h: Update.
1550         * gnulib/import/glob.c: Update.
1551         * gnulib/import/glob.in.h: Update.
1552         * gnulib/import/glob_internal.h: Update.
1553         * gnulib/import/glob_pattern_p.c: Update.
1554         * gnulib/import/globfree.c: Update.
1555         * gnulib/import/hard-locale.c: Update.
1556         * gnulib/import/hard-locale.h: Update.
1557         * gnulib/import/intprops.h: Update.
1558         * gnulib/import/inttypes.in.h: Update.
1559         * gnulib/import/isnan.c: Update.
1560         * gnulib/import/isnand-nolibm.h: Update.
1561         * gnulib/import/isnand.c: Update.
1562         * gnulib/import/isnanl-nolibm.h: Update.
1563         * gnulib/import/isnanl.c: Update.
1564         * gnulib/import/itold.c: Update.
1565         * gnulib/import/libc-config.h: Update.
1566         * gnulib/import/limits.in.h: Update.
1567         * gnulib/import/localcharset.c: Update.
1568         * gnulib/import/localcharset.h: Update.
1569         * gnulib/import/localtime-buffer.c: Update.
1570         * gnulib/import/localtime-buffer.h: Update.
1571         * gnulib/import/lstat.c: Update.
1572         * gnulib/import/m4/00gnulib.m4: Update.
1573         * gnulib/import/m4/__inline.m4: Update.
1574         * gnulib/import/m4/absolute-header.m4: Update.
1575         * gnulib/import/m4/alloca.m4: Update.
1576         * gnulib/import/m4/builtin-expect.m4: Update.
1577         * gnulib/import/m4/canonicalize.m4: Update.
1578         * gnulib/import/m4/chdir-long.m4: Update.
1579         * gnulib/import/m4/close.m4: Update.
1580         * gnulib/import/m4/closedir.m4: Update.
1581         * gnulib/import/m4/configmake.m4: Update.
1582         * gnulib/import/m4/d-ino.m4: Update.
1583         * gnulib/import/m4/d-type.m4: Update.
1584         * gnulib/import/m4/dirent_h.m4: Update.
1585         * gnulib/import/m4/dirfd.m4: Update.
1586         * gnulib/import/m4/dirname.m4: Update.
1587         * gnulib/import/m4/double-slash-root.m4: Update.
1588         * gnulib/import/m4/dup.m4: Update.
1589         * gnulib/import/m4/dup2.m4: Update.
1590         * gnulib/import/m4/eealloc.m4: Update.
1591         * gnulib/import/m4/environ.m4: Update.
1592         * gnulib/import/m4/errno_h.m4: Update.
1593         * gnulib/import/m4/error.m4: Update.
1594         * gnulib/import/m4/exponentd.m4: Update.
1595         * gnulib/import/m4/exponentl.m4: Update.
1596         * gnulib/import/m4/extensions.m4: Update.
1597         * gnulib/import/m4/extern-inline.m4: Update.
1598         * gnulib/import/m4/fchdir.m4: Update.
1599         * gnulib/import/m4/fcntl-o.m4: Update.
1600         * gnulib/import/m4/fcntl.m4: Update.
1601         * gnulib/import/m4/fcntl_h.m4: Update.
1602         * gnulib/import/m4/fdopendir.m4: Update.
1603         * gnulib/import/m4/filenamecat.m4: Update.
1604         * gnulib/import/m4/flexmember.m4: Update.
1605         * gnulib/import/m4/float_h.m4: Update.
1606         * gnulib/import/m4/fnmatch.m4: Update.
1607         * gnulib/import/m4/fnmatch_h.m4: Update.
1608         * gnulib/import/m4/fpieee.m4: Update.
1609         * gnulib/import/m4/frexp.m4: Update.
1610         * gnulib/import/m4/frexpl.m4: Update.
1611         * gnulib/import/m4/fstat.m4: Update.
1612         * gnulib/import/m4/fstatat.m4: Update.
1613         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1614         * gnulib/import/m4/getcwd-path-max.m4: Update.
1615         * gnulib/import/m4/getcwd.m4: Update.
1616         * gnulib/import/m4/getdtablesize.m4: Update.
1617         * gnulib/import/m4/getlogin.m4: Update.
1618         * gnulib/import/m4/getlogin_r.m4: Update.
1619         * gnulib/import/m4/getpagesize.m4: Update.
1620         * gnulib/import/m4/getprogname.m4: Update.
1621         * gnulib/import/m4/gettimeofday.m4: Update.
1622         * gnulib/import/m4/glibc21.m4: Update.
1623         * gnulib/import/m4/glob.m4: Update.
1624         * gnulib/import/m4/glob_h.m4: Update.
1625         * gnulib/import/m4/gnulib-cache.m4: Update.
1626         * gnulib/import/m4/gnulib-common.m4: Update.
1627         * gnulib/import/m4/gnulib-comp.m4: Update.
1628         * gnulib/import/m4/gnulib-tool.m4: Update.
1629         * gnulib/import/m4/hard-locale.m4: Update.
1630         * gnulib/import/m4/include_next.m4: Update.
1631         * gnulib/import/m4/inttypes-pri.m4: Update.
1632         * gnulib/import/m4/inttypes.m4: Update.
1633         * gnulib/import/m4/isnand.m4: Update.
1634         * gnulib/import/m4/isnanl.m4: Update.
1635         * gnulib/import/m4/largefile.m4: Update.
1636         * gnulib/import/m4/limits-h.m4: Update.
1637         * gnulib/import/m4/localcharset.m4: Update.
1638         * gnulib/import/m4/locale-fr.m4: Update.
1639         * gnulib/import/m4/locale-ja.m4: Update.
1640         * gnulib/import/m4/locale-zh.m4: Update.
1641         * gnulib/import/m4/localtime-buffer.m4: Update.
1642         * gnulib/import/m4/longlong.m4: Update.
1643         * gnulib/import/m4/lstat.m4: Update.
1644         * gnulib/import/m4/malloc.m4: Update.
1645         * gnulib/import/m4/malloca.m4: Update.
1646         * gnulib/import/m4/math_h.m4: Update.
1647         * gnulib/import/m4/mbrtowc.m4: Update.
1648         * gnulib/import/m4/mbsinit.m4: Update.
1649         * gnulib/import/m4/mbsrtowcs.m4: Update.
1650         * gnulib/import/m4/mbstate_t.m4: Update.
1651         * gnulib/import/m4/memchr.m4: Update.
1652         * gnulib/import/m4/memmem.m4: Update.
1653         * gnulib/import/m4/mempcpy.m4: Update.
1654         * gnulib/import/m4/memrchr.m4: Update.
1655         * gnulib/import/m4/mkdir.m4: Update.
1656         * gnulib/import/m4/mkstemp.m4: Update.
1657         * gnulib/import/m4/mmap-anon.m4: Update.
1658         * gnulib/import/m4/mode_t.m4: Update.
1659         * gnulib/import/m4/msvc-inval.m4: Update.
1660         * gnulib/import/m4/msvc-nothrow.m4: Update.
1661         * gnulib/import/m4/multiarch.m4: Update.
1662         * gnulib/import/m4/nocrash.m4: Update.
1663         * gnulib/import/m4/off_t.m4: Update.
1664         * gnulib/import/m4/onceonly.m4: Update.
1665         * gnulib/import/m4/open-cloexec.m4: Update.
1666         * gnulib/import/m4/open.m4: Update.
1667         * gnulib/import/m4/openat.m4: Update.
1668         * gnulib/import/m4/opendir.m4: Update.
1669         * gnulib/import/m4/pathmax.m4: Update.
1670         * gnulib/import/m4/rawmemchr.m4: Update.
1671         * gnulib/import/m4/readdir.m4: Update.
1672         * gnulib/import/m4/readlink.m4: Update.
1673         * gnulib/import/m4/realloc.m4: Update.
1674         * gnulib/import/m4/rename.m4: Update.
1675         * gnulib/import/m4/rewinddir.m4: Update.
1676         * gnulib/import/m4/rmdir.m4: Update.
1677         * gnulib/import/m4/save-cwd.m4: Update.
1678         * gnulib/import/m4/secure_getenv.m4: Update.
1679         * gnulib/import/m4/setenv.m4: Update.
1680         * gnulib/import/m4/signal_h.m4: Update.
1681         * gnulib/import/m4/ssize_t.m4: Update.
1682         * gnulib/import/m4/stat-time.m4: Update.
1683         * gnulib/import/m4/stat.m4: Update.
1684         * gnulib/import/m4/std-gnu11.m4: Update.
1685         * gnulib/import/m4/stdbool.m4: Update.
1686         * gnulib/import/m4/stddef_h.m4: Update.
1687         * gnulib/import/m4/stdint.m4: Update.
1688         * gnulib/import/m4/stdio_h.m4: Update.
1689         * gnulib/import/m4/stdlib_h.m4: Update.
1690         * gnulib/import/m4/strchrnul.m4: Update.
1691         * gnulib/import/m4/strdup.m4: Update.
1692         * gnulib/import/m4/strerror.m4: Update.
1693         * gnulib/import/m4/string_h.m4: Update.
1694         * gnulib/import/m4/strstr.m4: Update.
1695         * gnulib/import/m4/strtok_r.m4: Update.
1696         * gnulib/import/m4/sys_socket_h.m4: Update.
1697         * gnulib/import/m4/sys_stat_h.m4: Update.
1698         * gnulib/import/m4/sys_time_h.m4: Update.
1699         * gnulib/import/m4/sys_types_h.m4: Update.
1700         * gnulib/import/m4/tempname.m4: Update.
1701         * gnulib/import/m4/time_h.m4: Update.
1702         * gnulib/import/m4/unistd-safer.m4: Update.
1703         * gnulib/import/m4/unistd_h.m4: Update.
1704         * gnulib/import/m4/warn-on-use.m4: Update.
1705         * gnulib/import/m4/wchar_h.m4: Update.
1706         * gnulib/import/m4/wchar_t.m4: Update.
1707         * gnulib/import/m4/wctype_h.m4: Update.
1708         * gnulib/import/m4/wint_t.m4: Update.
1709         * gnulib/import/malloc.c: Update.
1710         * gnulib/import/malloc/scratch_buffer.h: Update.
1711         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1712         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1713         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1714         * gnulib/import/malloca.c: Update.
1715         * gnulib/import/malloca.h: Update.
1716         * gnulib/import/malloca.valgrind: Update.
1717         * gnulib/import/math.in.h: Update.
1718         * gnulib/import/mbrtowc.c: Update.
1719         * gnulib/import/mbsinit.c: Update.
1720         * gnulib/import/mbsrtowcs-impl.h: Update.
1721         * gnulib/import/mbsrtowcs-state.c: Update.
1722         * gnulib/import/mbsrtowcs.c: Update.
1723         * gnulib/import/memchr.c: Update.
1724         * gnulib/import/memmem.c: Update.
1725         * gnulib/import/mempcpy.c: Update.
1726         * gnulib/import/memrchr.c: Update.
1727         * gnulib/import/mkdir.c: Update.
1728         * gnulib/import/mkstemp.c: Update.
1729         * gnulib/import/msvc-inval.c: Update.
1730         * gnulib/import/msvc-inval.h: Update.
1731         * gnulib/import/msvc-nothrow.c: Update.
1732         * gnulib/import/msvc-nothrow.h: Update.
1733         * gnulib/import/open.c: Update.
1734         * gnulib/import/openat-die.c: Update.
1735         * gnulib/import/openat-priv.h: Update.
1736         * gnulib/import/openat-proc.c: Update.
1737         * gnulib/import/openat.c: Update.
1738         * gnulib/import/openat.h: Update.
1739         * gnulib/import/opendir.c: Update.
1740         * gnulib/import/pathmax.h: Update.
1741         * gnulib/import/pipe-safer.c: Update.
1742         * gnulib/import/rawmemchr.c: Update.
1743         * gnulib/import/readdir.c: Update.
1744         * gnulib/import/readlink.c: Update.
1745         * gnulib/import/realloc.c: Update.
1746         * gnulib/import/ref-add.sin: Update.
1747         * gnulib/import/ref-del.sin: Update.
1748         * gnulib/import/rename.c: Update.
1749         * gnulib/import/rewinddir.c: Update.
1750         * gnulib/import/rmdir.c: Update.
1751         * gnulib/import/same-inode.h: Update.
1752         * gnulib/import/save-cwd.c: Update.
1753         * gnulib/import/save-cwd.h: Update.
1754         * gnulib/import/scratch_buffer.h: Update.
1755         * gnulib/import/secure_getenv.c: Update.
1756         * gnulib/import/setenv.c: Update.
1757         * gnulib/import/signal.in.h: Update.
1758         * gnulib/import/stat-time.c: Update.
1759         * gnulib/import/stat-time.h: Update.
1760         * gnulib/import/stat-w32.c: Update.
1761         * gnulib/import/stat-w32.h: Update.
1762         * gnulib/import/stat.c: Update.
1763         * gnulib/import/stdbool.in.h: Update.
1764         * gnulib/import/stddef.in.h: Update.
1765         * gnulib/import/stdint.in.h: Update.
1766         * gnulib/import/stdio.in.h: Update.
1767         * gnulib/import/stdlib.in.h: Update.
1768         * gnulib/import/str-two-way.h: Update.
1769         * gnulib/import/strchrnul.c: Update.
1770         * gnulib/import/strdup.c: Update.
1771         * gnulib/import/streq.h: Update.
1772         * gnulib/import/strerror-override.c: Update.
1773         * gnulib/import/strerror-override.h: Update.
1774         * gnulib/import/strerror.c: Update.
1775         * gnulib/import/string.in.h: Update.
1776         * gnulib/import/stripslash.c: Update.
1777         * gnulib/import/strnlen1.c: Update.
1778         * gnulib/import/strnlen1.h: Update.
1779         * gnulib/import/strstr.c: Update.
1780         * gnulib/import/strtok_r.c: Update.
1781         * gnulib/import/sys_stat.in.h: Update.
1782         * gnulib/import/sys_time.in.h: Update.
1783         * gnulib/import/sys_types.in.h: Update.
1784         * gnulib/import/tempname.c: Update.
1785         * gnulib/import/tempname.h: Update.
1786         * gnulib/import/time.in.h: Update.
1787         * gnulib/import/unistd--.h: Update.
1788         * gnulib/import/unistd-safer.h: Update.
1789         * gnulib/import/unistd.in.h: Update.
1790         * gnulib/import/unsetenv.c: Update.
1791         * gnulib/import/verify.h: Update.
1792         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1793         * gnulib/import/wchar.in.h: Update.
1794         * gnulib/import/wctype.in.h: Update.
1795         * gnulib/import/xalloc-oversized.h: Update.
1796         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1797         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1798
1799 2018-08-16  Gary Benson <gbenson@redhat.com>
1800
1801         PR gdb/13000:
1802         * gdb/main.c (captured_main_1): Exit with nonzero status
1803         in batch mode if the last command to be executed failed.
1804         * NEWS: Mention the above.
1805
1806 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1807
1808         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1809         end of warning message.
1810
1811 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1812
1813         PR gdb/22943:
1814         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1815         (aarch64_extract_return_value): Use
1816         aapcs_is_vfp_call_or_return_candidate.
1817         (aarch64_return_in_memory): Likewise.
1818         (aarch64_store_return_value): Likewise.
1819
1820 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1821
1822         * aarch64-tdep.c
1823         (aapcs_is_vfp_call_or_return_candidate): Make static
1824         (pass_in_v_or_stack): Remove function.
1825         (pass_in_v_vfp_candidate): New function.
1826         (aarch64_push_dummy_call): Check for float register candidates.
1827
1828 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1829
1830         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1831         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1832         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1833
1834 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1835
1836         PR build/23399
1837         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1838         (struct ipa_sym_addresses): Rename to...
1839         (struct ipa_sym_addresses_common): ... this.
1840         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1841
1842 2018-08-28  Tom Tromey  <tom@tromey.com>
1843
1844         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1845         (token_fifo): Now a std::vector.
1846         (yylex, c_parse): Update.
1847         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1848         (token_fifo): Now a std::vector.
1849         (yylex, d_parse): Update.
1850         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1851         (token_fifo): Now a std::vector.
1852         (yylex, go_parse): Update.
1853
1854 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1855
1856         * parser-defs.h (struct type_stack) <elements>: Change type to
1857         std::vector<union type_stack_elt>.
1858         <depth, size>: Remove.
1859         * parse.c (parse_exp_in_context_1): Adjust.
1860         (type_stack_reserve): Remove.
1861         (check_type_stack_depth): Remove.
1862         (insert_into_type_stack): Adjust to std::vector.
1863         (insert_type): Likewise.
1864         (push_type): Likewise.
1865         (push_type_int): Likewise.
1866         (insert_type_address_space): Likewise.
1867         (pop_type): Likewise.
1868         (pop_type_int): Likewise.
1869         (pop_typelist): Likewise.
1870         (pop_type_stack): Likewise.
1871         (append_type_stack): Likewise.
1872         (push_type_stack): Likewise.
1873         (get_type_stack): Likewise.
1874         (type_stack_cleanup): Likewise.
1875         (push_typelist): Likewise.
1876         (follow_types): Likewise.
1877         (_initialize_parse): Likewise.
1878
1879 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1880
1881         * NEWS: Mention csky target.
1882
1883 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1884             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1885             Don Breazeal  <donb@codesourcery.com>
1886
1887         * csky-linux-tdep.c: New file.
1888         * csky-tdep.c: Likewise.
1889         * csky-tdep.h: Likewise.
1890         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1891         csky-tdep.o.
1892         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1893         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1894         * configure.tgt: Add csky support.
1895
1896 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1897
1898         * python/py-framefilter.c (py_print_frame): Print frame architecture
1899         when printing on an MI output.
1900
1901 2018-08-27  Tom Tromey  <tom@tromey.com>
1902
1903         PR build/23087:
1904         * configure: Rebuild.
1905         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1906
1907 2018-08-27  Tom Tromey  <tom@tromey.com>
1908
1909         * aarch64-linux-tdep.c
1910         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1911         casts to int.
1912
1913 2018-08-27  Tom Tromey  <tom@tromey.com>
1914
1915         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1916         unsigned.
1917         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1918         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1919         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1920         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1921         unsigned.
1922
1923 2018-08-27  Tom Tromey  <tom@tromey.com>
1924
1925         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1926         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1927
1928 2018-08-27  Tom Tromey  <tom@tromey.com>
1929
1930         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1931         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1932         ULONGEST_MAX.
1933         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1934         ULONGEST_MAX.
1935         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1936         ULONGEST_MAX.
1937         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1938         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1939         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1940         ULONGEST_MAX.
1941         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1942         (ppc64_linux_sigaction_tramp_frame)
1943         (ppc32_linux_sighandler_tramp_frame)
1944         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1945         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1946         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1947         * mn10300-linux-tdep.c (am33_linux_sigframe)
1948         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1949         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1950         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1951         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1952         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1953         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1954         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1955         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1956         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1957         * microblaze-linux-tdep.c
1958         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1959         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1960         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1961         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1962         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1963         * common/common-types.h (ULONGEST_MAX): New define.
1964         (CORE_ADDR_MAX): Fix formatting.
1965         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1966         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1967         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1968         (arm_linux_rt_sigreturn_tramp_frame)
1969         (arm_eabi_linux_sigreturn_tramp_frame)
1970         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1971         (thumb2_eabi_linux_sigreturn_tramp_frame)
1972         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1973         (arm_linux_restart_syscall_tramp_frame)
1974         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1975         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1976         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1977         ULONGEST_MAX.
1978         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1979
1980 2018-08-27  Tom Tromey  <tom@tromey.com>
1981
1982         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1983         CORE_ADDR_MAX.
1984         * mips-tdep.c (mips_deal_with_atomic_sequence)
1985         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1986         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1987         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1988         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1989         CORE_ADDR_MAX.
1990         * aarch64-tdep.c (aarch64_software_single_step): Use
1991         CORE_ADDR_MAX.
1992
1993 2018-08-27  Tom Tromey  <tom@tromey.com>
1994
1995         * linespec.c (complete_linespec_component): Add cast to "char".
1996         * completer.c (completion_tracker::build_completion_result): Add
1997         cast to "char".
1998
1999 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2000
2001         * solist.h (struct solist, struct target_so_ops): Fix
2002         indentation.
2003
2004 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2005
2006         * ada-tasks.c (ada_task_info_s): Remove typedef.
2007         (DEF_VEC_O(ada_task_info_s)): Remove.
2008         (struct ada_tasks_inferior_data): Initialize fields.
2009         <task_list>: Make an std::vector.
2010         (get_ada_tasks_inferior_data): Allocate with new.
2011         (ada_get_task_number): Adjust.
2012         (get_task_number_from_id): Likewise.
2013         (valid_task_id): Likewise.
2014         (ada_get_task_info_from_ptid): Likewise.
2015         (iterate_over_live_ada_tasks): Likewise.
2016         (add_ada_task): Likewise.
2017         (read_known_tasks): Likewise.
2018         (ada_build_task_list): Likewise.
2019         (print_ada_task_info): Likewise.
2020         (info_task): Likewise.
2021         (task_command_1): Likewise.
2022
2023 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2024
2025         * ada-lang.c (add_angle_brackets): Return std::string.
2026
2027 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2028
2029         * python/py-threadevent.c (py_get_event_thread): Initialize
2030         pythread.
2031
2032 2018-08-24  Pedro Alves  <palves@redhat.com>
2033
2034         * python/py-bpevent.c (create_breakpoint_event_object): Use
2035         copy-initialization.
2036         * python/py-continueevent.c (emit_continue_event): Use
2037         copy-initialization.
2038         * python/py-exitedevent.c (create_exited_event_object): Return a
2039         gdbpy_ref<>.
2040         (emit_exited_event): Use copy-initialization.
2041         * python/py-inferior.c (python_new_inferior)
2042         (python_inferior_deleted, add_thread_object): Use
2043         copy-initialization.
2044         * python/py-infevents.c (create_inferior_call_event_object)
2045         (create_register_changed_event_object)
2046         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2047         (emit_inferior_call_event, emit_memory_changed_event)
2048         (emit_register_changed_event): Use copy-initialization.
2049         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2050         Return a gdbpy_ref<>.
2051         (emit_new_objfile_event): Use copy-initialization.
2052         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2053         (emit_clear_objfiles_event): Use copy-initialization.
2054         * python/py-signalevent.c (create_signal_event_object): Use
2055         copy-initialization.
2056         * python/py-threadevent.c (create_thread_event_object): Use
2057         copy-initialization.
2058
2059 2018-08-24  Pedro Alves  <palves@redhat.com>
2060             Simon Marchi  <simon.marchi@ericsson.com>
2061
2062         PR gdb/23379
2063         * python/py-continueevent.c: Include "gdbthread.h".
2064         (create_continue_event_object): Add intro comment.  Add 'ptid'
2065         parameter.  Use it to find thread to pass to
2066         create_thread_event_object.
2067         (emit_continue_event): Pass PTID down to
2068         create_continue_event_object.
2069         * python/py-event.h (py_get_event_thread): Declare.
2070         (create_thread_event_object): Remove default from 'thread'
2071         parameter.
2072         * python/py-stopevent.c (create_stop_event_object): Use
2073         py_get_event_thread.
2074         * python/py-threadevent.c (get_event_thread): Rename to ...
2075         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2076         and use it to find the thread.
2077         (create_thread_event_object): Assert that THREAD isn't null.
2078         Don't find the event thread here.
2079
2080 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2081
2082         * block.h (blockrange, blockranges): New struct declarations.
2083         (struct block): Add new field named `ranges'.
2084         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2085         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2086         macros for accessing ranges in struct block.
2087         (make_blockranges): New declaration.
2088         block.c (make_blockranges): New function.
2089         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2090         for block.
2091         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2092         * blockframe.c (cache_pc_function_block): New static global.
2093         (clear_pc_function_cache): Clear cache_pc_function_block.
2094         (find_pc_partial_function): Move comment to symtab.h.  Add
2095         support for non-contiguous blocks.
2096         * cli/cli-cmds.c (block.h): Include.
2097         (print_disassembly): Handle printing of non-contiguous blocks.
2098         (disassemble_current_function): Likewise.
2099         (disassemble_command): Likewise.
2100
2101         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2102         BLOCK_START.
2103         * blockframe.c (get_pc_function_start): Likewise.
2104         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2105         (gcc_symbol_address): Likewise.
2106         * compile/compile-object-run.c (compile_object_run): Likewise.
2107         * compile/compile.c (get_expr_block_and_pc): Likewise.
2108         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2109         (func_addr_to_tail_call_list): Likewise.
2110         * findvar.c (default_read_var_value): Likewise.
2111         * inline-frame.c (inline_frame_this_id): Likewise.
2112         (skip-inline_frames): Likewise.
2113         * infcmd.c (until_next_command): Likewise.
2114         * linespec.c (convert_linespec_to_sals): Likewise.
2115         * parse.c (parse_exp_in_context_1): Likewise.
2116         * printcmd.c (build_address_symbolic): likewise.
2117         (info_address_command): Likewise.
2118         symtab.c (find_function_start_sal): Likewise.
2119         (skip_prologue_sal): Likewise.
2120         (find_function_alias_target): Likewise.
2121         (find_gnu_ifunc): Likewise.
2122         * stack.c (find_frame_funname): Likewise.
2123         * symtab.c (fixup_symbol_section): Likewise.
2124         (find_function_start_sal): Likewise.
2125         (skip_prologue_sal): Likewsie.
2126         (find_function_alias_target): Likewise.
2127         (find_gnu_ifunc): Likewise.
2128         * tracepoint.c (info_scope_command): Likewise.
2129         * value.c (value_fn_field): Likewise.
2130
2131         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2132         in place of find_pc_partial_function.
2133         * blockframe.c (find_function_entry_range_from_pc): New function.
2134         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2135         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2136         for each range in a block.
2137
2138
2139 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2140
2141         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2142         incrementation.
2143
2144 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2145
2146         * solib-svr4.c (read_program_headers_from_bfd): Return
2147         gdb::optional<gdb::byte_vector>.
2148         (svr4_exec_displacement): Adjust.
2149
2150 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2151
2152         * solib-svr4.c (read_program_header): Return
2153         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2154         (find_program_interpreter): Return
2155         gdb::optional<gdb::byte_vector>.
2156         (scan_dyntag_auxv): Adjust.
2157         (enable_break): Adjust.
2158         (svr4_exec_displacement): Adjust.
2159
2160 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2161
2162         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2163         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2164
2165 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2166
2167         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2168         string_vprintf.
2169         * guile/scm-utils.c (gdbscm_printf): Likewise.
2170         * serial.c (serial_printf): Likewise.
2171         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2172
2173 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2174
2175         * stack.c (print_frame): Print frame architecture when printing on
2176         an MI output.
2177         * NEWS: Mention new "arch" attribute in frame output.
2178
2179 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2180
2181         * arch/aarch64.h (aarch64_regnum): Update comment.
2182
2183 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2184
2185         * NEWS: Add SVE to 8.2 section.
2186
2187 2018-08-21  Pedro Alves  <palves@redhat.com>
2188
2189         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2190         out from gdbscm_parse_function_args.
2191         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2192         gdbscm_parse_function_args_1.
2193
2194 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2195
2196         PR gdb/17816
2197         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2198         operator.
2199
2200 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2201
2202         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2203
2204 2018-08-19  Michael Spang  <spang@google.com>
2205
2206         PR gdb/11786
2207         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2208         for PT_TLS segments.
2209
2210 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2211
2212         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2213         dwarf_variable_value.
2214         * dwarf2-frame.c (class dwarf_expr_executor):
2215         Add override for dwarf_variable_value.
2216         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2217         (class symbol_needs_eval_context): Likewise.
2218         (indirect_synthetic_pointer): Add forward declaration.
2219         (sect_variable_value): New function.
2220         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2221         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2222         for DW_OP_GNU_variable_value.
2223
2224 2018-08-16  Tom Tromey  <tom@tromey.com>
2225
2226         * top.c (read_command_file): Update.
2227         (command_line_input): Remove "repeat" argument.
2228         * ada-lang.c (get_selections): Update.
2229         * linespec.c (decode_line_2): Update.
2230         * defs.h (command_line_input): Remove argument.
2231         * cli/cli-script.c (read_next_line): Update.
2232         * python/py-gdb-readline.c: Update.
2233
2234 2018-08-17  Tom Tromey  <tom@tromey.com>
2235
2236         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2237         command_line_input.
2238
2239 2018-08-15  Tom Tromey  <tom@tromey.com>
2240
2241         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2242
2243 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2244
2245         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2246         If used, use find_pc_partial_function to find address range
2247         to disassemble.
2248         * mi/mi-main.c (mi_cmd_list_features): Report
2249         "data-disassemble-a-option" feature.
2250         * NEWS: Mention new -data-disassemble option -a.
2251
2252 2018-08-13  Tom Tromey  <tom@tromey.com>
2253
2254         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2255
2256 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2257
2258         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2259         (aarch64_linux_collect_sve_regset): Likewise.
2260         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2261         * regcache.h (regcache_map_entry_size): New function.
2262
2263 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2264
2265         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2266         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2267         (SVE_HEADER_VL_LENGTH): Likewise.
2268         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2269         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2270         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2271         (SVE_HEADER_SIZE_OFFSET): Likewise.
2272         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2273         (SVE_HEADER_VL_OFFSET): Likewise.
2274         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2275         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2276         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2277         (SVE_HEADER_SIZE): Likewise.
2278         (aarch64_linux_core_read_vq): Add function.
2279         (aarch64_linux_core_read_description): Check for SVE section.
2280
2281 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2282
2283         * aarch64-fbsd-tdep.c
2284         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2285         collect_size.
2286         * aarch64-linux-tdep.c
2287         (aarch64_linux_iterate_over_regset_sections): Likewise.
2288         * alpha-linux-tdep.c
2289         (alpha_linux_iterate_over_regset_sections):
2290         * alpha-nbsd-tdep.c
2291         (alphanbsd_iterate_over_regset_sections): Likewise.
2292         * amd64-fbsd-tdep.c
2293         (amd64fbsd_iterate_over_regset_sections): Likewise.
2294         * amd64-linux-tdep.c
2295         (amd64_linux_iterate_over_regset_sections): Likewise.
2296         * arm-bsd-tdep.c
2297         (armbsd_iterate_over_regset_sections): Likewise.
2298         * arm-fbsd-tdep.c
2299         (arm_fbsd_iterate_over_regset_sections): Likewise.
2300         * arm-linux-tdep.c
2301         (arm_linux_iterate_over_regset_sections): Likewise.
2302         * corelow.c (get_core_registers_cb): Likewise.
2303         (core_target::fetch_registers): Likewise.
2304         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2305         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2306         * gdbarch.h (void): Regenerate.
2307         * gdbarch.sh: Add supply_size and collect_size.
2308         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2309         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2310         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2311         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2312         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2313         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2314         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2315         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2316         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2317         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2318         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2319         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2320         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2321         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2322         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2323         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2324         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2325         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2326         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2327         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2328         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2329         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2330         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2331         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2332         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2333         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2334         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2335         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2336         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2337         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2338
2339 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2340
2341         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2342         with string_printf.
2343
2344 2018-08-10  Keith Seitz  <keiths@redhat.com>
2345
2346         * compile/compile-c-support.c (add_code_header, add_code_footer):
2347         Move into policy class.
2348         (c_push_user_expression, pop_user_expression_nop)
2349         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2350         (compile_program): New host class.
2351         (c_compile_program): New typedef.
2352         (c_compute_porgram): Use c_compile_program.
2353
2354 2018-08-10  Keith Seitz  <keiths@redhat.com>
2355
2356         * compile/compile-internal.h (compile_instance::~compile_instance):
2357         Remove calls to htab_delete.
2358         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2359         * compile.c (compile_instance::compile_instance): Initialize
2360         htab unique pointers.
2361         (compile_instance::get_cached_type, compile_instance::insert_type)
2362         (compile_instance::error_symbol_once): Update for unique_ptr.
2363
2364 2018-08-10  Keith Seitz  <keiths@redhat.com>
2365
2366         * compile/compile-c-symbols.c (struct symbol_error)
2367         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2368         (compile_instance::insert_symbol_error)
2369         (compile_instance::error_symbol_once): Move to ...
2370         * compile/compile.c: ... here.
2371
2372 2018-08-10  Keith Seitz  <keiths@redhat.com>
2373
2374         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2375         instead of `new_compile_instance'.
2376         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2377         Update description.
2378         If the symbol error map is not initialized, create it.
2379         (generate_c_for_for_one_symbol): Do not check/initialize
2380         the symbol error map.
2381         * compile/compile-c-types.c (compile_c_instance): Make a class.
2382         Update all callers.
2383         (compile_instance::compile_instance): Initialize the type cache.
2384         (get_cached_type): New function.
2385         (insert_type): Update description.
2386         (compile_c_instance::m_default_cflags): Define.
2387         (convert_type): Update description.  Use get_cached_type.
2388         (delete_instance): Moved to destructor.
2389         (new_compile_instance): Moved to constructor.
2390         * compile/compile-c.h (compile_c_instance): Make class inheriting
2391         from compile_instance.
2392         <base>: Remove field.
2393         <type_map, symbol_err_map>: Move to base class.
2394         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2395         * compile/compile-internal.h (compile_instance): Make class.
2396         <type_map_t, symbol_err_map_t>: Define.
2397         <fe>: Rename to `m_gcc_fe'.
2398         <scope, block, gcc_target_options>: Add `m_' prefix.
2399         <m_type_map, m_symbol_err_map>: New fields, moved from
2400         compile_c_instance.
2401         <destroy>: Remove.
2402         (convert_type, new_compile_instance): Remove.
2403         * compile/compile.c (cleanup_compile_instance): Remove.
2404         (compile_to_object): Use unique_ptr to eliminate cleanups.
2405         (compile_instance::set_print_callback, compile_instance::version)
2406         (compile_instance::set_verbose)
2407         (compile_instance::set_driver_filename)
2408         (compile_instance::set_triplet_regexp)
2409         (compile_instance::set_arguments)
2410         (compile_instance::set_source_file)
2411         (compile_instance::compile): Define.
2412
2413 2018-08-10  Keith Seitz  <keiths@redhat.com>
2414
2415         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2416         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2417         gcc-c-fe.def to define C plugin.
2418         (delete_instance): Delete `c_plugin'.
2419         (new_compile_instance): Initialize `c_plugin'.
2420         * compile/compile-c.h: Include gcc_c_plugin.h.
2421         (struct compile_c_instance) <c_plugin>: New member.
2422         * gcc-c-plugin.h: New file.
2423         Update all callers with API change.
2424
2425 2018-08-10  Keith Seitz  <keiths@redhat.com>
2426
2427         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2428         (HFILES_NO_SRCDIR): ... to here.
2429         Add compile-internal.h and compile-c.h.
2430         * compile/compile-c-support.c: Include compile-c.h.
2431         * compile/compile-c-symbols.c: Include compile-c.h.
2432         (generate_c_for_variable_locations): Update comment.
2433         * compile/compile-c-types.c: Include compile-c.h.
2434         * compile/compile-c.h: New file -- moved C language declarations
2435         from other files here.
2436         * compile/compile-internal.h: Do not include hashtab.h or
2437         common/enum-flags.h.
2438         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2439         (gcc_convert_symbol, gcc_symbol_address)
2440         (generate_c_for_variable_locations, c_get_mode_for_size)
2441         (c_get_range_decl_name): Definitions moved to compile-c.h.
2442         * compile/compile-loc2c.c: Include compile-c.h.
2443
2444 2018-08-10  Keith Seitz  <keiths@redhat.com>
2445
2446         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2447         (c_symbol_substitution_name): ... this.
2448         Update all callers.
2449
2450 2018-08-10  Keith Seitz  <keiths@redhat.com>
2451
2452         * compile/compile-c-support.c (c_compute_program): Use
2453         unique_xmalloc_ptr to eliminate cleanup.
2454         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2455         Return a unique_xmalloc_ptr and eliminate cleanup.
2456         * compile/compile-internal.h (generate_c_for_variable_locations):
2457         Return unique_xmalloc_ptr and update description.
2458
2459 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2460
2461         * corelow.c (core_target::get_core_register_section): Rename
2462         min_size to section_min_size.
2463
2464 2018-08-09  Jim Wilson  <jimw@sifive.com>
2465
2466         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2467         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2468         * NEWS: Mention new GNU/Linux RISC-V target.
2469         * configure.host: Add riscv*-*-linux*.
2470         * configure.nat: Add riscv*.
2471         * configure.tgt: Add riscv*-*-linux*.
2472         * riscv-linux-nat.c: New file.
2473         * riscv-linux-tdep.c: New file.
2474
2475 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2476
2477         * infrun.c (resume): Make static, add forward declaration.
2478         (proceed): Update header comment.
2479         * infrun.h (resume): Delete declaration.
2480
2481 2018-08-09  Tom Tromey  <tom@tromey.com>
2482
2483         * riscv-tdep.h: Minor formatting fixes.
2484
2485 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2486
2487         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2488         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2489         (test_mkdir_recursive): Likewise.
2490         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2491
2492 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2493
2494         * valarith.c (value_subscripted_rvalue): If an array is not in
2495         memory, and we don't know the upper bound, then we can't know that
2496         the requested element exists or not.
2497
2498 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2499
2500         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2501         (target_options_to_string): Add comment.
2502
2503 2018-08-08  Tom Tromey  <tom@tromey.com>
2504
2505         * unittests/scoped_mmap-selftests.c: Check result of "write".
2506
2507 2018-08-08  Jim Wilson  <jimw@sifive.com>
2508
2509         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2510         (decode_register_index_short): New.
2511         (decode_j_type_insn, decode_cj_type_insn): New.
2512         (decode_b_type_insn, decode_cb_type_insn): New.
2513         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2514         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2515         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2516         is_c_sw_insn instead of is_sw_insn.
2517         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2518         (riscv_software_single_step): New.
2519         * riscv-tdep.h (riscv_software_single_step): Declare.
2520
2521         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2522         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2523
2524 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2525
2526         PR gdb/18050:
2527         * target.c (dispose_inferior): Don't dispose of inferiors that are
2528         already killed.
2529
2530 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2531
2532         * remote.c (remote_target::download_tracepoint): Change char* to
2533         const char*.
2534
2535 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2536
2537         * target.h (target_options_to_string): Return an std::string.
2538         * target.c (str_comma_list_concat_elem): Return void, use
2539         std::string.
2540         (do_option): Likewise.
2541         (target_options_to_string): Return an std::string.
2542         * linux-nat.c (linux_nat_target::wait): Adjust.
2543         * target-debug.h (target_debug_print_options): Adjust.
2544
2545 2018-08-07  Tom Tromey  <tom@tromey.com>
2546
2547         * Makefile.in (CPPFLAGS): New variable.
2548         (INTERNAL_CPPFLAGS): Use it.
2549
2550 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2551
2552         * NEWS: Mention the index cache.
2553
2554 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2555
2556         * common/pathstuff.h (get_standard_cache_dir): New.
2557         * common/pathstuff.c (get_standard_cache_dir): New.
2558         * build-id.h (build_id_to_string): New.
2559         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2560         DEBUG_STR_SUFFIX): Move to here.
2561         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2562         DEBUG_STR_SUFFIX): Move from there.
2563         (write_psymtabs_to_index): Make non-static, add basename
2564         parameter.  Write to temporary files, rename when done.
2565         (save_gdb_index_command): Adjust call to
2566         write_psymtabs_to_index.
2567         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2568         field.
2569         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2570         (get_gdb_index_contents_from_cache): New.
2571         (get_gdb_index_contents_from_cache_dwz): New.
2572         (dwarf2_initialize_objfile): Read index from cache.
2573         (dwarf2_build_psymtabs): Save to index.
2574         * dwarf-index-cache.h: New file.
2575         * dwarf-index-cache.c: New file.
2576         * dwarf-index-write.h: New file.
2577
2578 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2579
2580         * gnulib/aclocal.m4: Re-generate.
2581         * gnulib/config.in: Re-generate.
2582         * gnulib/configure: Re-generate.
2583         * gnulib/import/Makefile.am: Re-generate.
2584         * gnulib/import/Makefile.in: Re-generate.
2585         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2586         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2587         * gnulib/import/m4/mkdir.m4: New file.
2588         * gnulib/import/mkdir.c: New file.
2589         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2590         module.
2591
2592 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2593
2594         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2595         * common/scoped_mmap.c: New file.
2596         * common/scoped_mmap.h (destroy): New method.
2597         (~scoped_mmap, reset): Use destroy.
2598         (scoped_mmap): New move constructor.
2599         (mmap_file): New declaration.
2600         * unittests/scoped_mmap-selftests.c (test_normal,
2601         test_invalid_filename, run_tests): New functions.
2602         (_initialize_scoped_mmap_selftests): Register selftest.
2603
2604 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2605
2606         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2607         (read_gdb_index_from_buffer): ... this.  Remove section
2608         parameter, add buffer parameter.
2609         (get_gdb_index_contents_ftype,
2610         get_gdb_index_contents_dwz_ftype): New typedefs.
2611         (dwarf2_read_gdb_index): Add callback parameters to get the
2612         index contents.
2613         (get_gdb_index_contents_from_section): New.
2614         (dwarf2_initialize_objfile): Update call to
2615         dwarf2_read_gdb_index.
2616
2617 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2618
2619         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2620         (gdb_open_cloexec): Likewise.
2621         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2622         (commandline_from_pid): Likewise.
2623         (linux_xfer_osdata_threads): Likewise.
2624         (linux_xfer_osdata_fds): Likewise.
2625         * ada-lang.c (is_package_name): Likewise.
2626         * auxv.c (procfs_xfer_auxv): Likewise.
2627         * breakpoint.c (print_one_breakpoint_location): Use
2628         uiout::field_fmt.
2629         (print_one_catch_solib): Use string_printf.
2630         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2631         (add_pe_forwarded_sym): Likewise.
2632         * dwarf2read.c (create_type_unit_group): Likewise.
2633         (build_error_marker_type): Likewise.
2634         * infcall.c (get_function_name): Likewise.
2635         * valprint.c (print_converted_chars_to_obstack): Likewise.
2636         * xtensa-tdep.c (xtensa_register_type): Likewise.
2637
2638 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2639
2640         * remote.c (remote_target::download_tracepoint): Fix format
2641         string errors.
2642
2643 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2644
2645         * tracefile.c: Include common/byte-vector.h.
2646         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2647         with trace_regblock_size if needed.  Update uses of buf.
2648
2649 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2650
2651         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2652         std::vector<unsigned char>.
2653         * tracepoint.c (collection_list::collection_list): Remove
2654         m_regs_mask initializer from initializer list.  Resize
2655         m_regs_mask using the largest remote register number.
2656         (collection_list::add_remote_register): Remove size check on
2657         m_regs_mask.  Use at to access element.
2658         (collection_list::stringify): Change type of temp_buf to
2659         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2660         stringify the register mask.  Use pack_hex_byte for the register
2661         mask.
2662
2663 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2664
2665         * tracepoint.h (class collection_list) <add_register>: Remove.
2666         <add_remote_register, add_ax_registers, add_local_register>:
2667         Declare.
2668         <add_memrange>: Add scope parameter.
2669         * tracepoint.c (encode_actions_1): Likewise.
2670         (collection_list::add_register): Rename to ...
2671         (collection_list::add_remote_register): ... this.  Update
2672         comment.
2673         (collection_list::add_ax_registers, add_local_register): New
2674         methods.
2675         (collection_list::add_memrange): Add scope parameter.  Call
2676         add_local_register instead of add_register.
2677         (finalize_tracepoint_aexpr): New function.
2678         (collection_list::collect_symbol): Update calls to add_memrange.
2679         Call add_local_register instead of add_register.  Call
2680         add_ax_registers.  Call finalize_tracepoint_aexpr.
2681         (encode_actions_1): Get remote regnos for $reg action.  Call
2682         add_remote_register, add_ax_registers, and add_local_register.
2683         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2684         (validate_actionline): Call finalize_tracepoint_aexpr.
2685
2686 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2687
2688         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2689         Replace array buf with gdb::char_vector buf, of size
2690         get_remote_packet_size ().  Replace references to buf and
2691         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2692         and xsnprintf with snprintf.  Raise errors if the buffer is too
2693         small.
2694
2695 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2696
2697         * remote.c (remote_target::download_tracepoint): Fix the has_more
2698         predicate in the QTDP action list iteration.
2699
2700 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2701
2702         * remote.c (remote_target::download_tracepoint): Fix indentation
2703         in for block.
2704
2705 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2706
2707         * proc-api.c (_initialize_proc_api): Remove c, unused.
2708         * procfs.c (procfs_init_inferior): Remove signals, unused.
2709         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2710         unused.
2711
2712 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2713             Andrew Burgess  <andrew.burgess@embecosm.com>
2714
2715         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2716         'W_STOPCODE (0)' as this could be ambiguous.
2717
2718 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2719
2720         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2721         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2722         "ai_socktype").
2723
2724 2018-08-02  Tom Tromey  <tom@tromey.com>
2725
2726         PR symtab/16842.
2727         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2728         symbols.
2729         (process_structure_scope): Likewise.
2730
2731 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2732
2733         PR gdb/22629:
2734         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2735         kill inferior.
2736
2737 2018-08-02  Tom Tromey  <tom@tromey.com>
2738
2739         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2740         (darwin_suspend_inferior, darwin_resume_inferior)
2741         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2742         (darwin_check_new_threads): Check result of get_darwin_inferior.
2743
2744 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2745
2746         GDB 8.1.1 released.
2747
2748 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2749
2750         * varobj.c (varobj_get_path_expr_parent): Report an error if
2751         parent is a dynamic varobj.
2752
2753 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2754
2755         * gnulib/aclocal.m4: Re-generate.
2756         * gnulib/config.in: Re-generate.
2757         * gnulib/configure: Re-generate.
2758         * gnulib/import/Makefile.in: Re-generate.
2759         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2760         * gnulib/import/m4/onceonly.m4: Re-generate.
2761
2762 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2763
2764         * target-descriptions.c (struct xml_test_tdesc): New.
2765         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2766         (record_xml_tdesc): Update.
2767         (maintenance_check_xml_descriptions): Update.
2768         * target-descriptions.h (record_xml_tdesc): Update comment.
2769
2770 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2771
2772         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2773         checking array bounds are defined.
2774
2775 2018-07-30  Tom Tromey  <tom@tromey.com>
2776
2777         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2778         irreflexivity violation.
2779
2780 2018-07-30  Tom Tromey  <tom@tromey.com>
2781
2782         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2783         * value.c (unpack_long): Remove lint code.
2784         * valops.c (value_ind): Remove lint code.
2785         * valarith.c (value_x_binop, value_x_unop, value_equal)
2786         (value_pos): Remove lint code.
2787
2788 2018-07-28  Tom de Vries  <tdevries@suse.de>
2789
2790         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2791         with undefined upper bound as <optimized out>.
2792
2793 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2794
2795         * gcore.in: Rename variable "name" to "prefix".  Expand
2796         "usage" text.
2797
2798 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2799
2800         * windows-nat.c (windows_nat_target::create_inferior): Update to
2801         call close() in global namespace.
2802
2803 2018-07-26  Tom Tromey  <tom@tromey.com>
2804
2805         * dwarf-index-write.c (add_address_entry): Don't add objfile
2806         offsets.
2807         * dbxread.c (find_stab_function): Rename from
2808         find_stab_function_addr.  Return a bound_minimal_symbol.
2809         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2810         Don't add objfile offsets.
2811         (end_psymtab): Use raw_text_low, raw_text_high,
2812         MSYMBOL_VALUE_RAW_ADDRESS.
2813         (read_ofile_symtab): Update.
2814         (process_one_symbol): Update.
2815         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2816         offsets.
2817         (dw2_relocate): Remove.
2818         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2819         searching addrmap.
2820         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2821         Update.
2822         (process_psymtab_comp_unit_reader, add_partial_symbol)
2823         (add_partial_subprogram, dwarf2_ranges_read): Update.
2824         (load_partial_dies): Update.
2825         (add_address_entry): Don't add objfile offsets.
2826         (dwarf2_build_include_psymtabs): Update.
2827         (create_addrmap_from_aranges): Don't add objfile offsets.
2828         (dw2_find_pc_sect_compunit_symtab): Update.
2829         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2830         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2831         Update.
2832         (parse_partial_symbols): Don't add objfile offsets.  Use
2833         raw_text_low, raw_text_high.  Update.
2834         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2835         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2836         or call 'relocate' quick function.  Clear psymbol_map.
2837         * psympriv.h (struct partial_symbol) <address>: Add section
2838         offset.
2839         <set_unrelocated_address>: Rename from set_address.
2840         <raw_text_low, raw_text_high>: New methods.
2841         <text_low, text_high>: Add objfile parameter.
2842         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2843         set_unrelocated_address.
2844         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2845         (find_pc_psymbol): Update.
2846         (fixup_psymbol_section, relocate_psymtabs): Remove.
2847         (dump_psymtab, psym_functions): Update.
2848         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2849         parameter.
2850         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2851         (start_psymtab_common): Update.
2852         * symfile-debug.c (debug_qf_relocate): Remove.
2853         (debug_sym_quick_functions): Update.
2854         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2855         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2856         Update.
2857
2858 2018-07-26  Tom Tromey  <tromey@redhat.com>
2859
2860         * dbxread.c (end_psymtab): Use text_high_valid and
2861         text_low_valid.
2862         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2863         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2864         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2865         Update comment.
2866         <text_low_valid, text_high_valid>: New fields.
2867         <set_text_low, set_text_high>: Update.
2868         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2869
2870 2018-07-26  Tom Tromey  <tom@tromey.com>
2871
2872         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2873         Update.
2874         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2875         textlow and texthigh fields.
2876         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2877         Update.
2878         * mdebugread.c (parse_lines, parse_partial_symbols)
2879         (psymtab_to_symtab_1): Update.
2880         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2881         Rename fields.  Update comment.  Now private.
2882         <text_low, text_high, set_text_low, set_text_high>: New methods.
2883         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2884         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2885         (start_psymtab_common, maintenance_info_psymtabs)
2886         (maintenance_check_psymtabs): Update.
2887         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2888         texthigh fields.
2889         (scan_xcoff_symtab): Update.
2890
2891 2018-07-26  Tom Tromey  <tromey@redhat.com>
2892
2893         * psympriv.h (struct partial_symbol) <unrelocated_address,
2894         address, set_address>: New methods.
2895         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2896         (fixup_psymbol_section, relocate_psymtabs): Update.
2897         (print_partial_symbols): Add 'objfile' parameter.  Update.
2898         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2899         Update.
2900
2901 2018-07-26  Tom Tromey  <tom@tromey.com>
2902
2903         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2904         (debug_names::write_psymbols): Update.
2905         * psympriv.h (struct partial_symbol): Derive from
2906         general_symbol_info.
2907         <obj_section>: New method.
2908         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2909         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2910         (find_pc_sect_psymbol, fixup_psymbol_section)
2911         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2912         (print_partial_symbols, recursively_search_psymtabs)
2913         (compare_psymbols, psymbol_hash, psymbol_compare)
2914         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2915         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2916
2917 2018-07-26  Tom Tromey  <tromey@redhat.com>
2918
2919         * dbxread.c (end_psymtab): Remove dead code.
2920
2921 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2922
2923         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2924         DWARF unwinders are disabled.
2925         * dwarf2-frame.c: Add dwarf2read.h include.
2926         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2927         disabled.
2928         (dwarf2_frame_unwinders_enabled_p): Define.
2929         (show_dwarf_unwinders_enabled_p): New function.
2930         (_initialize_dwarf2_frame): Register switch to control DWARF
2931         unwinder use.
2932         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2933         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2934         (show_dwarf_cmdlist): Remove static keyword.
2935         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2936         (show_dwarf_cmdlist): Declare.
2937         * NEWS: Document new feature.
2938
2939 2018-07-26  Tom de Vries  <tdevries@suse.de>
2940
2941         PR breakpoints/23366
2942         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2943
2944 2018-07-26  Tom de Vries  <tdevries@suse.de>
2945
2946         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2947         DW_AT_count can't be translated to a dynamic prop.
2948
2949 2018-07-25  Tom de Vries  <tdevries@suse.de>
2950
2951         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2952         try/catch.
2953
2954 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2955
2956         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2957
2958 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2959
2960         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2961
2962 2018-07-24  Keith Seitz  <keiths@redhat.comt
2963
2964         PR symtab/23010
2965         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2966         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2967         instead of add_symbol_to_list.
2968         (read_file_scope): Call prepare_one_comp_unit before reading
2969         any other DIEs.
2970
2971 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2972
2973         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2974
2975 2018-07-24  Tom Tromey  <tom@tromey.com>
2976
2977         * utils.c (malloc, realloc, free): Don't declare.
2978         * configure, config.in: Rebuild.
2979         * configure.ac: Don't check for declarations of free, malloc, or
2980         realloc.
2981
2982 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2983
2984         * aarch64-linux-nat.c
2985         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2986         variable.
2987         * arm-linux-nat.c (fetch_regs): Likewise.
2988         (store_regs): Likewise.
2989         (fetch_vfp_regs): Likewise.
2990         (store_vfp_regs): Likewise.
2991         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2992         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2993         (arm_linux_nat_target::insert_watchpoint): Likewise.
2994         (arm_linux_nat_target::remove_watchpoint): Likewise.
2995         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2996         Likewise.
2997         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2998         Likewise.
2999         * ppc-linux-nat.c (fetch_register): Likewise.
3000         (fetch_all_gp_regs): Likewise.
3001         (fetch_ppc_registers): Likewise.
3002         (store_all_gp_regs): Likewise.
3003         (store_ppc_registers): Likewise.
3004         (hwdebug_insert_point): Likewise.
3005         (can_use_watchpoint_cond_accel): Likewise.
3006         * remote-sim.c (gdb_os_write_stdout): Likewise.
3007
3008 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3009             Tom Tromey  <tom@tromey.com>
3010
3011         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3012         test for it.
3013         * configure: Rebuild.
3014
3015 2018-07-22  Tom Tromey  <tom@tromey.com>
3016
3017         * regformats/regdat.sh: Define xmltarget_${name} inside
3018         #ifndef IN_PROCESS_AGENT.
3019
3020 2018-07-22  Tom Tromey  <tom@tromey.com>
3021
3022         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3023
3024 2018-07-22  Tom Tromey  <tom@tromey.com>
3025
3026         * symfile.c (reread_symbols): Notify iter, not objfile.
3027
3028 2018-07-22  Tom Tromey  <tom@tromey.com>
3029
3030         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3031         Use arch_ops.
3032         (ravenscar_thread_target::prepare_to_store): Likewise.
3033
3034 2018-07-22  Tom Tromey  <tom@tromey.com>
3035
3036         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3037         unused variable.  Call value_fetch_lazy when needed.
3038         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3039         Remove unused variable.  Call value_fetch_lazy when needed.
3040
3041 2018-07-22  Tom Tromey  <tom@tromey.com>
3042
3043         * m32c-tdep.c (mark_dma): Return void.
3044         (make_regs): Remove unused declarations.
3045
3046 2018-07-22  Tom Tromey  <tom@tromey.com>
3047
3048         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3049         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3050         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3051         bkscm_get_valid_block_smob_arg_unsafe for effect.
3052
3053 2018-07-22  Tom Tromey  <tom@tromey.com>
3054
3055         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3056         value_type.
3057
3058 2018-07-22  Tom Tromey  <tom@tromey.com>
3059
3060         * windows-nat.c (saved_context): Conditionally define.
3061         * remote.c (remote_target::remote_btrace_maybe_reopen):
3062         Conditionally declare "warned".
3063         * inflow.c (sigquit_ours): Conditionally define.
3064         (new_tty): Move "tty" declaration inside #if.
3065         * guile/guile.c (guile_datadir): Conditionally define.
3066         * charset.c (set_be_le_names): Move some declarations inside #if.
3067         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3068         #if.
3069         (parse_xml_btrace_conf): Likewise.
3070
3071 2018-07-22  Tom Tromey  <tom@tromey.com>
3072
3073         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3074
3075 2018-07-22  Tom Tromey  <tom@tromey.com>
3076
3077         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3078         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3079         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3080         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3081         * stack.c (frame_apply_level_command): Remove unused variable.
3082         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3083         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3084         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3085         unused variable.
3086         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3087         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3088         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3089         variable.
3090         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3091         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3092         variable.
3093         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3094         Remove unused variable.
3095         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3096         variable.
3097         * common/tdesc.c (print_xml_feature::visit): Remove unused
3098         variable.
3099         * compile/compile-object-load.c (store_regs): Remove unused
3100         variables.
3101         * complaints.c (clear_complaints): Remove unused variable.
3102         * corelow.c (core_target_open): Remove unused variable.
3103         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3104         variable.
3105         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3106         variable.
3107         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3108         variable.
3109         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3110         variable.
3111         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3112         variable.
3113         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3114         variable.
3115         * ia64-tdep.c (examine_prologue): Remove unused variable.
3116         * infcall.c (run_inferior_call): Remove unused variable.
3117         * inferior.c (exit_inferior): Remove unused variable.
3118         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3119         * linespec.c (decode_line_2): Remove unused variable.
3120         * linux-nat.c (super_close): Remove.
3121         * linux-tdep.c (linux_info_proc): Remove unused variable.
3122         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3123         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3124         Remove unused variable.
3125         * parse.c (find_minsym_type_and_address): Remove unused variable.
3126         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3127         variable.
3128         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3129         variable.
3130         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3131         variables.
3132         * record-btrace.c (record_btrace_target::store_registers): Remove
3133         unused variable.
3134         (cmd_show_record_btrace_cpu): Remove unused variable.
3135         * riscv-tdep.c (riscv_register_reggroup_p)
3136         (riscv_push_dummy_call, riscv_return_value): Remove unused
3137         variable.
3138         * rust-exp.y (literal): Remove unused variable.
3139         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3140         unused variable.
3141         <STRUCTOP_ANONYMOUS>: Likewise.
3142         * s390-linux-tdep.c (s390_linux_init_abi_31)
3143         (s390_linux_init_abi_64): Remove unused variable.
3144         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3145         (file_select_thread, net_windows_open, _initialize_ser_windows):
3146         Remove unused variables.
3147         * symtab.c (find_pc_sect_line): Remove unused variable.
3148         * target-memory.c (compute_garbled_blocks): Remove unused
3149         variable.
3150         (target_write_memory_blocks): Remove unused variable.
3151         * target.c (target_stack::unpush): Remove unused variables.
3152         * tracepoint.c (start_tracing, all_tracepoint_actions)
3153         (merge_uploaded_trace_state_variables)
3154         (print_one_static_tracepoint_marker): Remove unused variable.
3155         * unittests/basic_string_view/element_access/char/1.cc (test01):
3156         Remove unused variable.
3157         * windows-nat.c (windows_continue, windows_add_all_dlls)
3158         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3159         Remove unused variables.
3160
3161 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3162
3163         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3164         attr_profile in HAVE_ELF.
3165         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3166         HAVE_ELF.
3167
3168 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3169
3170         * frame.c (frame_register_unwind): Change parameter name.
3171         (frame_unwind_register): Likewise.
3172         (frame_unwind_register_value): Likewise.
3173         (frame_unwind_register_signed): Likewise.
3174         (frame_unwind_register_unsigned): Likewise.
3175         * frame.h (frame_register_unwind): Likewise.
3176         (frame_unwind_register): Likewise.
3177         (frame_unwind_register_value): Likewise.
3178         (frame_unwind_register_signed): Likewise.
3179         (frame_unwind_register_unsigned): Likewise.
3180         (frame_unwind_arch): Likewise.
3181
3182 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3183
3184         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3185         ISA maintenance.
3186
3187 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3188
3189         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3190         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3191         hand.
3192
3193 2018-07-20  Keith Seitz  <keiths@redhat.com>
3194
3195         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3196         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3197         m_compunit_symtab, m_language>: Add "m_" prefix.
3198         Update all uses.
3199         * buildsym.c: Update all uses.
3200
3201 2018-07-20  Tom Tromey  <tom@tromey.com>
3202
3203         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3204         * buildsym.h (record_line_ftype): Remove typedef.
3205
3206 2018-07-20  Tom Tromey  <tom@tromey.com>
3207
3208         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3209         (end_expandable_symtab): Likewise.
3210         (end_symtab_get_static_block): Likewise.
3211         (end_symtab_from_static_block): Likewise.
3212         * buildsym-legacy.c (augment_type_symtab): Remove.
3213         (end_expandable_symtab): Remove.
3214         (end_symtab_get_static_block): Remove.
3215         (end_symtab_from_static_block): Remove.
3216
3217 2018-07-20  Tom Tromey  <tom@tromey.com>
3218
3219         * dwarf2read.c: Include buildsym.h.
3220         (struct dwarf2_cu) <builder>: New method.
3221         (fixup_go_packaging): Update.
3222         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3223         use scoped_free_pendings.
3224         (using_directives): Add "cu" parameter, remove "language".
3225         (read_import_statement, setup_type_unit_groups, )
3226         (read_func_scope, read_lexical_block_scope)
3227         (dwarf2_record_block_ranges, read_namespace): Update.
3228         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3229         (lnp_state_machine::handle_end_sequence): Update.
3230         (class lnp_state_machine) <m_cu>: New member.
3231         <m_record_line_callback>: Remove.
3232         <m_currently_recording_lines>: New member.
3233         (lnp_state_machine::handle_set_file): Update.
3234         (noop_record_line): Remove.
3235         (dwarf_record_line_p): Add cu parameter.
3236         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3237         (lnp_state_machine::record_line)
3238         (lnp_state_machine::lnp_state_machine)
3239         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3240         (dwarf_decode_lines): Update.
3241         (dwarf2_start_subfile): Add cu parameter.
3242         (dwarf2_start_symtab, new_symbol): Update.
3243         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3244         Remove dwarf2_per_objfile parameter.
3245         (dwarf_decode_macros): Update.
3246
3247 2018-07-20  Tom Tromey  <tom@tromey.com>
3248
3249         * stabsread.c (define_symbol): Update.
3250         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3251         * dwarf2read.c (new_symbol): Update.
3252         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3253         * cp-namespace.c: Include buildsym.h.
3254         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3255         * buildsym-legacy.c (get_buildsym_compunit): New function.
3256
3257 2018-07-20  Tom Tromey  <tom@tromey.com>
3258
3259         * xcoffread.c: Include buildsym-legacy.h.
3260         * windows-nat.c: Include buildsym-legacy.h.
3261         * stabsread.c: Include buildsym-legacy.h.
3262         * mdebugread.c: Include buildsym-legacy.h.
3263         * buildsym-legacy.h: New file.
3264         * buildsym-legacy.c: New file, from buildsym.c.
3265         * go32-nat.c: Include buildsym-legacy.h.
3266         * dwarf2read.c: Include buildsym-legacy.h.
3267         * dbxread.c: Include buildsym-legacy.h.
3268         * cp-namespace.c: Include buildsym-legacy.h.
3269         * coffread.c: Include buildsym-legacy.h.
3270         * buildsym.h: Move some contents to buildsym-legacy.h.
3271         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3272         buildsym-legacy.c.
3273         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3274
3275 2018-07-20  Tom Tromey  <tom@tromey.com>
3276
3277         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3278         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3279         (buildsym_compunit::buildsym_compunit)
3280         (buildsym_compunit::~buildsym_compunit)
3281         (buildsym_compunit::get_macro_table): Define.
3282
3283 2018-07-20  Tom Tromey  <tom@tromey.com>
3284
3285         * buildsym.c (reset_symtab_globals): Remove.
3286         (buildsym_compunit::end_symtab_from_static_block): Update.
3287         (buildsym_compunit::augment_type_symtab): Update.
3288         (end_symtab_from_static_block): Call free_buildsym_compunit.
3289         (augment_type_symtab, end_symtab, end_expandable_symtab):
3290         Likewise.
3291
3292 2018-07-20  Tom Tromey  <tom@tromey.com>
3293
3294         * arch-utils.c: Do not include buildsym.h.
3295         * mipsread.c: Do not include buildsym.h.
3296         * machoread.c: Do not include buildsym.h.
3297         * elfread.c: Do not include buildsym.h.
3298
3299 2018-07-20  Tom Tromey  <tom@tromey.com>
3300
3301         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3302         initialization.
3303         (buildsym_compunit): Add new constructor.
3304         (struct buildsym_compunit) <get_last_source_file, finish_block,
3305         record_block_range, start_subfile, patch_subfile_names,
3306         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3307         set_last_source_start_addr, get_last_source_start_addr,
3308         get_local_using_directives, set_local_using_directives,
3309         get_global_using_directives, outermost_context_p,
3310         get_current_context_stack, get_context_stack_depth,
3311         get_current_subfile, get_local_symbols, get_file_symbols,
3312         get_global_symbols, record_debugformat, record_producer,
3313         push_context, pop_context, end_symtab_get_static_block,
3314         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3315         New public methods.
3316         <record_pending_block, finish_block_internal, make_blockvector,
3317         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3318         private methods.
3319         Update all users.
3320
3321 2018-05-22  Tom Tromey  <tom@tromey.com>
3322
3323         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3324         parameter.
3325         (finish_block_internal): Update.
3326
3327 2018-07-20  Tom Tromey  <tom@tromey.com>
3328
3329         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3330         parameter.
3331         (finish_block_internal): Update.
3332
3333 2018-07-20  Tom Tromey  <tom@tromey.com>
3334
3335         * buildsym.h (EXTERN): Don't define or undef.
3336         * buildsym.c (EXTERN): Don't define.
3337
3338 2018-07-20  Tom Tromey  <tom@tromey.com>
3339
3340         * buildsym.c: Remove TODO comment.
3341
3342 2018-07-20  Tom Tromey  <tom@tromey.com>
3343
3344         * coffread.c (coff_symtab_read): Update.
3345         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3346         (xcoff_new_init): Update.
3347         * mipsread.c (mipscoff_new_init): Update.
3348         * mdebugread.c (mdebug_build_psymtabs): Update.
3349         * elfread.c (elf_new_init): Update.
3350         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3351         Update.
3352         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3353         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3354         (stabsect_build_psymtabs): Update.
3355         * buildsym.h (buildsym_init): Don't declare.
3356         * buildsym.c: Update comment.
3357         (prepare_for_building): Remove.
3358         (start_symtab, restart_symtab): Update.
3359         (reset_symtab_globals): Update comment.
3360         (buildsym_init): Remove.
3361
3362 2018-07-20  Tom Tromey  <tom@tromey.com>
3363
3364         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3365         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3366         (read_enum_type, common_block_start, common_block_end)
3367         (cleanup_undefined_types_1, finish_global_stabs): Update.
3368         * mdebugread.c (psymtab_to_symtab_1): Update.
3369         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3370         (read_lexical_block_scope, new_symbol): Update.
3371         * dbxread.c (process_one_symbol): Update.
3372         * coffread.c (coff_symtab_read, process_coff_symbol)
3373         (coff_read_enum_type): Update.
3374         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3375         declare.
3376         (get_local_symbols, get_file_symbols, get_global_symbols): New
3377         functions.
3378         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3379         m_global_symbols.
3380         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3381         (~scoped_free_pendings): Update.
3382         (finish_block, prepare_for_building, reset_symtab_globals)
3383         (end_symtab_get_static_block, end_symtab_with_blockvector)
3384         (augment_type_symtab, push_context): Update.
3385         (get_local_symbols, get_file_symbols, get_global_symbols): New
3386         functions.
3387         (buildsym_init): Update.
3388
3389 2018-07-20  Tom Tromey  <tom@tromey.com>
3390
3391         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3392         (process_full_type_unit): Likewise.
3393         (dwarf2_start_symtab): Set list_in_scope.
3394
3395 2018-07-20  Tom Tromey  <tom@tromey.com>
3396
3397         * dwarf2read.c (process_psymtab_comp_unit_reader)
3398         (build_type_psymtabs_reader): Do not set list_in_scope.
3399
3400 2018-07-20  Tom Tromey  <tom@tromey.com>
3401
3402         * buildsym.c (free_pendings): Remove.
3403         (add_symbol_to_list, scoped_free_pendings)
3404         (finish_block_internal, buildsym_init): Update.
3405
3406 2018-07-20  Tom Tromey  <tom@tromey.com>
3407
3408         * xcoffread.c (read_xcoff_symtab): Update.
3409         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3410         Update.
3411         * dbxread.c (process_one_symbol): Update.
3412         * coffread.c (coff_symtab_read): Update.
3413         * buildsym.h (finish_block): Update.
3414         * buildsym.c (finish_block): Remove "listhead" argument.
3415         (end_symtab_get_static_block): Update.
3416
3417 2018-07-20  Tom Tromey  <tom@tromey.com>
3418
3419         * buildsym.h (class scoped_free_pendings): Remove constructor.
3420         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3421         method.
3422         <m_pending_block_obstack, m_pending_blocks>: New members.
3423         (pending_block_obstack, pending_blocks): Remove.
3424         (scoped_free_pendings::scoped_free_pendings): Default.
3425         (~scoped_free_pendings): Update.
3426         (free_pending_blocks): Remove.
3427         (finish_block_internal, record_pending_block, make_blockvector)
3428         (end_symtab_get_static_block, augment_type_symtab, push_context)
3429         (buildsym_init): Update.
3430
3431 2018-07-20  Tom Tromey  <tom@tromey.com>
3432
3433         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3434         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3435         members.
3436         (pending_addrmap, pending_addrmap_obstack)
3437         (pending_addrmap_interesting): Remove.
3438         (scoped_free_pendings, record_block_range, make_blockvector)
3439         (prepare_for_building, reset_symtab_globals, buildsym_init):
3440         Update.
3441
3442 2018-07-20  Tom Tromey  <tom@tromey.com>
3443
3444         * xcoffread.c (process_linenos): Update.
3445         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3446         * mdebugread.c (psymtab_to_symtab_1): Update.
3447         * dwarf2read.c (setup_type_unit_groups)
3448         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3449         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3450         * dbxread.c (process_one_symbol): Update.
3451         * coffread.c (coff_symtab_read, enter_linenos)
3452         (process_coff_symbol): Update.
3453         * buildsym.h (current_subfile): Don't declare.
3454         (get_current_subfile): Declare.
3455         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3456         member.
3457         (start_subfile, free_buildsym_compunit, push_subfile)
3458         (prepare_for_building, start_symtab): Update.
3459         (get_current_subfile): New function.
3460
3461 2018-07-20  Tom Tromey  <tom@tromey.com>
3462
3463         * coffread.c (coff_symtab_read): Update.
3464         * xcoffread.c (read_xcoff_symtab): Update.
3465         * dwarf2read.c (new_symbol): Update.
3466         (read_func_scope, read_lexical_block_scope): Update.
3467         * dbxread.c (process_one_symbol): Update.
3468         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3469         (outermost_context_p): Remove macro.
3470         (outermost_context_p, get_current_context_stack)
3471         (get_context_stack_depth): Declare.
3472         (pop_context): Return struct context_stack.
3473         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3474         member.
3475         (context_stack_size): Remove.
3476         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3477         (prepare_for_building, end_symtab_get_static_block)
3478         (augment_type_symtab, push_context): Update.
3479         (pop_context): Return struct context_stack.
3480         (outermost_context_p, get_current_context_stack)
3481         (get_context_stack_depth): New functions.
3482         (buildsym_init): Update.
3483
3484 2018-07-20  Tom Tromey  <tom@tromey.com>
3485
3486         * rust-exp.y: Now a pure parser.  Update all rules.
3487         (%union): Move earlier.
3488         (current_parser, work_obstack): Remove globals.
3489         (rust_parser, ~rust_parser): Update.
3490         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3491         lex_character, lex_number, lex_string, lex_identifier,
3492         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3493         convert_name, convert_params_to_expression,
3494         convert_ast_to_expression, ast_basic_type, ast_operation,
3495         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3496         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3497         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3498         ast_array_type, ast_slice_type, ast_reference_type,
3499         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3500         (rust_parse): Update.
3501         (rustyyerror, rustyylex): Add parser parameter.
3502         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3503         (rust_lex_stringish_test, rust_lex_test_sequence)
3504         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3505         (rust_lex_test_push_back, rust_lex_tests): Update.
3506
3507 2018-07-19  Pedro Alves  <palves@redhat.com>
3508
3509         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3510         gdb::unique_xmalloc_ptr.
3511         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3512         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3513         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3514         copy-initialization.
3515         * guile/scm-pretty-print.c (ppscm_print_children): Use
3516         gdb::unique_xmalloc_ptr instead of cleanups.
3517         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3518         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3519         gdb::unique_xmalloc_ptr.
3520         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3521         Adjust to use gdb::unique_xmalloc_ptr.
3522         * guile/scm-utils.c (extract_arg): Adjust.
3523         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3524         gdb::unique_xmalloc_ptr instead of a cleanup.
3525
3526 2018-07-19  Tom Tromey  <tom@tromey.com>
3527
3528         * utils.c (do_value_free_to_mark)
3529         (make_cleanup_value_free_to_mark): Remove.
3530         * utils.h (make_cleanup_value_free_to_mark): Remove.
3531
3532 2018-07-19  Pedro Alves  <palves@redhat.com>
3533
3534         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3535         forwarding reference.
3536
3537 2018-07-18  Pedro Alves  <palves@redhat.com>
3538
3539         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3540         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3541         cleanup.
3542
3543 2018-07-18  Pedro Alves  <palves@redhat.com>
3544
3545         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3546         exceptions.
3547         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3548         (gdbscm_wrap): New.
3549         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3550         directly instead of a cleanup.
3551         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3552         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3553         (vlscm_binop_gdbthrow): New, factored out from ...
3554         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3555         (vlscm_rich_compare): Use gdbscm_wrap.
3556         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3557         instead of a cleanup.
3558         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3559         cleanup.
3560         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3561         Use xfree directly instead of a cleanup.
3562         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3563         Adjust to use gdbscm_wrap and scoped_value_mark.
3564         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3565         (gdbscm_value_address, gdbscm_value_dereference)
3566         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3567         scoped_value_mark.
3568         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3569         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3570         scoped_value_mark.
3571         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3572         gdbscm_wrap and scoped_value_mark.
3573         (gdbscm_value_to_string): Use xfree directly instead of a
3574         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3575         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3576         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3577         scoped_value_mark.
3578         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3579         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3580         scoped_value_mark.
3581         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3582         gdbscm_wrap.
3583
3584 2018-07-18  Tom de Vries  <tdevries@suse.de>
3585
3586         * findvar.c (default_read_var_value): Also resolve dynamic type for
3587         LOC_OPTIMIZED_OUT vars.
3588
3589 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3590
3591         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3592         decoding.
3593
3594 2018-07-17  Tom Tromey  <tom@tromey.com>
3595
3596         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3597         (compute_enum_list, pascm_set_param_value_x)
3598         (gdbscm_parameter_value): Update.
3599         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3600         (gdbscm_scm_to_host_string): Update.
3601         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3602         Update.
3603         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3604         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3605         * guile/scm-string.c (gdbscm_scm_to_string): Return
3606         unique_xmalloc_ptr.
3607         (gdbscm_scm_to_host_string): Likewise.
3608
3609 2018-07-17  Tom Tromey  <tom@tromey.com>
3610
3611         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3612         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3613         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3614         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3615         unique_xmalloc_ptr.
3616
3617 2018-07-17  Tom Tromey  <tom@tromey.com>
3618
3619         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3620         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3621         Update.
3622         * guile/scm-cmd.c (cmdscm_function): Update.
3623         * guile/scm-pretty-print.c
3624         (ppscm_print_exception_unless_memory_error): Update.
3625         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3626         Return unique_xmalloc_ptr.
3627
3628 2018-07-17  Tom Tromey  <tom@tromey.com>
3629
3630         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3631         Use string_printf.
3632
3633 2018-07-17  Jim Wilson  <jimw@sifive.com>
3634
3635         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3636         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3637         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3638         unecessary braces after EF_RISCV_RVC test.  Delete call to
3639         set_gdbarch_decr_pc_after_break.
3640
3641         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3642         RISCV_LAST_FP_REGNUM + 1.
3643         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3644
3645 2018-07-17  Tom Tromey  <tom@tromey.com>
3646
3647         * configure.ac: Remove --disable-gdbcli.
3648         * configure: Rebuild.
3649         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3650         (SUBDIR_CLI_CFLAGS): Remove.
3651         (SFILES): Use SUBDIR_CLI_SRCS.
3652         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3653
3654 2018-07-17  Tom Tromey  <tom@tromey.com>
3655
3656         PR gdb/18624:
3657         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3658
3659 2018-07-16  Jim Wilson  <jimw@sifive.com>
3660
3661         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3662
3663 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3664
3665         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3666         variable.
3667         (libunwind_frame_sniffer): Likewise.
3668         (libunwind_frame_prev_register): Likewise.
3669         (libunwind_sigtramp_frame_sniffer): Likewise.
3670         * ia64-tdep.c (ia64_access_reg): Likewise.
3671         (ia64_access_rse_reg): Likewise.
3672         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3673         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3674
3675 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3676
3677         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3678
3679 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3680
3681         * remote-sim.c (gdbsim_target::close,
3682         gdbsim_target::mourn_inferior): Remove unused variables.
3683
3684 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3685
3686         * ia64-tdep.c (ktab_buf): New global.
3687         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3688         (get_kernel_table): Adjust.
3689
3690 2018-07-16  Tom Tromey  <tom@tromey.com>
3691
3692         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3693         * dwarf2read.c (using_directives, new_symbol): Use
3694         outermost_context_p.
3695         * dbxread.c (process_one_symbol): Use outermost_context_p.
3696         * coffread.c (coff_symtab_read): Use outermost_context_p.
3697
3698 2018-07-16  Tom Tromey  <tom@tromey.com>
3699
3700         * dwarf2read.c (using_directives, read_func_scope)
3701         (read_lexical_block_scope): Update.
3702         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3703         * buildsym.h (local_using_directives, global_using_directives):
3704         Don't declare.
3705         (get_local_using_directives, set_local_using_directives)
3706         (get_global_using_directives): Declare.
3707         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3708         m_global_using_directives>: New members.
3709         (finish_block_internal, prepare_for_building)
3710         (reset_symtab_globals, end_symtab_get_static_block)
3711         (push_context): Update.
3712         (get_local_using_directives, set_local_using_directives)
3713         (get_global_using_directives): New functions.
3714         (buildsym_init): Update.
3715
3716 2018-07-16  Tom Tromey  <tom@tromey.com>
3717
3718         * xcoffread.c (xcoff_initial_scan): Don't call
3719         free_pending_blocks.
3720         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3721         * buildsym.h (class scoped_free_pendings): Add constructor.
3722         (free_pending_blocks): Don't declare.
3723         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3724         (free_pending_blocks): Now static.
3725
3726 2018-07-16  Tom Tromey  <tom@tromey.com>
3727
3728         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3729         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3730         member.
3731         (struct subfile_stack): Remove.
3732         (subfile_stack): Remove.
3733         (push_subfile, pop_subfile, buildsym_init): Update.
3734
3735 2018-07-16  Tom Tromey  <tom@tromey.com>
3736
3737         * buildsym.c (push_subfile): Use gdb_assert.
3738         (pop_subfile): Use gdb_assert.
3739
3740 2018-07-16  Tom Tromey  <tom@tromey.com>
3741
3742         * buildsym.h (merge_symbol_lists): Remove.
3743         * buildsym.c (merge_symbol_lists): Remove.
3744
3745 2018-07-16  Tom Tromey  <tom@tromey.com>
3746
3747         * stabsread.c (scan_file_globals): Update comment.
3748         * stabsread.h (scan_file_globals): Move from buildsym.h.
3749         * buildsym.h (scan_file_globals): Move to stabsread.h.
3750
3751 2018-07-16  Tom Tromey  <tom@tromey.com>
3752
3753         * xcoffread.c (xcoff_new_init): Update.
3754         * mipsread.c (mipscoff_new_init): Update.
3755         * mdebugread.c (mdebug_build_psymtabs): Update.
3756         * elfread.c (elf_new_init): Update.
3757         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3758         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3759         * buildsym.h (buildsym_new_init): Don't declare.
3760         * buildsym.c (buildsym_new_init): Remove.
3761
3762 2018-07-16  Tom Tromey  <tom@tromey.com>
3763
3764         * stabsread.h (within_function): Move from buildsym.h.
3765         * stabsread.c (start_stabs): Clear within_function.
3766         * coffread.c (coff_start_symtab): Clear within_function.
3767         * buildsym.h (within_function): Move to stabsread.h.
3768         * buildsym.c (prepare_for_building): Update.
3769
3770 2018-07-16  Tom Tromey  <tom@tromey.com>
3771
3772         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3773         * dwarf2read.c (dwarf2_start_symtab): Don't set
3774         processing_gcc_compilation.
3775         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3776
3777 2018-07-16  Tom Tromey  <tom@tromey.com>
3778
3779         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3780         (next_symbol_text_func): Move from buildsym.h.
3781         * stabsread.c (hashname): Move from buildsym.c.
3782         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3783         (next_symbol_text_func, hashname): Move to stabsread.h.
3784         * buildsym.c: Don't include bcache.h
3785         (hashname): Move to stasbread.c.
3786
3787 2018-07-16  Tom Tromey  <tom@tromey.com>
3788
3789         * buildsym.h (context_stack_size): Don't declare.
3790         * buildsym.c (context_stack_size): New global.
3791
3792 2018-07-16  Tom Tromey  <tom@tromey.com>
3793
3794         * dbxread.c (processing_acc_compilation): New global.
3795         * buildsym.h (processing_acc_compilation): Don't declare.
3796
3797 2018-07-16  Tom Tromey  <tom@tromey.com>
3798
3799         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3800         * dbxread.c (read_ofile_symtab): Update.
3801         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3802         * buildsym.h (last_source_start_addr): Remove.
3803         (set_last_source_start_addr, get_last_source_start_addr):
3804         Declare.
3805         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3806         parameter.
3807         (struct buildsym_compunit) <m_last_source_start_addr>: New
3808         member.
3809         (prepare_for_building): Remove start_addr parameter.
3810         (start_symtab, restart_symtab, end_symtab_get_static_block)
3811         (end_symtab_with_blockvector): Update.
3812         (set_last_source_start_addr, get_last_source_start_addr): New
3813         functions.
3814
3815 2018-07-16  Tom Tromey  <tom@tromey.com>
3816
3817         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3818         member.
3819         (have_line_numbers): Remove.
3820         (record_line, prepare_for_building, end_symtab_get_static_block)
3821         (augment_type_symtab): Update.
3822
3823 2018-07-16  Tom Tromey  <tom@tromey.com>
3824
3825         * buildsym.c (~buildsym_compunit): Free the macro table.
3826         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3827         methods.
3828         <m_pending_macros>: New member.
3829         (pending_macros): Remove.
3830         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3831         (reset_symtab_globals, end_symtab_get_static_block)
3832         (end_symtab_with_blockvector, augment_type_symtab)
3833         (buildsym_init): Update.
3834
3835 2018-07-16  Tom Tromey  <tom@tromey.com>
3836
3837         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3838         parameter.
3839         (buildsym_compunit::set_last_source_file): New method.
3840         <m_last_source_file>: New member.
3841         (prepare_for_building): Remove "name" parameter.
3842         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3843         (last_source_file): Remove.
3844         (set_last_source_file, get_last_source_file): Update.
3845
3846 2018-07-16  Tom Tromey  <tom@tromey.com>
3847
3848         * buildsym.c (prepare_for_building): Add assert.
3849
3850 2018-07-16  Tom Tromey  <tom@tromey.com>
3851
3852         * buildsym.c (~buildsym_compunit): Update.
3853         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3854         (start_subfile, patch_subfile_names)
3855         (end_symtab_with_blockvector): Update.
3856
3857 2018-07-16  Tom Tromey  <tom@tromey.com>
3858
3859         * buildsym.c (struct buildsym_compunit): Add constructor,
3860         destructor, initializers.
3861         (start_buildsym_compunit): Remove.
3862         (free_buildsym_compunit): Use "delete".
3863         (start_symtab, restart_symtab): Use "new".
3864
3865 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3866
3867         * symfile.c (set_objfile_default_section_offset): Remove struct
3868         keyword.
3869
3870 2018-07-14  Stafford Horne  <shorne@gmail.com>
3871
3872         * (Responsible Maintainers): Add myself as or1k maintainer.
3873
3874 2018-07-13  Tom Tromey  <tom@tromey.com>
3875
3876         * symfile.c (set_objfile_default_section_offset): Use extra braces
3877         around initializer.
3878
3879 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3880
3881         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3882         non-branching basr.
3883
3884 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3885
3886         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3887         unittests/cli-utils-selftests.c
3888         * unittests/cli-utils-selftests.c: New file.
3889
3890 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3891
3892         * NEWS: Mention new commands. Mention change to 'thread apply'.
3893
3894 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3895
3896         * thread.c (thr_try_catch_cmd): New function.
3897         (thread_apply_all_command): Handle qcs flags.
3898         (thread_apply_command): Handle qcs flags.
3899         (taas_command): New function.
3900         (tfaas_command): New function.
3901         (_initialize_thread): Update to setup the new commands 'taas
3902         and 'tfaas'. Change doc string for 'thread apply'.
3903
3904 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3905
3906         * stack.c: (trailing_outermost_frame): New function, mostly
3907         extracted from backtrace_command_1.
3908         (leading_innermost_frame): New function.
3909         (backtrace_command_1): Update to call trailing_outermost_frame.
3910         (frame_apply_command_count): New function.
3911         (frame_apply_level_command): New function.
3912         (frame_apply_all_command): New function.
3913         (frame_apply_command): New function.
3914         (faas_command): New function.
3915         (frame_cmd_list): New variable.
3916         (_initialize_stack): Update to setup the new commands 'frame apply'
3917         and 'faas'.
3918
3919 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3920
3921         * cli-utils.c (number_or_range_parser::get_number): Only handle
3922         numbers or convenience var as numbers.
3923         (parse_flags): New function.
3924         (parse_flags_qcs): New function.
3925         (number_or_range_parser::finished): Ensure parsing end is detected
3926         before end of string.
3927         * cli-utils.h (parse_flags): New function.
3928         (parse_flags_qcs): New function.
3929         (number_or_range_parser): Remove m_finished bool.
3930         (number_or_range_parser::skip_range): Set m_in_range to false.
3931
3932 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3933
3934         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3935         on Windows.
3936
3937 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3938             Jan Kratochvil  <jan.kratochvil@redhat.com>
3939             Paul Fertser  <fercerpav@gmail.com>
3940             Tsutomu Seki  <sekiriki@gmail.com>
3941             Pedro Alves  <palves@redhat.com>
3942
3943         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3944         'unittests/parse-connection-spec-selftests.c'.
3945         (COMMON_SFILES): Add 'common/netstuff.c'.
3946         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3947         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3948         * common/netstuff.c: New file.
3949         * common/netstuff.h: New file.
3950         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3951         (wait_for_connect): Update comment.  New parameter
3952         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3953         Use 'sock' directly instead of 'scb->fd'.
3954         (try_connect): New function, with code from 'net_open'.
3955         (net_open): Rewrite main loop to deal with multiple
3956         sockets/addresses.  Handle IPv6-style hostnames; implement
3957         support for IPv6 connections.
3958         * unittests/parse-connection-spec-selftests.c: New file.
3959
3960 2018-07-11  Pedro Alves  <palves@redhat.com>
3961
3962         PR gdb/23377
3963         * remote.c (remote_target::remote_detach_pid): Call
3964         set_current_process.
3965
3966 2018-07-11  Pedro Alves  <palves@redhat.com>
3967
3968         * h8300-tdep.c (h8300_gdbarch_init): Remove
3969         set_gdbarch_ecoff_reg_to_regnum calls.
3970
3971 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3972
3973         PR c++/23373
3974         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3975         offsets/sizes for static members of a class/struct.
3976
3977 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3978
3979         * target-descriptions.c (tdesc_register_bitsize): Rename.
3980         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3981         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3982         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3983
3984 2018-07-10  Tom Tromey  <tom@tromey.com>
3985
3986         * breakpoint.c (moribund_locations): Now static and a
3987         std::vector.
3988         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3989         (build_bpstat_chain, update_global_location_list)
3990         (breakpoint_retire_moribund): Update.
3991         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3992         VEC.
3993
3994 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3995
3996         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3997         (riscv_register_reggroup_p): Use new function, remove unneeded
3998         parenthesis.
3999         (riscv_push_dummy_call): Extend assert to compare against xlen or
4000         flen based on register type.
4001
4002 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4003
4004         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4005
4006 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4007
4008         * remote.c (show_hardware_watchpoint_limit): New function.
4009         (show_hardware_watchpoint_length_limit): New function.
4010         (show_hardware_breakpoint_limit): New function.
4011         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4012         where appropriate, update help text.
4013
4014 2018-07-09  Tom Tromey  <tom@tromey.com>
4015
4016         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4017         (CLIBS): Don't mention NAT_CLIBS.
4018
4019 2018-07-09  Tom Tromey  <tom@tromey.com>
4020
4021         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4022         (LIBGDB_OBS, clean mostlyclean): Update.
4023         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4024
4025 2018-07-09  Tom Tromey  <tom@tromey.com>
4026
4027         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4028         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4029         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4030
4031 2018-07-09  Tom Tromey  <tom@tromey.com>
4032
4033         * Makefile.in (ALLDEPFILES): Remove exec.c.
4034         (COMMON_OBS): Remove exec.o.
4035         (COMMON_SFILES): Add exec.c.
4036
4037 2018-07-09  Tom Tromey  <tom@tromey.com>
4038
4039         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4040
4041 2018-07-09  Tom Tromey  <tom@tromey.com>
4042
4043         * Makefile.in (clean mostlyclean): Remove stamp-version.
4044         (version.c): Depend on stamp-version.
4045         (stamp-version): New rule, from version.c rule.
4046
4047 2018-07-09  Tom Tromey  <tom@tromey.com>
4048
4049         * Makefile.in (init.c): Depend on stamp-init.
4050         (stamp-init): New rule, from init.c rule.
4051         (clean mostlyclean): Remove stamp-init.
4052
4053 2018-07-09  Tom Tromey  <tom@tromey.com>
4054
4055         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4056         SUBDIR_GCC_COMPILE_SRCS.
4057
4058 2018-07-09  Tom Tromey  <tom@tromey.com>
4059
4060         * Makefile.in (init.c): Remove some unused sed rules.
4061
4062 2018-07-09  Tom Tromey  <tom@tromey.com>
4063
4064         * Makefile.in (TSOBS): Remove.
4065         (INIT_FILES): Update.
4066         (LIBGDB_OBS): Update.
4067         (COMMON_SFILES): Add inflow.c.
4068         (SFILES): Remove inflow.c.
4069
4070 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4071
4072         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4073
4074 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4075
4076         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4077         get_saveloc_name, is_signal_frame_name, step_name,
4078         init_remote_name, create_addr_space_name,
4079         destroy_addr_space_name, search_unwind_table_name,
4080         find_dyn_list_name): Constify.
4081
4082 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4083
4084         * darwin-nat.c (darwin_pthread_kill): New function.
4085         (darwin_resume_thread): Use darwin_pthread_kill.
4086
4087 2018-07-05  Tom de Vries  <tdevries@suse.de>
4088
4089         * macroexp.c (macro_buffer) <operator=>: New member function.
4090
4091 2018-07-04  Tom Tromey  <tom@tromey.com>
4092
4093         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4094
4095 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4096
4097         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4098         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4099         * maint.c: Likewise.
4100         * top.c: Likewise.
4101
4102 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4103
4104         * NEWS: Create a new section for the next release branch.
4105         Rename the section of the current branch, now that it has
4106         been cut.
4107
4108 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4109
4110         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4111         * version.in: Bump version to 8.2.50.DATE-git.
4112
4113 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4114             Pedro Alves  <palves@redhat.com>
4115
4116         * linux-nat.c (linux_init_ptrace): Rename to ...
4117         (linux_init_ptrace_procfs): ... this.  Call
4118         linux_proc_init_warnings.
4119         (linux_nat_target::post_attach)
4120         (linux_nat_target::post_startup_inferior): Adjust.
4121         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4122         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4123
4124 2018-07-04  Tom de Vries  <tdevries@suse.de>
4125
4126         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4127         check ...
4128         (read_comp_unit_head): ... here.
4129
4130 2018-07-03  Tom Tromey  <tom@tromey.com>
4131
4132         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4133         (stop_tracing, tstatus_command)
4134         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4135         (print_one_static_tracepoint_marker): Update.
4136         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4137         std::vector.
4138         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4139         VEC.
4140         (all_tracepoints, static_tracepoints_here): Return std::vector.
4141
4142 2018-07-03  Tom Tromey  <tom@tromey.com>
4143
4144         * common/ptid.c (ptid_equal): Remove.
4145         * common/ptid.h (ptid_equal): Don't declare.
4146         * ada-tasks.c: Update.
4147         * breakpoint.c: Update.
4148         * common/agent.c: Update.
4149         * corelow.c: Update.
4150         * darwin-nat-info.c: Update.
4151         * darwin-nat.c: Update.
4152         * dcache.c: Update.
4153         * dtrace-probe.c: Update.
4154         * dummy-frame.c: Update.
4155         * fbsd-nat.c: Update.
4156         * frame.c: Update.
4157         * gdbthread.h: Update.
4158         * gnu-nat.c: Update.
4159         * go32-nat.c: Update.
4160         * inf-loop.c: Update.
4161         * inf-ptrace.c: Update.
4162         * infcall.c: Update.
4163         * infcmd.c: Update.
4164         * inflow.c: Update.
4165         * infrun.c: Update.
4166         * linux-fork.c: Update.
4167         * linux-nat.c: Update.
4168         * linux-thread-db.c: Update.
4169         * mi/mi-cmd-var.c: Update.
4170         * mi/mi-interp.c: Update.
4171         * mi/mi-main.c: Update.
4172         * nto-procfs.c: Update.
4173         * ppc-linux-tdep.c: Update.
4174         * procfs.c: Update.
4175         * python/py-inferior.c: Update.
4176         * python/py-record-btrace.c: Update.
4177         * python/py-record.c: Update.
4178         * ravenscar-thread.c: Update.
4179         * regcache.c: Update.
4180         * remote-sim.c: Update.
4181         * remote.c: Update.
4182         * sol-thread.c: Update.
4183         * solib.c: Update.
4184         * target.c: Update.
4185         * tui/tui-stack.c: Update.
4186         * varobj.c: Update.
4187         * windows-nat.c: Update.
4188         * windows-tdep.c: Update.
4189
4190 2018-07-03  Tom Tromey  <tom@tromey.com>
4191
4192         * common/ptid.c (ptid_match): Remove.
4193         * common/ptid.h (ptid_match): Don't declare.
4194         * fbsd-nat.c: Update.
4195         * infcmd.c: Update.
4196         * infrun.c: Update.
4197         * linux-nat.c: Update.
4198         * record-btrace.c: Update.
4199         * regcache.c: Update.
4200         * remote.c: Update.
4201
4202 2018-07-03  Tom Tromey  <tom@tromey.com>
4203
4204         * common/ptid.c (ptid_tid_p): Remove.
4205         * common/ptid.h (ptid_tid_p): Don't declare.
4206         * sol-thread.c: Update.
4207
4208 2018-07-03  Tom Tromey  <tom@tromey.com>
4209
4210         * common/ptid.c (ptid_lwp_p): Remove.
4211         * common/ptid.h (ptid_lwp_p): Don't declare.
4212         * fbsd-nat.c: Update.
4213         * linux-nat.c: Update.
4214         * nat/linux-procfs.c: Update.
4215         * nat/x86-linux-dregs.c: Update.
4216         * sol-thread.c: Update.
4217
4218 2018-07-03  Tom Tromey  <tom@tromey.com>
4219
4220         * common/ptid.c (ptid_is_pid): Remove.
4221         * common/ptid.h (ptid_is_pid): Don't declare.
4222         * infrun.c: Update.
4223         * linux-nat.c: Update.
4224         * mi/mi-interp.c: Update.
4225         * remote.c: Update.
4226         * thread.c: Update.
4227
4228 2018-07-03  Tom Tromey  <tom@tromey.com>
4229
4230         * common/ptid.c (ptid_get_tid): Remove.
4231         * common/ptid.h (ptid_get_tid): Don't declare.
4232         * ada-tasks.c: Update.
4233         * aix-thread.c: Update.
4234         * bsd-uthread.c: Update.
4235         * darwin-nat.c: Update.
4236         * fbsd-nat.c: Update.
4237         * i386-darwin-nat.c: Update.
4238         * infrun.c: Update.
4239         * linux-tdep.c: Update.
4240         * nto-procfs.c: Update.
4241         * ppc-ravenscar-thread.c: Update.
4242         * python/py-infthread.c: Update.
4243         * ravenscar-thread.c: Update.
4244         * sol-thread.c: Update.
4245         * sparc-ravenscar-thread.c: Update.
4246         * windows-nat.c: Update.
4247
4248 2018-07-03  Tom Tromey  <tom@tromey.com>
4249
4250         * common/ptid.c (ptid_get_lwp): Remove.
4251         * common/ptid.h (ptid_get_lwp): Don't declare.
4252         * aarch64-linux-nat.c: Update.
4253         * ada-tasks.c: Update.
4254         * aix-thread.c: Update.
4255         * amd64-linux-nat.c: Update.
4256         * arm-linux-nat.c: Update.
4257         * corelow.c: Update.
4258         * fbsd-nat.c: Update.
4259         * fbsd-tdep.c: Update.
4260         * gnu-nat.c: Update.
4261         * i386-cygwin-tdep.c: Update.
4262         * i386-gnu-nat.c: Update.
4263         * i386-linux-nat.c: Update.
4264         * ia64-linux-nat.c: Update.
4265         * inf-ptrace.c: Update.
4266         * infrun.c: Update.
4267         * linux-fork.c: Update.
4268         * linux-nat.c: Update.
4269         * linux-tdep.c: Update.
4270         * linux-thread-db.c: Update.
4271         * mips-linux-nat.c: Update.
4272         * nat/aarch64-linux-hw-point.c: Update.
4273         * nat/aarch64-linux.c: Update.
4274         * nat/linux-btrace.c: Update.
4275         * nat/linux-osdata.c: Update.
4276         * nat/linux-procfs.c: Update.
4277         * nat/x86-linux-dregs.c: Update.
4278         * obsd-nat.c: Update.
4279         * ppc-fbsd-nat.c: Update.
4280         * ppc-linux-nat.c: Update.
4281         * procfs.c: Update.
4282         * python/py-infthread.c: Update.
4283         * ravenscar-thread.c: Update.
4284         * remote.c: Update.
4285         * s390-linux-nat.c: Update.
4286         * sol-thread.c: Update.
4287         * sol2-tdep.c: Update.
4288         * spu-linux-nat.c: Update.
4289         * x86-linux-nat.c: Update.
4290         * xtensa-linux-nat.c: Update.
4291
4292 2018-07-03  Tom Tromey  <tom@tromey.com>
4293
4294         * common/ptid.c (ptid_get_pid): Remove.
4295         * common/ptid.h (ptid_get_pid): Don't declare.
4296         * aarch64-linux-nat.c: Update.
4297         * ada-lang.c: Update.
4298         * aix-thread.c: Update.
4299         * alpha-bsd-nat.c: Update.
4300         * amd64-fbsd-nat.c: Update.
4301         * amd64-linux-nat.c: Update.
4302         * arm-linux-nat.c: Update.
4303         * arm-nbsd-nat.c: Update.
4304         * auxv.c: Update.
4305         * break-catch-syscall.c: Update.
4306         * breakpoint.c: Update.
4307         * bsd-uthread.c: Update.
4308         * corelow.c: Update.
4309         * ctf.c: Update.
4310         * darwin-nat.c: Update.
4311         * fbsd-nat.c: Update.
4312         * fbsd-tdep.c: Update.
4313         * gcore.c: Update.
4314         * gnu-nat.c: Update.
4315         * hppa-nbsd-nat.c: Update.
4316         * hppa-obsd-nat.c: Update.
4317         * i386-fbsd-nat.c: Update.
4318         * ia64-linux-nat.c: Update.
4319         * inf-ptrace.c: Update.
4320         * infcmd.c: Update.
4321         * inferior.c: Update.
4322         * inferior.h: Update.
4323         * inflow.c: Update.
4324         * infrun.c: Update.
4325         * linux-fork.c: Update.
4326         * linux-nat.c: Update.
4327         * linux-tdep.c: Update.
4328         * linux-thread-db.c: Update.
4329         * m68k-bsd-nat.c: Update.
4330         * mi/mi-interp.c: Update.
4331         * mi/mi-main.c: Update.
4332         * mips-linux-nat.c: Update.
4333         * mips-nbsd-nat.c: Update.
4334         * mips64-obsd-nat.c: Update.
4335         * nat/aarch64-linux-hw-point.c: Update.
4336         * nat/aarch64-linux.c: Update.
4337         * nat/linux-btrace.c: Update.
4338         * nat/linux-osdata.c: Update.
4339         * nat/linux-procfs.c: Update.
4340         * nat/x86-linux-dregs.c: Update.
4341         * nto-procfs.c: Update.
4342         * obsd-nat.c: Update.
4343         * ppc-linux-nat.c: Update.
4344         * ppc-nbsd-nat.c: Update.
4345         * ppc-obsd-nat.c: Update.
4346         * proc-service.c: Update.
4347         * procfs.c: Update.
4348         * python/py-inferior.c: Update.
4349         * python/py-infthread.c: Update.
4350         * ravenscar-thread.c: Update.
4351         * record.c: Update.
4352         * remote-sim.c: Update.
4353         * remote.c: Update.
4354         * rs6000-nat.c: Update.
4355         * s390-linux-nat.c: Update.
4356         * sh-nbsd-nat.c: Update.
4357         * sol-thread.c: Update.
4358         * sparc-nat.c: Update.
4359         * sparc64-tdep.c: Update.
4360         * spu-linux-nat.c: Update.
4361         * spu-tdep.c: Update.
4362         * target-debug.h: Update.
4363         * target.c: Update.
4364         * thread.c: Update.
4365         * tid-parse.c: Update.
4366         * tracefile-tfile.c: Update.
4367         * vax-bsd-nat.c: Update.
4368         * windows-nat.c: Update.
4369         * x86-linux-nat.c: Update.
4370         * x86-nat.c: Update.
4371
4372 2018-07-03  Tom Tromey  <tom@tromey.com>
4373
4374         * common/ptid.c (pid_to_ptid): Remove.
4375         * common/ptid.h (pid_to_ptid): Don't declare.
4376         * aix-thread.c: Update.
4377         * arm-linux-nat.c: Update.
4378         * common/ptid.c: Update.
4379         * common/ptid.h: Update.
4380         * corelow.c: Update.
4381         * ctf.c: Update.
4382         * darwin-nat.c: Update.
4383         * fbsd-nat.c: Update.
4384         * fork-child.c: Update.
4385         * gnu-nat.c: Update.
4386         * go32-nat.c: Update.
4387         * inf-ptrace.c: Update.
4388         * infcmd.c: Update.
4389         * inferior.c: Update.
4390         * infrun.c: Update.
4391         * linux-fork.c: Update.
4392         * linux-nat.c: Update.
4393         * nat/aarch64-linux-hw-point.c: Update.
4394         * nat/fork-inferior.c: Update.
4395         * nat/x86-linux-dregs.c: Update.
4396         * nto-procfs.c: Update.
4397         * obsd-nat.c: Update.
4398         * procfs.c: Update.
4399         * progspace.c: Update.
4400         * remote.c: Update.
4401         * rs6000-nat.c: Update.
4402         * s390-linux-nat.c: Update.
4403         * sol-thread.c: Update.
4404         * spu-linux-nat.c: Update.
4405         * target.c: Update.
4406         * top.c: Update.
4407         * tracefile-tfile.c: Update.
4408         * windows-nat.c: Update.
4409
4410 2018-07-03  Tom Tromey  <tom@tromey.com>
4411
4412         * common/ptid.h (ptid_build): Don't declare.
4413         * common/ptid.c (ptid_build): Remove.
4414         * aix-thread.c: Update.
4415         * bsd-kvm.c: Update.
4416         * bsd-uthread.c: Update.
4417         * common/agent.c: Update.
4418         * common/ptid.c: Update.
4419         * common/ptid.h: Update.
4420         * corelow.c: Update.
4421         * darwin-nat.c: Update.
4422         * fbsd-nat.c: Update.
4423         * gnu-nat.c: Update.
4424         * linux-fork.c: Update.
4425         * linux-nat.c: Update.
4426         * linux-thread-db.c: Update.
4427         * nat/linux-osdata.c: Update.
4428         * nat/linux-procfs.c: Update.
4429         * nto-procfs.c: Update.
4430         * obsd-nat.c: Update.
4431         * proc-service.c: Update.
4432         * procfs.c: Update.
4433         * ravenscar-thread.c: Update.
4434         * remote-sim.c: Update.
4435         * remote.c: Update.
4436         * sol-thread.c: Update.
4437         * target.c: Update.
4438         * windows-nat.c: Update.
4439
4440 2018-07-03  Tom Tromey  <tom@tromey.com>
4441
4442         * infrun.c (follow_exec): Use exit_inferior_silent.
4443         * inferior.c (exit_inferior_num_silent): Remove.
4444         * inferior.h (exit_inferior_num_silent): Don't declare.
4445
4446 2018-07-03  Tom Tromey  <tom@tromey.com>
4447
4448         PR cli/23340:
4449         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4450         inferior_ptid on error.
4451
4452 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4453             Simon Marchi  <simon.marchi@polymtl.ca>
4454
4455         PR tdep/8282
4456         * disasm.h (gdb_disassembler): Add
4457         `m_disassembler_options_holder'. member
4458         * disasm.c (get_all_disassembler_options): New function.
4459         (gdb_disassembler::gdb_disassembler): Use it.
4460         (gdb_buffered_insn_length_init_dis): Likewise.
4461         (gdb_buffered_insn_length): Adjust accordingly.
4462         (set_disassembler_options): Handle options with arguments.
4463         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4464         line if showing options with descriptions.
4465         (disassembler_options_completer): Adapt to using the
4466         `disasm_options_and_args_t' structure.
4467         * mips-tdep.c (mips_disassembler_options): New variable.
4468         (mips_disassembler_options_o32): Likewise.
4469         (mips_disassembler_options_n32): Likewise.
4470         (mips_disassembler_options_n64): Likewise.
4471         (gdb_print_insn_mips): Don't set `disassembler_options'.
4472         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4473         functions.
4474         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4475         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4476         `gdbarch_disassembler_options_implicit' and
4477         `gdbarch_valid_disassembler_options'.
4478         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4479         `disasm_options_and_args_t' structure.
4480         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4481         method.
4482         (valid_disassembler_options): Switch from `disasm_options_t' to
4483         the `disasm_options_and_args_t' structure.
4484         * NEWS: Document `set disassembler-options' support for the MIPS
4485         target.
4486         * gdbarch.h: Regenerate.
4487         * gdbarch.c: Regenerate.
4488
4489 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4490
4491         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4492
4493 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4494
4495         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4496         parameter in call to amd64_target_description.
4497         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4498         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4499         (amd64fbsd_init_abi): Likewise.
4500         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4501         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4502         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4503         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4504
4505 2018-06-29  Pedro Alves  <palves@redhat.com>
4506
4507         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4508         "segments" parameter.
4509         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4510         (_initialize_amd64_tdep): Update call to
4511         amd64_create_target_description.
4512         (amd64_target_description): Add "segments" parameter.  Adjust
4513         the implementation to use it.
4514         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4515         call to amd64_create_target_description.
4516         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4517         * gdb/arch/amd64.h (amd64_create_target_description): Add
4518         "segments" register.
4519         * gdb/arch/amd64.c (amd64_create_target_description): Add
4520         "segments" parameter.  Call create_feature_i386_64bit_segments
4521         only if SEGMENTS is true.
4522         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4523         call to amd64_create_target_description.
4524
4525 2018-06-29  Pedro Alves  <palves@redhat.com>
4526
4527         * thread.c (thread_target_id_str): New, factored out from ...
4528         (print_thread_info_1): ... here.  Use it to compute the max
4529         "Target Id" column width.
4530
4531 2018-06-29  Pedro Alves  <palves@redhat.com>
4532
4533         * remote.c (remote_target::extra_thread_info): Delete
4534         'display_buf' and 'n' locals.  from the cache, regardless of
4535         packet mechanims is in use.  Use cache for qThreadExtra and qP
4536         methods too.
4537
4538 2018-06-29  Pedro Alves  <palves@redhat.com>
4539
4540         * blockframe.c (find_pc_sect_containing_function): New function.
4541         * breakpoint.c (print_breakpoint_location): Don't call
4542         find_pc_sect_function.
4543         * linespec.c (create_sals_line_offset): Record the location's
4544         symbol in the sal.
4545         * linespec.c (convert_address_location_to_sals): Fill in sal's
4546         symbol with find_pc_sect_containing_function.
4547         * symtab.c (find_function_start_sal): Rename to ...
4548         (find_function_start_sal_1): ... this.
4549         (find_function_start_sal): Reimplement as wrapper around
4550         find_function_start_sal_1, and use
4551         find_pc_sect_containing_function to fill in the sal's symbol.
4552         (find_function_start_sal(symbol*, bool)): Adjust.
4553         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4554         comments.
4555         (find_pc_sect_containing_function): Declare.
4556
4557 2018-06-29  Pedro Alves  <palves@redhat.com>
4558
4559         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4560         true if the the location has no symbol.
4561
4562 2018-06-28  Tom Tromey  <tom@tromey.com>
4563
4564         * NEWS: Mention --enable-codesign.
4565         * silent-rules.mk (ECHO_SIGN): New variable.
4566         * configure.ac: Add --enable-codesign.
4567         * configure: Rebuild.
4568         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4569         (gdb$(EXEEXT)): Optionally invoke codesign.
4570
4571 2018-06-28  Pedro Alves  <palves@redhat.com>
4572
4573         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4574         comments.
4575         (switch_to_thread_no_regs): Adjust comment.
4576         * infcmd.c (stop_pc): Delete.
4577         (post_create_inferior, info_program_command): Replace references
4578         to stop_pc with references to thread_info->suspend.stop_pc.
4579         * inferior.h (stop_pc): Delete declaration.
4580         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4581         (handle_inferior_event_1, handle_signal_stop)
4582         (process_event_stop_test, keep_going_stepped_thread)
4583         (handle_step_into_function, handle_step_into_function_backward)
4584         (print_stop_location): Replace references to stop_pc with
4585         references to thread_info->suspend.stop_pc.
4586         (struct infcall_suspend_state) <stop_pc>: Delete field.
4587         (save_infcall_suspend_state, restore_infcall_suspend_state):
4588         Remove references to inf_stat->stop_pc.
4589         * linux-fork.c (fork_load_infrun_state): Likewise.
4590         * record-btrace.c (record_btrace_set_replay): Likewise.
4591         * record-full.c (record_full_goto_entry): Likewise.
4592         * remote.c (print_one_stopped_thread): Likewise.
4593         * target.c (target_resume): Extend comment.
4594         * thread.c (set_executing_thread): New.
4595         (set_executing): Use it.
4596         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4597         Remove references to stop_pc.
4598
4599 2018-06-28  Pedro Alves  <palves@redhat.com>
4600
4601         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4602         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4603
4604 2018-06-28  Tom Tromey  <tom@tromey.com>
4605
4606         * coffread.c (coff_symfile_finish): Update.
4607         * xcoffread.c (xcoff_symfile_finish): Update.
4608         * elfread.c (elf_symfile_finish): Update.
4609         * symfile.h (dwarf2_free_objfile): Don't declare.
4610         * dwarf2read.c (_initialize_dwarf2_read): Use
4611         register_objfile_data_with_cleanup.
4612         (dwarf2_free_objfile): Now static.  Change signature.
4613
4614 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4615
4616         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4617         option "-o" to add-symbol-file-load to add an offset to each
4618         section's load address.
4619         * symfile.c (set_objfile_default_section_offset): New function.
4620
4621 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4622
4623         * symfile.c (add_symbol_file_command): Make sure that sections
4624         with the same name are sorted in the same order.
4625
4626 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4627
4628         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4629         require the second argument.  If omitted, load sections at the
4630         addresses specified in the file.
4631
4632 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4633
4634         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4635         (_initialize_symfile): Add option "-o" to symbol-file to add an
4636         offset to each section of the symbol file.
4637
4638 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4639
4640         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4641
4642 2018-06-27  Tom Tromey  <tom@tromey.com>
4643
4644         * stack.c (_initialize_stack): Update "func" help text.
4645
4646 2018-06-27  Tom Tromey  <tom@tromey.com>
4647
4648         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4649         std::vector.
4650         (unwind_infopy_str, pyuw_create_unwind_info)
4651         (unwind_infopy_add_saved_register, pyuw_sniffer)
4652         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4653         Update.
4654         (struct saved_reg): Add constructor.
4655         <value>: Now a gdbpy_ref<>.
4656
4657 2018-06-27  Tom Tromey  <tom@tromey.com>
4658
4659         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4660
4661 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4662
4663         * gdb-gdb.py.in: Format using autopep8.
4664
4665 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4666
4667         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4668         (type_lookup_function): Recognize CORE_ADDR values.
4669
4670 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4671
4672         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4673         print tag_name.
4674
4675 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4676
4677         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4678         <__lt__>: Add.
4679
4680 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4681
4682         * gdb-gdb.py: Move to...
4683         * gdb-gdb.py.in: ... here.
4684         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4685         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4686         dependencies.
4687         (distclean): Remove gdb-gdb.py when cleaning.
4688         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4689         * configure: Re-generate.
4690
4691 2018-06-27  Pedro Alves  <palves@redhat.com>
4692
4693         * proc-service.c (get_ps_regcache): New.
4694         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4695         (ps_lsetfpregs): Use it.
4696
4697 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4698
4699         PR gdb/21695
4700         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4701         (dwarf_decode_lines_1): Adjust.
4702
4703 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4704
4705         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4706         override.
4707         <info_proc>: Likewise.
4708
4709 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4710
4711         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4712         to windows_fetch_one_register, and only handle the case of
4713         fetching one register.  Move the code that reloads the context
4714         and iterates over all registers if R is negative to...
4715         (windows_nat_target::fetch_registers): ... here.
4716         (do_windows_store_inferior_registers): Rename to
4717         windows_store_one_register, and only handle the case of storing
4718         one register.  Move the code that handles the case where r is
4719         negative to...
4720         (windows_nat_target::store_registers) ... here.
4721
4722 2018-06-26  Tom Tromey  <tom@tromey.com>
4723
4724         PR rust/22574:
4725         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4726         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4727         Update.
4728         (rust_internal_print_type): Add podata parameter.
4729         (rust_print_type): Update.
4730
4731 2018-06-26  Tom Tromey  <tom@tromey.com>
4732
4733         * typeprint.h (struct print_offset_data) <update, finish,
4734         maybe_print_hole>: New methods.
4735         <indentation>: New constant.
4736         * typeprint.c (print_offset_data::indentation): Define.
4737         (print_offset_data::maybe_print_hole, print_offset_data::update)
4738         (print_offset_data::finish): Move from c-typeprint.c and rename.
4739         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4740         (print_spaces_filtered_with_print_options): Update.
4741         (c_print_type_union_field_offset, maybe_print_hole)
4742         (c_print_type_struct_field_offset): Move to typeprint.c and
4743         rename.
4744         (c_type_print_base_struct_union): Update.
4745
4746 2018-06-25  Pedro Alves  <palves@redhat.com>
4747
4748         * gdbthread.h (thread_info_ref, delete_thread)
4749         (delete_thread_silent, first_thread_of_inferior)
4750         (any_thread_of_inferior, switch_to_thread)
4751         (enable_thread_stack_temporaries)
4752         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4753         (get_last_thread_stack_temporary)
4754         (value_in_thread_stack_temporaries, can_access_registers_thread):
4755         Spell out "struct thread_info" instead of just "thread_info".
4756         * inferior.h (notice_new_inferior): Likewise.
4757
4758 2018-06-25  Pedro Alves  <palves@redhat.com>
4759
4760         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4761         pass thread_info pointer to delete_thread.
4762         (windows_nat_target::detach): Pass inferior pointer to
4763         detach_inferior.
4764         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4765         delete_thread.
4766         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4767         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4768         and pass a thread_info pointer to delete_thread.
4769         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4770         pass thread_info pointer to delete_thread.
4771         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4772         delete_thread_silent call.
4773         * procfs.c (procfs_target::detach): Pass inferior pointer to
4774         detach_inferior.
4775         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4776         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4777         delete_thread_silent call.
4778         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4779         pass thread_info pointer to delete_thread.
4780         (windows_nat_target::detach): Pass inferior pointer to
4781         delete_inferior.
4782
4783 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4784
4785         * regcache.c (readable_regcache::read_part): Fix asserts.
4786         (reg_buffer::raw_collect_part): New function.
4787         (regcache::write_part): Fix asserts.
4788         (reg_buffer::raw_supply_part): New function.
4789         (regcache::transfer_regset_register): New helper function.
4790         (regcache::transfer_regset): Call new functions.
4791         (regcache_supply_regset): Use gdb_byte*.
4792         (regcache::supply_regset): Likewise.
4793         (regcache_collect_regset): Likewise.
4794         (regcache::collect_regset): Likewise.
4795         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4796         (reg_buffer::raw_supply_part): Likewise.
4797         (regcache::transfer_regset_register): Likewise.
4798         (regcache::transfer_regset): Use gdb_byte*.
4799
4800 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4801
4802         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4803
4804 2018-06-21  Pedro Alves  <palves@redhat.com>
4805
4806         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4807         instead of a ptid_t.  All callers adjusted.
4808         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4809         adjusted.
4810         (print_ada_task_info, display_current_task_id, task_command_1):
4811         Adjust.
4812         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4813         inferior_thread.
4814         (breakpoint_kind): Adjust.
4815         (remove_breakpoints_pid): Rename to ...
4816         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4817         pointer.  All callers adjusted.
4818         (bpstat_clear_actions): Use inferior_thread.
4819         (get_bpstat_thread): New.
4820         (bpstat_do_actions): Use it.
4821         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4822         to take a thread_info pointer.  All callers adjusted.
4823         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4824         (breakpoint_re_set_thread): Use inferior_thread.
4825         * breakpoint.h (struct inferior): Forward declare.
4826         (bpstat_stop_status): Update.
4827         (remove_breakpoints_pid): Delete.
4828         (remove_breakpoints_inf): New.
4829         * bsd-uthread.c (bsd_uthread_target::wait)
4830         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4831         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4832         (maint_btrace_packet_history_cmd)
4833         (maint_btrace_clear_packet_history_cmd): Adjust.
4834         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4835         inferior_thread.
4836         * cli/cli-interp.c: Include "inferior.h".
4837         * common/refcounted-object.h (struct
4838         refcounted_object_ref_policy): New.
4839         * compile/compile-object-load.c: Include gdbthread.h.
4840         (store_regs): Use inferior_thread.
4841         * corelow.c (core_target::close): Use current_inferior.
4842         (core_target_open): Adjust to use first_thread_of_inferior and use
4843         the current inferior.
4844         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4845         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4846         <thread>: ... this new field.  All references adjusted.
4847         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4848         Take a thread_info pointer instead of a ptid_t.
4849         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4850         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4851         thread_info pointer instead of a ptid_t.
4852         * elfread.c: Include "inferior.h".
4853         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4854         Use inferior_thread.
4855         * eval.c (evaluate_subexp): Likewise.
4856         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4857         inferior_thread.
4858         * gdb_proc_service.h (struct thread_info): Forward declare.
4859         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4860         <thread>: ... this new field.  All references adjusted.
4861         * gdbarch.h, gdbarch.c: Regenerate.
4862         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4863         'thread' parameter.  All implementations and callers adjusted.
4864         * gdbthread.h (thread_info) <set_running>: New method.
4865         (delete_thread, delete_thread_silent): Take a thread_info pointer
4866         instead of a ptid.
4867         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4868         (first_thread_of_process): Delete, replaced by ...
4869         (first_thread_of_inferior): ... this new function.  All callers
4870         adjusted.
4871         (any_live_thread_of_process): Delete, replaced by ...
4872         (any_live_thread_of_inferior): ... this new function.  All callers
4873         adjusted.
4874         (switch_to_thread, switch_to_no_thread): Declare.
4875         (is_executing): Delete.
4876         (enable_thread_stack_temporaries): Update comment.
4877         <enable_thread_stack_temporaries>: Take a thread_info pointer
4878         instead of a ptid_t.  Incref the thread.
4879         <~enable_thread_stack_temporaries>: Decref the thread.
4880         <m_ptid>: Delete
4881         <m_thr>: New.
4882         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4883         (get_last_thread_stack_temporary)
4884         (value_in_thread_stack_temporaries, can_access_registers_thread):
4885         Take a thread_info pointer instead of a ptid_t.  All callers
4886         adjusted.
4887         * infcall.c (get_call_return_value): Use inferior_thread.
4888         (run_inferior_call): Work with thread pointers instead of ptid_t.
4889         (call_function_by_hand_dummy): Work with thread pointers instead
4890         of ptid_t.  Use thread_info_ref.
4891         * infcmd.c (proceed_thread_callback): Access thread's state
4892         directly.
4893         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4894         access thread's state directly.
4895         (continue_command): Use inferior_thread.
4896         (info_program_command): Use find_thread_ptid and access thread
4897         state directly.
4898         (proceed_after_attach_callback): Use thread state directly.
4899         (notice_new_inferior): Take a thread_info pointer instead of a
4900         ptid_t.  All callers adjusted.
4901         (exit_inferior): Take an inferior pointer instead of a pid.  All
4902         callers adjusted.
4903         (exit_inferior_silent): New.
4904         (detach_inferior): Delete.
4905         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4906         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4907         (detach_inferior_command, kill_inferior_command): Use
4908         find_inferior_id instead of valid_gdb_inferior_id and
4909         gdb_inferior_id_to_pid.
4910         (inferior_command): Use inferior and thread pointers.
4911         * inferior.h (struct thread_info): Forward declare.
4912         (notice_new_inferior): Take a thread_info pointer instead of a
4913         ptid_t.  All callers adjusted.
4914         (detach_inferior): Delete declaration.
4915         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4916         instead of a pid.  All callers adjusted.
4917         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4918         (valid_gdb_inferior_id): Delete.
4919         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4920         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4921         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4922         ...
4923         <inf>: ... this new field.
4924         <step_ptid>: Delete, replaced by ...
4925         <step_thread>: ... this new field.
4926         (get_displaced_stepping_state): Take an inferior pointer instead
4927         of a pid.  All callers adjusted.
4928         (displaced_step_in_progress_any_inferior): Adjust.
4929         (displaced_step_in_progress_thread): Take a thread pointer instead
4930         of a ptid_t.  All callers adjusted.
4931         (displaced_step_in_progress, add_displaced_stepping_state): Take
4932         an inferior pointer instead of a pid.  All callers adjusted.
4933         (get_displaced_step_closure_by_addr): Adjust.
4934         (remove_displaced_stepping_state): Take an inferior pointer
4935         instead of a pid.  All callers adjusted.
4936         (displaced_step_prepare_throw, displaced_step_prepare)
4937         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4938         All callers adjusted.
4939         (start_step_over): Adjust.
4940         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4941         displaced step queue.
4942         (do_target_resume): Adjust.
4943         (fetch_inferior_event): Use inferior_thread.
4944         (context_switch, get_inferior_stop_soon): Take an
4945         execution_control_state pointer instead of a ptid_t.  All callers
4946         adjusted.
4947         (switch_to_thread_cleanup): Delete.
4948         (stop_all_threads): Use scoped_restore_current_thread.
4949         * inline-frame.c: Include "gdbthread.h".
4950         (inline_state) <inline_state>: Take a thread pointer instead of a
4951         ptid_t.  All callers adjusted.
4952         <ptid>: Delete, replaced by ...
4953         <thread>: ... this new field.
4954         (find_inline_frame_state): Take a thread pointer instead of a
4955         ptid_t.  All callers adjusted.
4956         (skip_inline_frames, step_into_inline_frame)
4957         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4958         pointer instead of a ptid_t.  All callers adjusted.
4959         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4960         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4961         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4962         pointers directly.
4963         * linux-nat.c (get_detach_signal): Likewise.
4964         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4965         (thread_db_notice_clone): Adjust.
4966         (thread_db_find_new_threads_silently)
4967         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4968         a thread pointer instead of a ptid_t.  All callers adjusted.
4969         * mi/mi-cmd-var.c: Include "inferior.h".
4970         (mi_cmd_var_update_iter): Update to use thread pointers.
4971         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4972         inferior directly.
4973         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4974         out to ...
4975         (mi_output_running): ... this new function.
4976         (mi_on_resume_1): Adjust to use it.
4977         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4978         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4979         directly.
4980         (interrupt_thread_callback): : Adjust to use thread and inferior
4981         pointers.
4982         * proc-service.c: Include "gdbthread.h".
4983         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4984         * progspace-and-thread.c: Include "inferior.h".
4985         * progspace.c: Include "inferior.h".
4986         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4987         hold a reference to an inferior_object.
4988         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4989         inferior_thread.
4990         * python/py-inferior.c (struct inferior_object): Give the type a
4991         tag name instead of a typedef.
4992         (python_on_normal_stop): No need to check if the current thread is
4993         listed.
4994         (inferior_to_inferior_object): Change return type to
4995         inferior_object.  All callers adjusted.
4996         (find_thread_object): Delete, bits factored out to ...
4997         (thread_to_thread_object): ... this new function.
4998         * python/py-infthread.c (create_thread_object): Use
4999         inferior_to_inferior_object.
5000         (thpy_is_stopped): Use thread pointer directly.
5001         (gdbpy_selected_thread): Use inferior_thread.
5002         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5003         field, replaced with ...
5004         <thread>: ... this new field.  All users adjusted.
5005         (btpy_insn_or_gap_new): Drop const.
5006         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5007         callers adjusted.
5008         * python/py-record.c: Include "gdbthread.h".
5009         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5010         a ptid_t.  All callers adjusted.
5011         (gdbpy_current_recording): Use inferior_thread.
5012         * python/py-record.h (recpy_record_object) <ptid>: Delete
5013         field, replaced with ...
5014         <thread>: ... this new field.  All users adjusted.
5015         (recpy_element_object) <ptid>: Delete
5016         field, replaced with ...
5017         <thread>: ... this new field.  All users adjusted.
5018         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5019         a ptid_t.  All callers adjusted.
5020         * python/py-threadevent.c: Include "gdbthread.h".
5021         (get_event_thread): Use thread_to_thread_object.
5022         * python/python-internal.h (struct inferior_object): Forward
5023         declare.
5024         (find_thread_object, find_inferior_object): Delete declarations.
5025         (thread_to_thread_object, inferior_to_inferior_object): New
5026         declarations.
5027         * record-btrace.c: Include "inferior.h".
5028         (require_btrace_thread): Use inferior_thread.
5029         (record_btrace_frame_sniffer)
5030         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5031         (get_thread_current_frame): Use scoped_restore_current_thread and
5032         switch_to_thread.
5033         (get_thread_current_frame): Use thread pointer directly.
5034         (record_btrace_replay_at_breakpoint): Use thread's inferior
5035         pointer directly.
5036         * record-full.c: Include "inferior.h".
5037         * regcache.c: Include "gdbthread.h".
5038         (get_thread_arch_regcache): Use the inferior's address space
5039         directly.
5040         (get_thread_regcache, registers_changed_thread): New.
5041         * regcache.h (get_thread_regcache(thread_info *thread)): New
5042         overload.
5043         (registers_changed_thread): New.
5044         (remote_target) <remote_detach_1>: Swap order of parameters.
5045         (remote_add_thread): <remote_add_thread>: Return the new thread.
5046         (get_remote_thread_info(ptid_t)): New overload.
5047         (remote_target::remote_notice_new_inferior): Use thread pointers
5048         directly.
5049         (remote_target::process_initial_stop_replies): Use
5050         thread_info::set_running.
5051         (remote_target::remote_detach_1, remote_target::detach)
5052         (extended_remote_target::detach): Adjust.
5053         * stack.c (frame_show_address): Use inferior_thread.
5054         * target-debug.h (target_debug_print_thread_info_pp): New.
5055         * target-delegates.c: Regenerate.
5056         * target.c (default_thread_address_space): Delete.
5057         (memory_xfer_partial_1): Use current_inferior.
5058         (target_detach): Use current_inferior.
5059         (target_thread_address_space): Delete.
5060         (generic_mourn_inferior): Use current_inferior.
5061         * target.h (struct target_ops) <thread_address_space>: Delete.
5062         (target_thread_address_space): Delete.
5063         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5064         pointers directly.
5065         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5066         thread pointer instead of a ptid_t.  Adjust all callers.
5067         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5068         (first_thread_of_process): Delete, replaced by ...
5069         (first_thread_of_inferior): ... this new function.  All callers
5070         adjusted.
5071         (any_thread_of_process): Rename to ...
5072         (any_thread_of_inferior): ... this, and take an inferior pointer.
5073         (any_live_thread_of_process): Rename to ...
5074         (any_live_thread_of_inferior): ... this, and take an inferior
5075         pointer.
5076         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5077         (value_in_thread_stack_temporaries)
5078         (get_last_thread_stack_temporary): Take a thread pointer instead
5079         of a ptid_t.  Adjust all callers.
5080         (thread_info::set_running): New.
5081         (validate_registers_access): Use inferior_thread.
5082         (can_access_registers_ptid): Rename to ...
5083         (can_access_registers_thread): ... this, and take a thread
5084         pointer.
5085         (print_thread_info_1): Adjust to compare thread pointers instead
5086         of ptids.
5087         (switch_to_no_thread, switch_to_thread): Make extern.
5088         (scoped_restore_current_thread::~scoped_restore_current_thread):
5089         Use m_thread pointer directly.
5090         (scoped_restore_current_thread::scoped_restore_current_thread):
5091         Use inferior_thread.
5092         (thread_command): Use thread pointer directly.
5093         (thread_num_make_value_helper): Use inferior_thread.
5094         * top.c (execute_command): Use inferior_thread.
5095         * tui/tui-interp.c: Include "inferior.h".
5096         * varobj.c (varobj_create): Use inferior_thread.
5097         (value_of_root_1): Use find_thread_global_id instead of
5098         global_thread_id_to_ptid.
5099
5100 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5101
5102         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5103         possible.
5104         (regcache::write_part): Likewise.
5105         (readable_regcache::cooked_read_part): Update comment.
5106         (readable_regcache::cooked_write_part): Likewise.
5107         * regcache.h: (readable_regcache::read_part): Likewise.
5108         (regcache::write_part): Likewise.
5109
5110 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5111             Dirk Schubert  <dirk.schubert@arm.com>
5112
5113         * aarch64-linux-nat.c (post_attach): New.
5114         (aarch64_linux_nat_target::post_attach): Override post_attach to
5115         record the number of hardware debug registers.
5116
5117 2018-06-20  Tom Tromey  <tom@tromey.com>
5118
5119         * python/py-param.c (add_setshow_generic): Make parameters const.
5120         (parmpy_init): Update.
5121
5122 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5123
5124         * regcache.h (regcache_cooked_read_ftype): Rename to...
5125         (register_read_ftype): ...this, change type to function_view.
5126         (class reg_buffer) <save>: Remove src parameter.
5127         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5128         parameter non-const in first overload.  Remove src parameter in
5129         second overload.
5130         * regcache.c (do_cooked_read): Remove.
5131         (readonly_detached_regcache::readonly_detached_regcache): Make
5132         parameter non-const, adjust call to other constructor.
5133         (reg_buffer::save): Remove src parameter.
5134         * frame.c (do_frame_register_read): Remove.
5135         (frame_save_as_regcache): Use lambda function.
5136         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5137         parameter to ppu2spu_data *.
5138         (ppu2spu_sniffer): Use lambda function.
5139
5140 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5141
5142         * record-full.c (record_full_target::insert_breakpoint): Remove
5143         "struct" keyword, add const.
5144
5145 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5146
5147         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5148         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5149         * configure.ac: Remove AC_PREREQ, add missing quoting.
5150         * gnulib/configure.ac: Modernize usage of
5151         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5152         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5153         (AUTOMAKE_VERSION): Bump to 1.15.1.
5154         * configure: Re-generate.
5155         * config.in: Re-generate.
5156         * aclocal.m4: Re-generate.
5157         * gnulib/aclocal.m4: Re-generate.
5158         * gnulib/config.in: Re-generate.
5159         * gnulib/configure: Re-generate.
5160         * gnulib/import/Makefile.in: Re-generate.
5161
5162 2018-06-19  Pedro Alves  <palves@redhat.com>
5163
5164         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5165         (lookup_minimal_symbol_by_pc_section): ... here with
5166         gdb_assert_not_reached added.
5167
5168 2018-06-19  Pedro Alves  <palves@redhat.com>
5169
5170         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5171         parameter with a block parameter.  Compare location's block symbol
5172         with the frame's block instead of addresses.
5173         (skip_inline_frames): Pass the current block instead of the
5174         frame's address.  Break out as soon as we determine the frame
5175         should not be skipped.
5176
5177 2018-06-18  Tom Tromey  <tom@tromey.com>
5178
5179         * solib-aix.c (solib_aix_get_section_offsets): Return
5180         unique_xmalloc_ptr.
5181         (solib_aix_solib_create_inferior_hook): Update.
5182
5183 2018-06-18  Tom Tromey  <tom@tromey.com>
5184
5185         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5186
5187 2018-06-18  Tom Tromey  <tom@tromey.com>
5188
5189         * solib-frv.c (frv_relocate_main_executable): Use
5190         unique_xmalloc_ptr.
5191         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5192         unique_xmalloc_ptr.
5193
5194 2018-06-18  Tom Tromey  <tom@tromey.com>
5195
5196         * objfiles.h (inhibit_section_map_updates): Update.
5197         (resume_section_map_updates, resume_section_map_updates_cleanup):
5198         Remove.
5199         * solib-svr4.c (svr4_handle_solib_event): Update.
5200         * objfiles.c (inhibit_section_map_updates): Return
5201         scoped_restore_tmpl<int>.
5202         (resume_section_map_updates, resume_section_map_updates_cleanup):
5203         Remove.
5204
5205 2018-06-18  Tom Tromey  <tom@tromey.com>
5206
5207         * valprint.h (read_string): Update.
5208         * valprint.c (read_string): Change type of "buffer".
5209         (val_print_string): Update.
5210         * python/py-value.c (valpy_string): Update.
5211         * language.h (struct language_defn) <la_get_string>: Change
5212         type of "buffer".
5213         (default_get_string, c_get_string): Update.
5214         * language.c (default_get_string): Change type of "buffer".
5215         * guile/scm-value.c (gdbscm_value_to_string): Update.
5216         * c-lang.c (c_get_string): Change type of "buffer".
5217
5218 2018-06-18  Tom Tromey  <tom@tromey.com>
5219
5220         * ser-mingw.c (struct pipe_state_destroyer): New.
5221         (pipe_state_up): New typedef.
5222         (cleanup_pipe_state): Remove.
5223         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5224
5225 2018-06-18  Tom Tromey  <tom@tromey.com>
5226
5227         * rust-lang.h (rust_yyerror): Don't declare.
5228         * rust-lang.c (rust_language_defn): Update.
5229         * rust-exp.y (yyerror): Now static.
5230         * parse.c (parse_exp_in_context_1): Update.
5231         * p-lang.h (p_yyerror): Don't declare.
5232         * p-lang.c (p_language_defn): Update.
5233         * p-exp.y (yyerror): Now static.
5234         * opencl-lang.c (opencl_language_defn): Update.
5235         * objc-lang.c (objc_language_defn): Update.
5236         * m2-lang.h (m2_yyerror): Don't declare.
5237         * m2-lang.c (m2_language_defn): Update.
5238         * m2-exp.y (yyerror): Now static.
5239         * language.h (struct language_defn) <la_error>: Remove.
5240         * language.c (unk_lang_error): Remove.
5241         (unknown_language_defn, auto_language_defn): Remove.
5242         * go-lang.h (go_yyerror): Don't declare.
5243         * go-lang.c (go_language_defn): Update.
5244         * go-exp.y (yyerror): Now static.
5245         * f-lang.h (f_yyerror): Don't declare.
5246         * f-lang.c (f_language_defn): Update.
5247         * f-exp.y (yyerror): Now static.
5248         * d-lang.h (d_yyerror): Don't declare.
5249         * d-lang.c (d_language_defn): Update.
5250         * d-exp.y (yyerror): Now static.
5251         * c-lang.h (c_yyerror): Don't declare.
5252         * c-lang.c (c_language_defn, cplus_language_defn)
5253         (asm_language_defn, minimal_language_defn): Update.
5254         * c-exp.y (yyerror): Now static.
5255         * ada-lang.h (ada_yyerror): Don't declare.
5256         * ada-lang.c (ada_language_defn): Update.
5257         * ada-exp.y (yyerror): Now static.
5258
5259 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5260
5261         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5262         (store_sveregs_to_thread): Likewise.
5263         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5264         (aarch64_linux_store_inferior_registers): Likewise.
5265         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5266         function.
5267         (aarch64_sve_regs_copy_to_regcache): Likewise.
5268         (aarch64_sve_regs_copy_from_regcache): Likewise.
5269         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5270         declaration.
5271         (aarch64_sve_regs_copy_to_regcache): Likewise.
5272         (aarch64_sve_regs_copy_from_regcache): Likewise.
5273         (sve_context): Structure from Linux headers.
5274         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5275         (SVE_SIG_ZREG_SIZE): Likewise.
5276         (SVE_SIG_PREG_SIZE): Likewise.
5277         (SVE_SIG_FFR_SIZE): Likewise.
5278         (SVE_SIG_REGS_OFFSET): Likewise.
5279         (SVE_SIG_ZREGS_OFFSET): Likewise.
5280         (SVE_SIG_ZREG_OFFSET): Likewise.
5281         (SVE_SIG_ZREGS_SIZE): Likewise.
5282         (SVE_SIG_PREGS_OFFSET): Likewise.
5283         (SVE_SIG_PREG_OFFSET): Likewise.
5284         (SVE_SIG_PREGS_SIZE): Likewise.
5285         (SVE_SIG_FFR_OFFSET): Likewise.
5286         (SVE_SIG_REGS_SIZE): Likewise.
5287         (SVE_SIG_CONTEXT_SIZE): Likewise.
5288         (SVE_PT_REGS_MASK): Likewise.
5289         (SVE_PT_REGS_FPSIMD): Likewise.
5290         (SVE_PT_REGS_SVE): Likewise.
5291         (SVE_PT_VL_INHERIT): Likewise.
5292         (SVE_PT_VL_ONEXEC): Likewise.
5293         (SVE_PT_REGS_OFFSET): Likewise.
5294         (SVE_PT_FPSIMD_OFFSET): Likewise.
5295         (SVE_PT_FPSIMD_SIZE): Likewise.
5296         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5297         (SVE_PT_SVE_PREG_SIZE): Likewise.
5298         (SVE_PT_SVE_FFR_SIZE): Likewise.
5299         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5300         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5301         (__SVE_SIG_TO_PT): Likewise.
5302         (SVE_PT_SVE_OFFSET): Likewise.
5303         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5304         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5305         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5306         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5307         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5308         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5309         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5310         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5311         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5312         (SVE_PT_SVE_SIZE): Likewise.
5313         (SVE_PT_SIZE): Likewise.
5314         (HAS_SVE_STATE): New define.
5315
5316 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5317
5318         * nat/aarch64-sve-linux-sigcontext.h: New file.
5319         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5320         new files.
5321         (SVE_VQ_MIN): Likewise.
5322         (SVE_VQ_MAX): Likewise.
5323         (SVE_VL_MIN): Likewise.
5324         (SVE_VL_MAX): Likewise.
5325         (SVE_NUM_ZREGS): Likewise.
5326         (SVE_NUM_PREGS): Likewise.
5327         (sve_vl_valid): Likewise.
5328         (struct user_sve_header): Likewise.
5329
5330 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5331             Richard Bunt <Richard.Bunt@arm.com>
5332
5333         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5334         was requested by GDB.
5335
5336 2018-06-15  Tom de Vries  <tdevries@suse.de>
5337
5338         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5339
5340 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5341
5342         * gnulib/update-gnulib.sh: Print expected versions of
5343         autoconf/aclocal.
5344
5345 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5346
5347         * arch-utils.c (default_type_align): Use type_length_units.
5348         * gdbtypes.c (type_align): Use type_length_units.
5349
5350 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5351
5352         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5353         of 'define' command.
5354
5355 2018-06-14  Tom de Vries  <tdevries@suse.de>
5356
5357         PR cli/22573
5358         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5359         get_no_prettyformat_print_options.
5360
5361 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5362
5363         * sparc-nat.h: Include target.h.
5364         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5365         <fetch_registers>: Remove this argument in function call.
5366         <store_registers>: Remove this argument in function call, remove
5367         extra semicolon.
5368         <low_forget_process>: Call sparc64_forget_process instead of
5369         sparc_forget_process.
5370
5371 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5372
5373         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5374         (procfs_target::make_corefile_notes): Adjust to new
5375         target_read_alloc return type.
5376
5377 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5378             Stephen Roberts  <stephen.roberts@arm.com>
5379
5380         PR gdb/22882
5381         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5382         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5383         Move should_notify_stop local into more inner scope.
5384
5385 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5386             Stephen Roberts  <stephen.roberts@arm.com>
5387
5388         PR gdb/22882
5389         * infrun.c (resume_1): Add call to mark_async_event_handler.
5390
5391 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5392
5393         * infrun.c (do_target_wait): Change old version of $pc printed.
5394
5395 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5396
5397         * dwarf2read.c (read_index_from_section): Rename to...
5398         (read_gdb_index_from_section): ... this, update all callers.
5399         (dwarf2_read_index): Rename to...
5400         (dwarf2_read_gdb_index): ... this, update all callers.
5401
5402 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5403
5404         * gdb/hppa-linux-nat.c
5405         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5406         hppa_linux_nat_target::fetch_registers.
5407
5408 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5409
5410         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5411         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5412         (AARCH64_DWARF_SVE_FFR): Likewise.
5413         (AARCH64_DWARF_SVE_P0): Likewise.
5414         (AARCH64_DWARF_SVE_Z0): Likewise.
5415
5416 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5417
5418         * common/common-regcache.h (raw_compare): New function.
5419         * regcache.c (regcache::raw_compare): Likewise.
5420         * regcache.h (regcache::raw_compare): New declaration.
5421
5422 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5423
5424         * common/common-regcache.h (reg_buffer_common): New structure.
5425         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5426         (reg_buffer::raw_supply): Likewise.
5427         (reg_buffer::raw_supply_integer): Likewise.
5428         (reg_buffer::raw_supply_zeroed): Likewise.
5429         (reg_buffer::raw_collect): Likewise.
5430         (reg_buffer::raw_collect_integer): Likewise.
5431         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5432         (reg_buffer::raw_supply): Likewise.
5433         (reg_buffer::raw_supply_integer): Likewise.
5434         (reg_buffer::raw_supply_zeroed): Likewise.
5435         (reg_buffer::raw_collect): Likewise.
5436         (reg_buffer::raw_collect_integer): Likewise.
5437
5438 2018-06-10  Tom Tromey  <tom@tromey.com>
5439
5440         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5441         (class remote_state) <stop_reply_queue>: Now std::vector.
5442         (remote_state::~remote_state)
5443         (remote_target::stop_reply_queue_length): Update.
5444         (struct queue_iter_param, remove_child_of_pending_fork)
5445         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5446         (check_pending_event_prevents_wildcard_vcont_callback)
5447         (remove_stop_reply_for_inferior)
5448         (remove_stop_reply_of_remote_state)
5449         (remote_notif_remove_once_on_match)
5450         (stop_reply_match_ptid_and_ws)
5451         (remote_kill_child_of_pending_fork): Remove.
5452         (remote_target::remove_new_fork_children)
5453         (remote_target::check_pending_events_prevent_wildcard_vcont)
5454         (remote_target::discard_pending_stop_replies)
5455         (remote_target::discard_pending_stop_replies_in_queue)
5456         (remote_target::remote_notif_remove_queued_reply)
5457         (remote_target::queued_stop_reply)
5458         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5459         (remote_target::wait, remote_target::kill_new_fork_children)
5460         (remote_target::async): Update.
5461
5462 2018-06-10  Tom Tromey  <tom@tromey.com>
5463
5464         * record-full.c (record_full_arch_list_cleanups): Remove.
5465         (record_full_message): Use try/catch.
5466         (record_full_wait_cleanups): Remove.
5467         (record_full_wait_1): Use try/catch.
5468         (record_full_restore): Likewise.
5469
5470 2018-06-10  Tom Tromey  <tom@tromey.com>
5471
5472         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5473         declare VEC.  Add constructor.
5474         <in_target_beneath>: Now bool.
5475         (record_full_breakpoints): Now a std::vector, static.
5476         (record_full_sync_record_breakpoints)
5477         (record_full_init_record_breakpoints)
5478         (record_full_target::insert_breakpoint)
5479         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5480
5481 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5482
5483         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5484         * serial.c (serial_interface_lookup): Remove struct keyword.
5485
5486 2018-06-10  Tom Tromey  <tom@tromey.com>
5487
5488         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5489         method.
5490         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5491         a method.
5492         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5493         method.
5494         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5495         "beneath" as a method.
5496         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5497         Use "beneath" as a method.
5498
5499 2018-06-10  Tom Tromey  <tom@tromey.com>
5500
5501         * tracefile.c (struct trace_file_writer_deleter): New.
5502         <operator()>: Rename from trace_file_writer_xfree.
5503         (trace_file_writer_up): New typedef.
5504         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5505
5506 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5507
5508         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5509         <m_registers, m_register_status>: Change type to
5510         std::unique_ptr.
5511         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5512         XCNEWVEC.
5513
5514 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5515
5516         * common/common-regcache.h (enum register_status): Add
5517         underlying type "signed char".
5518         * regcache.h (reg_buffer) <m_register_status>: Change type to
5519         register_status *.
5520         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5521         register_status instead of signed char.
5522         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5523         (reg_buffer::get_register_status): Remove cast.
5524         (readable_regcache::raw_read): Remove cast.
5525         (readable_regcache::cooked_read): Remove cast.
5526
5527 2018-06-09  Tom Tromey  <tom@tromey.com>
5528
5529         * source.c (reverse_search_command, forward_search_command): Use
5530         scoped_fd.
5531
5532 2018-06-09  Tom Tromey  <tom@tromey.com>
5533
5534         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5535         (serial_ops_list): Now static, std::vector.
5536         (serial_interface_lookup, serial_add_interface): Update.
5537
5538 2018-06-09  Tom Tromey  <tom@tromey.com>
5539
5540         * dwarf2read.c (process_cu_includes): Update.
5541         (process_full_comp_unit): Update.
5542         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5543         std::vector.
5544
5545 2018-06-08  Paul Koning  <paul_koning@dell.com>
5546
5547         PR gdb/23252
5548
5549         * python/python.c (do_start_initialization):
5550         Avoid call to internal Python API.
5551         (init__gdb_module): New function.
5552
5553 2018-06-08  Gary Benson <gbenson@redhat.com>
5554
5555         * linux-thread-db.c (valprint.h): New include.
5556         (struct check_thread_db_info): New structure.
5557         (check_thread_db_on_load, tdb_testinfo): New static globals.
5558         (check_thread_db, check_thread_db_callback): New functions.
5559         (try_thread_db_load_1): Run integrity checks if requested.
5560         (maintenance_check_libthread_db): New function.
5561         (_initialize_thread_db): Register "maint check libthread-db"
5562         and "maint set/show check-libthread-db".
5563         * NEWS: Mention the above new commands.
5564
5565 2018-06-08  Tom Tromey  <tom@tromey.com>
5566
5567         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5568         now a method.
5569
5570 2018-06-08  Tom Tromey  <tom@tromey.com>
5571
5572         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5573
5574 2018-06-08  Tom Tromey  <tom@tromey.com>
5575
5576         * common/btrace-common.h (struct btrace_data): Add constructor,
5577         destructor, move assignment operator.
5578         <empty, clear, fini>: New methods.
5579         <format>: Initialize.
5580         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5581         (btrace_data_empty): Don't declare.
5582         * common/btrace-common.c (btrace_data_init): Remove.
5583         (btrace_data::fini): Rename from btrace_data_fini.
5584         (btrace_data::empty): Rename from btrace_data_empty.
5585         (btrace_data::clear): Rename from btrace_data_clear.  Return
5586         bool.
5587         * btrace.h (make_cleanup_btrace_data): Don't declare.
5588         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5589         (parse_xml_btrace): Update.
5590         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5591         (maint_btrace_clear_packet_history_cmd): Update.
5592
5593 2018-06-07  Pedro Alves  <palves@redhat.com>
5594
5595         * target.h (target_ops) <beneath>: Now a method.  All references
5596         updated.
5597         (class target_stack): New.
5598         * target.c (g_target_stack): New.
5599         (g_current_top_target): Delete.
5600         (current_top_target): Get the top target out of g_target_stack.
5601         (target_stack::push, target_stack::unpush): New.
5602         (push_target, unpush_target): Reimplement.
5603         (target_is_pushed): Reimplement in terms of g_target_stack.
5604         (target_ops::beneath, target_stack::find_beneath): New.
5605
5606 2018-06-07  Pedro Alves  <palves@redhat.com>
5607
5608         * target.h (find_target_beneath): Delete declaration.
5609         * target.c (find_target_beneath): Delete definition.
5610         * aix-thread.c: All callers of find_target_beneath adjusted to
5611         call target_ops::beneath instead.
5612         * bsd-uthread.c: Likewise.
5613         * linux-thread-db.c: Likewise.
5614         * ravenscar-thread.c: Likewise.
5615         * sol-thread.c: Likewise.
5616         * spu-multiarch.c: Likewise.
5617
5618 2018-06-07  Pedro Alves  <palves@redhat.com>
5619
5620         * target.h (target_ops) <beneath>: Now a method.  All references
5621         updated.
5622         (target_ops) <m_beneath>: New.
5623         * target.c (target_ops::beneath): New.
5624         * corelow.c: Adjust all references to target_ops::beneath.
5625         * linux-thread-db.c: Likewise.
5626         * make-target-delegates: Likewise.
5627         * record-btrace.c: Likewise.
5628         * record-full.c: Likewise.
5629         * remote.c: Likewise.
5630         * target.c: Likewise.
5631         * target-delegates.c: Regenerate.
5632
5633 2018-06-07  Pedro Alves  <palves@redhat.com>
5634
5635         * target.h (target_stack): Delete.
5636         (current_top_target): Declare function.
5637         * target.c (target_stack): Delete.
5638         (g_current_top_target): New.
5639         (current_top_target): New function.
5640         * auxv.c: Use current_top_target instead of target_stack
5641         throughout.
5642         * avr-tdep.c: Likewise.
5643         * breakpoint.c: Likewise.
5644         * corefile.c: Likewise.
5645         * elfread.c: Likewise.
5646         * eval.c: Likewise.
5647         * exceptions.c: Likewise.
5648         * frame.c: Likewise.
5649         * gdbarch-selftests.c: Likewise.
5650         * gnu-v3-abi.c: Likewise.
5651         * ia64-tdep.c: Likewise.
5652         * ia64-vms-tdep.c: Likewise.
5653         * infcall.c: Likewise.
5654         * infcmd.c: Likewise.
5655         * infrun.c: Likewise.
5656         * linespec.c: Likewise.
5657         * linux-tdep.c: Likewise.
5658         * minsyms.c: Likewise.
5659         * ppc-linux-nat.c: Likewise.
5660         * ppc-linux-tdep.c: Likewise.
5661         * procfs.c: Likewise.
5662         * regcache.c: Likewise.
5663         * remote.c: Likewise.
5664         * rs6000-tdep.c: Likewise.
5665         * s390-linux-nat.c: Likewise.
5666         * s390-tdep.c: Likewise.
5667         * solib-aix.c: Likewise.
5668         * solib-darwin.c: Likewise.
5669         * solib-dsbt.c: Likewise.
5670         * solib-spu.c: Likewise.
5671         * solib-svr4.c: Likewise.
5672         * solib-target.c: Likewise.
5673         * sparc-tdep.c: Likewise.
5674         * sparc64-tdep.c: Likewise.
5675         * spu-tdep.c: Likewise.
5676         * symfile.c: Likewise.
5677         * symtab.c: Likewise.
5678         * target-descriptions.c: Likewise.
5679         * target-memory.c: Likewise.
5680         * target.c: Likewise.
5681         * target.h: Likewise.
5682         * tracefile-tfile.c: Likewise.
5683         * tracepoint.c: Likewise.
5684         * valops.c: Likewise.
5685         * valprint.c: Likewise.
5686         * value.c: Likewise.
5687         * windows-tdep.c: Likewise.
5688         * mi/mi-main.c: Likewise.
5689
5690 2018-06-07  Tom Tromey  <tom@tromey.com>
5691
5692         * valprint.h (build_address_symbolic): Declare.
5693         * printcmd.c (print_address_symbolic): Update.
5694         (build_address_symbolic): Change "name" and "filename" to
5695         std::string.
5696         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5697         Update.
5698         * defs.h (build_address_symbolic): Remove declaration.
5699
5700 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5701
5702         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5703         (aarch64_vnv_type): Add function.
5704         (aarch64_pseudo_register_name): Add V regs for SVE.
5705         (aarch64_pseudo_register_type): Likewise.
5706         (aarch64_pseudo_register_reggroup_p): Likewise.
5707         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5708         (aarch64_pseudo_read_value): Add V regs for SVE.
5709         (aarch64_pseudo_write_2): Use V0 offset for SVE
5710         (aarch64_pseudo_write): Add V regs for SVE.
5711         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5712
5713 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5714
5715         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5716         (sve_vl_from_vq): Likewise.
5717
5718 2018-06-05  Tom Tromey  <tom@tromey.com>
5719
5720         * cli/cli-cmds.c (show_version): Update.
5721         * top.c (print_gdb_version): Add "interactive" parameter.
5722         Update.
5723         * main.c (captured_main_1): Update.
5724         * top.h (print_gdb_version): Add "interactive" parameter and a
5725         comment.
5726
5727 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5728
5729         * common/enum-flags.h: Add trailing semicolon to example in
5730         comment.
5731
5732 2018-06-05  Tom Tromey  <tom@tromey.com>
5733
5734         PR cli/12326:
5735         * NEWS: Add entry about pager.
5736         * utils.c (pagination_disabled_for_command): New global.
5737         (prompt_for_continue): Allow "c" response to prompt.
5738         (reinitialize_more_filter): Clear
5739         pagination_disabled_for_command.
5740         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5741
5742 2018-06-04  Tom Tromey  <tom@tromey.com>
5743
5744         * ada-lang.h (ada_lookup_symbol_list): Update.
5745         * ada-lang.c (resolve_subexp): Update.
5746         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5747         parameter.
5748         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5749         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5750         results parameter to std::vector.
5751         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5752         Update.
5753         * ada-exp.y (block_lookup): Update.
5754         (select_possible_type_sym): Change type of syms.  Remove nsyms
5755         parameter.
5756         (write_var_or_type, write_name_assoc): Update.
5757
5758 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5759
5760         * windows-nat.c (windows_nat_target::xfer_partial): Return
5761         TARGET_XFER_E_IO if we need to delegate to the target beneath
5762         but BENEATH is NULL.
5763
5764 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5765
5766         * Makefile.in (config.status): Add configure.nat as a
5767         dependency.
5768
5769 2018-06-04  Tom Tromey  <tom@tromey.com>
5770
5771         * cp-name-parser.y (cpname_state): Add method declarations.
5772         (HANDLE_QUAL): Update.
5773         (cpname_state::d_grab, cpname_state::fill_comp)
5774         (cpname_state::make_operator, cpname_state::make_dtor)
5775         (cpname_state::make_builtin_type, cpname_state::make_name)
5776         (cpname_state::d_qualify, cpname_state::d_int_type)
5777         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5778         (%union): Move earlier.
5779
5780 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5781
5782         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5783
5784 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5785
5786         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5787         (aarch64_pseudo_write_1): Likewise.
5788         (aarch64_pseudo_read_value): Use helper.
5789         (aarch64_pseudo_write): Likewise.
5790
5791 2018-06-04  Pedro Alves  <palves@redhat.com>
5792
5793         * darwin-nat.c (darwin_ops): Delete.
5794         (darwin_attach_pid): Use get_native_target.
5795
5796 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5797
5798         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5799         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5800
5801 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5802
5803         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5804         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5805         (aarch64_gdbarch_init): Check for SVE.
5806         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5807
5808 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5809
5810         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5811         * aarch64-tdep.h (aarch64_read_description): Likewise.
5812         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5813         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5814         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5815         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5816         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5817
5818 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5819
5820         * value.c (value_fetch_lazy_bitfield): New.
5821         (value_fetch_lazy_memory): New.
5822         (value_fetch_lazy_register): New.
5823         (value_fetch_lazy): Factor out to smaller functions.
5824
5825 2018-06-01  Tom Tromey  <tom@tromey.com>
5826
5827         * cp-name-parser.y (backslashable, represented): Now const.
5828
5829 2018-06-01  Tom Tromey  <tom@tromey.com>
5830
5831         * cp-name-parser.y: Include parser-defs.h.
5832         (parser_fprintf): Remove declaration.
5833
5834 2018-06-01  Tom Tromey  <tom@tromey.com>
5835
5836         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5837         %parse-param.
5838         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5839         (global_result): Remove globals.
5840         (struct cpname_state): New.
5841         (yyparse): Don't declare.
5842         (yylex, yyerror): Move declarations after %union.
5843         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5844         (make_name): Add state parameter.
5845         Update all callers.
5846         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5847         parameter.
5848         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5849         Update.
5850         (yylex): Add lvalp, state parameters.
5851         (yyerror): Add state parameter.
5852         (cp_demangled_name_to_comp): Update.
5853
5854 2018-06-01  Tom Tromey  <tom@tromey.com>
5855
5856         * cp-name-parser.y (parser_fprintf): Declare.
5857         (GDB_YY_REMAP_PREFIX): Define.
5858         Include yy-remap.h.  Don't redefine yy* identifiers.
5859
5860 2018-06-01  Tom Tromey  <tom@tromey.com>
5861
5862         * python/py-type.c (typy_legacy_template_argument): Update.
5863         * cp-support.h (cp_demangled_name_to_comp): Update.
5864         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5865         parameter to be a "std::string *".
5866         (main): Update.
5867
5868 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5869
5870         * ada-lex.l: Include "diagnostics.h" instead of
5871         "common/diagnostics.h".
5872         * unittests/environ-selftests.c: Likewise.
5873         * common/diagnostics.h: Moved to ../include.
5874
5875 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5876
5877         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5878         to language_mode_manual while calling breakpoint_re_set_one.
5879
5880 2018-06-01  Tom Tromey  <tom@tromey.com>
5881
5882         * valops.c (value_cast_structs, destructor_name_p): Update.
5883         * symtab.c (gdb_mangle_name): Update.
5884         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5885         Update.
5886         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5887         (pascal_object_print_value_fields, pascal_object_print_value):
5888         Update.
5889         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5890         * linespec.c (find_methods): Update.
5891         * gdbtypes.h (type_name_no_tag): Remove.
5892         (type_name_or_error): Rename from type_name_no_tag_or_error.
5893         * gdbtypes.c (type_name_no_tag): Remove.
5894         (type_name_or_error): Rename from type_name_no_tag_or_error.
5895         (lookup_struct_elt_type, check_typedef): Update.
5896         * expprint.c (print_subexp_standard): Update.
5897         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5898         * d-namespace.c (d_lookup_nested_symbol): Update.
5899         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5900         (cp_print_class_member): Update.
5901         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5902         * completer.c (add_struct_fields): Update.
5903         * c-typeprint.c (cp_type_print_derivation_info)
5904         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5905         Update.
5906         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5907         (ada_prefer_type, ada_is_exception_sym): Update.
5908
5909 2018-06-01  Tom Tromey  <tom@tromey.com>
5910
5911         * valops.c (enum_constant_from_type, value_namespace_elt)
5912         (value_maybe_namespace_elt): Update.
5913         * valarith.c (find_size_for_pointer_math): Update.
5914         * target-descriptions.c (make_gdb_type): Update.
5915         * symmisc.c (print_symbol): Update.
5916         * stabsread.c (define_symbol, read_type)
5917         (complain_about_struct_wipeout, add_undefined_type)
5918         (cleanup_undefined_types_1): Update.
5919         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5920         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5921         (rust_internal_print_type, rust_composite_type)
5922         (rust_evaluate_funcall, rust_evaluate_subexp)
5923         (rust_inclusive_range_type_p): Update.
5924         * python/py-type.c (typy_get_tag): Update.
5925         * p-typeprint.c (pascal_type_print_base): Update.
5926         * mdebugread.c (parse_symbol, parse_type): Update.
5927         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5928         Update.
5929         * guile/scm-type.c (gdbscm_type_tag): Update.
5930         * go-lang.c (sixg_string_p): Update.
5931         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5932         Update.
5933         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5934         (TYPE_TAG_NAME): Remove.
5935         * gdbtypes.c (type_name_no_tag): Simplify.
5936         (check_typedef, check_types_equal, recursive_dump_type)
5937         (copy_type_recursive, arch_composite_type): Update.
5938         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5939         in summary mode when needed.
5940         * eval.c (evaluate_funcall): Update.
5941         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5942         (process_structure_scope, read_enumeration_type)
5943         (read_namespace_type, read_module_type, determine_prefix): Update.
5944         * cp-support.c (inspect_type): Update.
5945         * coffread.c (process_coff_symbol, decode_base_type): Update.
5946         * c-varobj.c (c_is_path_expr_parent): Update.
5947         * c-typeprint.c (c_type_print_base_struct_union): Update.
5948         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5949         summary when using C language.
5950         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5951         (gen_maybe_namespace_elt): Update.
5952         * ada-lang.c (ada_type_name): Simplify.
5953         (empty_record, ada_template_to_fixed_record_type_1)
5954         (template_to_static_fixed_type)
5955         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5956
5957 2018-06-01  Tom Tromey  <tom@tromey.com>
5958
5959         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5960         c_print_type.
5961         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5962         (c_print_type): Update.
5963         (c_print_type): New overload.
5964         (c_type_print_varspec_prefix, c_type_print_args)
5965         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5966         (c_type_print_base_struct_union, c_type_print_base_1)
5967         (cp_type_print_method_args): Add "language" parameter.
5968         (c_type_print_base): Update.
5969         * c-lang.h (c_print_type): Add new overload.
5970
5971 2018-06-01  Tom Tromey  <tom@tromey.com>
5972
5973         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5974         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5975
5976 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5977
5978         * aarch64-tdep.c (aarch64_sve_register_names): New const
5979         var.
5980         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5981         (AARCH64_SVE_Z_REGS_NUM): New define.
5982         (AARCH64_SVE_P_REGS_NUM): Likewise.
5983         (AARCH64_SVE_NUM_REGS): Likewise.
5984
5985 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5986
5987         * nat/linux-ptrace.h [__alpha__]
5988         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5989         definitions.
5990
5991 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5992
5993         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5994         the endianness selected.
5995         * NEWS: Document `set endian auto' mode operation update.
5996
5997 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5998
5999         * Makefile.in: Add new header.
6000         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6001         (sve_vl_from_vg): Likewise.
6002         (sve_vq_from_vl): Likewise.
6003         (sve_vl_from_vq): Likewise.
6004         (sve_vq_from_vg): Likewise.
6005         (sve_vg_from_vq): Likewise.
6006         * configure.nat: Add new c file.
6007         * nat/aarch64-sve-linux-ptrace.c: New file.
6008         * nat/aarch64-sve-linux-ptrace.h: New file.
6009
6010 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6011
6012         * aarch64-linux-nat.c (aarch64_linux_read_description):
6013         Add parmeter zero.
6014         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6015         Likewise.
6016         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6017         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6018         (aarch64_gdbarch_init): Add parmeter zero.
6019         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6020         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6021         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6022         parmeter.
6023         * doc/gdb.texinfo: Describe SVE feature
6024         * features/aarch64-sve.c: New file.
6025
6026 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6027
6028         PR gdb/23210
6029         * gdbarch.sh (significant_addr_bit): Default to zero when
6030         not set by target architecture.
6031         * gdbarch.c: Re-generated.
6032         * utils.c (address_significant): Update.
6033
6034 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6035
6036         * stack.c (func_command): Remove trailing newline in call to error.
6037
6038 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6039
6040         * regcache.h (regcache_raw_collect): Remove, update callers to
6041         use regcache::raw_collect.
6042         * regcache.c (regcache_raw_collect): Remove.
6043
6044 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6045
6046         * regcache.h (regcache_raw_supply): Remove, update callers to
6047         use detached_regcache::raw_supply.
6048         * regcache.c (regcache_raw_supply): Remove.
6049
6050 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6051
6052         * regcache.h (regcache_cooked_write_part): Remove, update
6053         callers to use regcache::cooked_write_part.
6054         * regcache.c (regcache_cooked_write_part): Remove.
6055
6056 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6057
6058         * regcache.h (regcache_cooked_read_part): Remove, update callers
6059         to use readable_regcache::cooked_read_part.
6060         * regcache.c (regcache_cooked_read_part): Remove.
6061
6062 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6063
6064         * regcache.h (regcache_cooked_read_value): Remove, update
6065         callers to use readable_regcache::cooked_read_value.
6066         * regcache.c (regcache_cooked_read_value): Remove.
6067
6068 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6069
6070         * regcache.h (regcache_cooked_write): Remove, update callers to
6071         use regcache::cooked_write.
6072         * regcache.c (regcache_cooked_write): Remove.
6073
6074 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6075
6076         * regcache.h (regcache_invalidate): Remove, update callers to
6077         use detached_regcache::invalidate instead.
6078         * regcache.c (regcache_invalidate): Remove.
6079
6080 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6081
6082         * regcache.h (regcache_raw_write_part): Remove, update callers
6083         to use regcache::raw_write_part instead.
6084         * regcache.c (regcache_raw_write_part): Remove.
6085
6086 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6087
6088         * regcache.h (regcache_raw_read_part): Remove, update callers to
6089         use readable_regcache::raw_read_part instead.
6090         * regcache.c (regcache_raw_read_part): Remove.
6091
6092 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6093
6094         * regcache.h (regcache_cooked_read): Remove, update callers to
6095         use readable_regcache::cooked_read instead.
6096         * regcache.c (regcache_cooked_read): Remove.
6097
6098 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6099
6100         * regcache.h (regcache_raw_write): Remove, update callers to use
6101         regcache::raw_write instead.
6102         * regcache.c (regcache_raw_write): Remove.
6103
6104 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6105
6106         * regcache.h (regcache_raw_read): Remove, update callers to use
6107         readable_regcache::raw_read instead.
6108         * regcache.c (regcache_raw_read): Remove.
6109
6110 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6111
6112         * regcache.h (regcache_raw_update): Remove, update callers to
6113         use readable_regcache::raw_update instead.
6114         * regcache.c (regcache_raw_update): Remove.
6115
6116 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6117
6118         * regcache.h (regcache_register_status): Remove, update callers
6119         to use reg_buffer::get_register_status directly instead.
6120         * regcache.c (regcache_register_status): Remove.
6121
6122 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6123
6124         * regcache.h (regcache_get_ptid): Remove, update all callers to
6125         call regcache::ptid instead.
6126         * regcache.c (regcache_get_ptid): Remove.
6127
6128 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6129
6130         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6131
6132 2018-05-30  Pedro Alves  <palves@redhat.com>
6133
6134         * common/common-exceptions.h (exception_rethrow): Use
6135         ATTRIBUTE_NORETURN.
6136
6137 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6138
6139         * breakpoint.c (print_solib_event, check_status_catch_solib):
6140         Remove struct keyword in range-based for loops.
6141         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6142         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6143         Likewise.
6144         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6145         Likewise.
6146         * symfile.c (addr_info_make_relative): Likewise.
6147         * thread.c (value_in_thread_stack_temporaries): Likewise.
6148
6149 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6150
6151         PR gdb/16841
6152         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6153         aggregate type to get its real type before accessing it.
6154
6155 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6156
6157         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6158         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6159         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6160         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6161         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6162         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6163         * printcmd.c (info_address_command): Likewise.
6164
6165 2018-05-29  Tom Tromey  <tom@tromey.com>
6166
6167         * windows-nat.c (handle_exception): Update fall-through comment.
6168
6169 2018-05-29  Tom Tromey  <tom@tromey.com>
6170
6171         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6172         (struct program_space) <added_solibs>: Now a std::vector.
6173         * breakpoint.c (print_solib_event): Update.
6174         (check_status_catch_solib): Update.
6175         * progspace.c (clear_program_space_solib_cache): Update.
6176         * solib.c (update_solib_list): Update.
6177
6178 2018-05-29  Tom Tromey  <tom@tromey.com>
6179
6180         * python/py-type.c (typy_richcompare): Update.
6181         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6182         * gdbtypes.h (types_deeply_equal): Return bool.
6183         (types_equal): Likewise.
6184         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6185         declare VEC.
6186         (check_types_equal): Change worklist to std::vector.  Return
6187         bool.
6188         (struct type_equality_entry): Add constructor.
6189         (compare_maybe_null_strings): Return bool.
6190         (check_types_worklist): Return bool.  Change worklist to
6191         std::vector.
6192         (types_deeply_equal): Use std::vector.
6193         (types_equal): Return bool.
6194         (compare_maybe_null_strings): Simplify.
6195
6196 2018-05-29  Tom Tromey  <tom@tromey.com>
6197
6198         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6199
6200 2018-05-29  Tom Tromey  <tom@tromey.com>
6201
6202         * objc-lang.h: Don't include cp-support.h.
6203         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6204         declare VEC.
6205
6206 2018-05-27  Tom Tromey  <tom@tromey.com>
6207
6208         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6209
6210 2018-05-25  Tom Tromey  <tom@tromey.com>
6211
6212         * value.c (value::location): Initialize.
6213
6214 2018-05-25  Tom Tromey  <tom@tromey.com>
6215
6216         * dbxread.c (init_bincl_list): Remove.
6217         (bincl_list): Now a std::vector.
6218         (bincls_allocated, next_bincl): Remove.
6219         (free_bincl_list, do_free_bincl_list_cleanup)
6220         (make_cleanup_free_bincl_list): Remove.
6221         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6222         unique_xmalloc_ptr.
6223         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6224         (struct header_file_location): Add constructor.
6225         (add_bincl_to_list): Remove.
6226
6227 2018-05-25  Tom Tromey  <tom@tromey.com>
6228
6229         * tui/tui.c (tui_enable): Update.
6230         * mi/mi-interp.c (mi_interp::init): Update.
6231         * interps.h (class interp) <name>: New method.
6232         <m_name>: Rename from name.
6233         (~scoped_restore_interp): Update.
6234         * interps.c (interp::interp): Update.
6235         (interp_add, interp_set, interp_lookup_existing)
6236         (current_interp_named_p): Update.
6237
6238 2018-05-25  Tom Tromey  <tom@tromey.com>
6239
6240         * interps.c (interp_name): Remove.
6241         * mi/mi-interp.c (mi_interp::init): Update.
6242         * interps.h (interp_name): Remove.
6243         (~scoped_restore_interp): Update.
6244         * tui/tui.c (tui_enable): Update.
6245
6246 2018-05-25  Tom Tromey  <tom@tromey.com>
6247
6248         * utils.c (fputs_maybe_filtered): Update.
6249         * linespec.c (decode_line_full): Update.
6250         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6251         (mi_print_breakpoint_for_event, mi_solib_loaded)
6252         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6253         (mi_user_selected_context_changed): Update.
6254         * mi/mi-main.c (mi_execute_command): Update.
6255         * cli/cli-script.c (execute_control_command): Update.
6256         * python/python.c (execute_gdb_command): Update.
6257         * solib.c (info_sharedlibrary_command): Update.
6258         * interps.c (interp_ui_out): Remove.
6259         * interps.h (interp_ui_out): Remove.
6260
6261 2018-05-25  Tom Tromey  <tom@tromey.com>
6262
6263         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6264         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6265         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6266
6267 2018-05-25  Tom Tromey  <tom@tromey.com>
6268
6269         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6270         * interps.c (interp_exec): Use scoped_restore.
6271
6272 2018-05-25  Tom Tromey  <tom@tromey.com>
6273
6274         * remote.c (remote_target::remote_file_get): Use
6275         gdb::byte_vector.
6276         (remote_target::remote_file_put): Likewise.
6277
6278 2018-05-25  Tom Tromey  <tom@tromey.com>
6279
6280         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6281         a std::string.
6282         (get_pe_section_index, add_pe_exported_sym): Update.
6283         (read_pe_exported_syms): Use gdb::def_vector.
6284
6285 2018-05-25  Tom Tromey  <tom@tromey.com>
6286
6287         * frame.c (remove_prev_frame): Remove.
6288         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6289
6290 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6291
6292         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6293         Remove prototypes.
6294         * mips-linux-nat.c (supply_fpregset): Always call
6295         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6296         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6297         `mips_fill_fpregset'.
6298         * mips-linux-tdep.c (mips_supply_fpregset)
6299         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6300         (mips_fill_fpregset_wrapper): Remove functions.
6301         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6302         (mips_linux_fpregset): Remove variable.
6303         (mips_linux_iterate_over_regset_sections): Use
6304         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6305         (mips_linux_o32_sigframe_init): Remove comment.
6306
6307 2018-05-25  Pedro Alves  <palves@redhat.com>
6308
6309         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6310         (struct readahead_cache, struct packet_reg, struct
6311         remote_arch_state, class remote_state): Move higher up in the
6312         file.
6313         (remote_target::m_remote_state): Now an object instead of a pointer.
6314         (remote_target::get_remote_state): Adjust.
6315
6316 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6317
6318         * stack.c (select_and_print_frame): Delete.
6319         (struct function_bounds): Move struct within function.
6320         (func_command): Most content moved into new function
6321         find_frame_for_function, use new function, print result, add
6322         function comment.
6323         (find_frame_for_function): New function, now returns a result.
6324
6325 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6326
6327         * stack.c (iterate_over_block_arg_vars): Fix comment.
6328         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6329
6330 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6331
6332         PR gdb/23203
6333         * frame.c
6334         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6335         Define.
6336         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6337         Define.
6338         * frame.h (class scoped_restore_selected_frame): New class.
6339         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6340         of any exception, use scoped_restore_selected_frame to restore the
6341         frame instead.
6342
6343 2018-05-24  Pedro Alves  <palves@redhat.com>
6344
6345         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6346         override.
6347
6348 2018-05-23  Tom Tromey  <tom@tromey.com>
6349
6350         * complaints.c (struct complaints): Remove.
6351         (symfile_complaint_book): Remove.
6352         (series): New global.
6353         (complaint_internal): Update.
6354         (clear_complaints): Update.
6355
6356 2018-05-23  Tom Tromey  <tom@tromey.com>
6357
6358         * complaints.c (counters): New global.
6359         (struct complain): Remove.
6360         (struct complaints) <root>: Remove.
6361         (complaint_sentinel): Remove.
6362         (symfile_complaint_book): Update.
6363         (find_complaint) Remove.
6364         (complaint_internal, clear_complaints): Update.
6365
6366 2018-05-23  Tom Tromey  <tom@tromey.com>
6367
6368         * complaints.c (struct complain) <file, line>: Remove.
6369         (find_complaint): Remove file, line parameters.
6370         (complaint_internal): Update.
6371
6372 2018-05-23  Tom Tromey  <tom@tromey.com>
6373
6374         * complaints.c (vcomplaint): Remove.
6375         (complaint_internal) Merge in contents of vcomplaint.
6376
6377 2018-05-23  Tom Tromey  <tom@tromey.com>
6378
6379         * complaints.c (struct complaints) <explanation>: Remove.
6380         (symfile_explanations): Remove.
6381         (symfile_complaint_book): Update.
6382         (vcomplaint): Update.
6383         (struct explanation): Remove.
6384
6385 2018-05-23  Tom Tromey  <tom@tromey.com>
6386
6387         * complaints.c (symfile_complaints): Remove.
6388         (complaint_internal): Remove "complaints" parameter.
6389         (clear_complaints, vcomplaint): Remove "c" parameter.
6390         (get_complaints): Remove.
6391         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6392         (dwarf2_debug_line_missing_file_complaint)
6393         (dwarf2_debug_line_missing_end_sequence_complaint)
6394         (dwarf2_complex_location_expr_complaint)
6395         (dwarf2_const_value_length_mismatch_complaint)
6396         (dwarf2_section_buffer_overflow_complaint)
6397         (dwarf2_macro_malformed_definition_complaint)
6398         (dwarf2_invalid_attrib_class_complaint)
6399         (create_addrmap_from_index, dw2_symtab_iter_next)
6400         (dw2_expand_marked_cus)
6401         (dw2_debug_names_iterator::find_vec_in_debug_names)
6402         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6403         (create_debug_type_hash_table, init_cutu_and_read_dies)
6404         (partial_die_parent_scope, add_partial_enumeration)
6405         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6406         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6407         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6408         (create_cus_hash_table, create_dwp_hash_table)
6409         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6410         (dwarf2_rnglists_process, dwarf2_ranges_process)
6411         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6412         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6413         (handle_struct_member_die, process_structure_scope)
6414         (read_array_type, read_common_block, read_module_type)
6415         (read_tag_pointer_type, read_typedef, read_base_type)
6416         (read_subrange_type, load_partial_dies, partial_die_info::read)
6417         (partial_die_info::read, partial_die_info::read)
6418         (partial_die_info::read, read_checked_initial_length_and_offset)
6419         (dwarf2_string_attr, read_formatted_entries)
6420         (dwarf_decode_line_header)
6421         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6422         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6423         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6424         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6425         (get_signatured_type, get_DW_AT_signature_type)
6426         (decode_locdesc, file_file_name, consume_improper_spaces)
6427         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6428         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6429         (dwarf2_symbol_mark_computed, set_die_type)
6430         (read_attribute_value): Update.
6431         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6432         Update.
6433         * dbxread.c (unknown_symtype_complaint)
6434         (lbrac_mismatch_complaint, repeated_header_complaint)
6435         (set_namestring, function_outside_compilation_unit_complaint)
6436         (read_dbx_symtab, process_one_symbol): Update.
6437         * gdbtypes.c (stub_noname_complaint): Update.
6438         * windows-nat.c (handle_unload_dll): Update.
6439         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6440         (decode_base_type): Update.
6441         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6442         (eb_complaint, record_include_begin, record_include_end)
6443         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6444         (process_xcoff_symbol, read_symbol)
6445         (function_outside_compilation_unit_complaint)
6446         (scan_xcoff_symtab): Update.
6447         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6448         * buildsym.c (finish_block_internal, make_blockvector)
6449         (end_symtab_get_static_block, augment_type_symtab): Update.
6450         * dtrace-probe.c (dtrace_process_dof)
6451         (dtrace_static_probe_ops::get_probes): Update.
6452         * complaints.h (struct complaint): Don't declare.
6453         (symfile_complaints): Remove.
6454         (complaint_internal): Remove "complaints" parameter.
6455         (complaint): Likewise.
6456         (clear_complaints): Likewise.
6457         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6458         (reread_symbols): Update.
6459         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6460         (dwarf2_frame_cache, decode_frame_entry): Update.
6461         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6462         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6463         (info_selectors_command): Update.
6464         * macrotab.c (macro_include, check_for_redefinition)
6465         (macro_undef): Update.
6466         * objfiles.c (filter_overlapping_sections): Update.
6467         * stabsread.c (invalid_cpp_abbrev_complaint)
6468         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6469         (define_symbol, error_type, read_type, rs6000_builtin_type)
6470         (stabs_method_name_from_physname, read_member_functions)
6471         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6472         (attach_fields_to_type, complain_about_struct_wipeout)
6473         (read_range_type, read_args, common_block_start)
6474         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6475         Update.
6476         * mdebugread.c (index_complaint, unknown_ext_complaint)
6477         (basic_type_complaint, bad_tag_guess_complaint)
6478         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6479         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6480         (parse_procedure, parse_lines)
6481         (function_outside_compilation_unit_complaint)
6482         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6483         (bad_tag_guess_complaint, reg_value_complaint): Update.
6484         * cp-support.c (demangled_name_complaint): Update.
6485         * macroscope.c (sal_macro_scope): Update.
6486         * dwarf-index-write.c (class debug_names): Update.
6487
6488 2018-05-23  Tom Tromey  <tom@tromey.com>
6489
6490         * complaints.c (clear_complaints): Remove "noisy" parameter.
6491         * complaints.h (clear_complaints): Update.
6492         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6493         (reread_symbols): Update.
6494
6495 2018-05-23  Tom Tromey  <tom@tromey.com>
6496
6497         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6498         SUBSEQUENT_MESSAGE.
6499         (vcomplaint, clear_complaints): Update.
6500         (symfile_explanations): Remove some messages.
6501
6502 2018-05-23  Tom Tromey  <tom@tromey.com>
6503
6504         * complaints.c (internal_complaint): Remove.
6505         * complaints.h (internal_complaint): Remove.
6506
6507 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6508
6509         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6510
6511 2018-05-22  Pedro Alves  <palves@redhat.com>
6512
6513         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6514         (remote_fileio_badfd, remote_fileio_return_errno)
6515         (remote_fileio_return_success, remote_fileio_func_open)
6516         (remote_fileio_func_open, remote_fileio_func_close)
6517         (remote_fileio_func_read, remote_fileio_func_write)
6518         (remote_fileio_func_lseek, remote_fileio_func_rename)
6519         (remote_fileio_func_unlink, remote_fileio_func_stat)
6520         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6521         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6522         remote_target parameter.
6523         (remote_fio_func_map) <func>: Add remote_target parameter.
6524         (do_remote_fileio_request, remote_fileio_request):
6525         * remote-fileio.h (remote_fileio_request):
6526         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6527         remote_target parameter.
6528         (remote_notif_process, handle_notification): Adjust to pass down
6529         the remote.
6530         (remote_notif_state_allocate): Add remote_target parameter.  Save
6531         it.
6532         * remote-notif.h (struct remote_target): Forward declare.
6533         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6534         remote_target parameter.
6535         (struct remote_notif_state) <remote>: New field.
6536         (remote_notif_ack, remote_notif_parse): Add remote_target
6537         parameter.
6538         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6539         remote_target parameter.
6540         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6541         (threads_listing_context, rmt_thread_action, protocol_feature)
6542         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6543         (packet_result, struct threads_listing_context, remote_state):
6544         Move definitions and declarations higher up.
6545         (remote_target) <~remote_target>: Declare.
6546         (remote_download_command_source, remote_file_put, remote_file_get)
6547         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6548         (remote_hostio_pread_vFile, remote_hostio_send_command)
6549         (remote_hostio_set_filesystem, remote_hostio_open)
6550         (remote_hostio_close, remote_hostio_unlink, remote_state)
6551         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6552         (get_memory_write_packet_size, get_memory_read_packet_size)
6553         (append_pending_thread_resumptions, remote_detach_1)
6554         (append_resumption, remote_resume_with_vcont)
6555         (add_current_inferior_and_thread, wait_ns, wait_as)
6556         (process_stop_reply, remote_notice_new_inferior)
6557         (process_initial_stop_replies, remote_add_thread)
6558         (btrace_sync_conf, remote_btrace_maybe_reopen)
6559         (remove_new_fork_children, kill_new_fork_children)
6560         (discard_pending_stop_replies, stop_reply_queue_length)
6561         (check_pending_events_prevent_wildcard_vcont)
6562         (discard_pending_stop_replies_in_queue, stop_reply)
6563         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6564         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6565         (remote_interrupt_as, remote_interrupt_ns)
6566         (remote_get_noisy_reply, remote_query_attached)
6567         (remote_add_inferior, remote_current_thread, get_current_thread)
6568         (set_thread, set_general_thread, set_continue_thread)
6569         (set_general_process, write_ptid)
6570         (remote_unpack_thread_info_response, remote_get_threadinfo)
6571         (parse_threadlist_response, remote_get_threadlist)
6572         (remote_threadlist_iterator, remote_get_threads_with_ql)
6573         (remote_get_threads_with_qxfer)
6574         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6575         (get_offsets, remote_check_symbols, remote_supported_packet)
6576         (remote_query_supported, remote_packet_size)
6577         (remote_serial_quit_handler, remote_detach_pid)
6578         (remote_vcont_probe, remote_resume_with_hc)
6579         (send_interrupt_sequence, interrupt_query)
6580         (remote_notif_get_pending_events, fetch_register_using_p)
6581         (send_g_packet, process_g_packet, fetch_registers_using_g)
6582         (store_register_using_P, store_registers_using_G)
6583         (set_remote_traceframe, check_binary_download)
6584         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6585         (remote_xfer_live_readonly_partial, remote_read_bytes)
6586         (remote_send_printf, remote_flash_write, readchar)
6587         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6588         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6589         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6590         (extended_remote_disable_randomization, extended_remote_run)
6591         (send_environment_packet, extended_remote_environment_support)
6592         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6593         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6594         (packet_command): Now methods of ...
6595         (remote_target): ... this class.
6596         (m_remote_state) <remote_target>: New field.
6597         (struct remote_state) <stop_reply_queue,
6598         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6599         fields.
6600         (remote_state::remote_state): Allocate stop_reply_queue.
6601         (remote_state): Delete global.
6602         (get_remote_state_raw): Delete.
6603         (remote_target::get_remote_state): Allocate m_remote_state on
6604         demand.
6605         (get_current_remote_target): New.
6606         (remote_ops, extended_remote_ops): Delete.
6607         (wait_forever_enabled_p, remote_async_inferior_event_token):
6608         Delete, moved to struct remote_state.
6609         (remote_target::close): Delete self.  Destruction bits split to
6610         ...
6611         (remote_target::~remote_target): ... this.
6612         (show_memory_packet_size): Adjust to use
6613         get_current_remote_target.
6614         (struct protocol_feature) <func>: Add remote_target parameter.
6615         All callers adjusted.
6616         (curr_quit_handler_target): New.
6617         (remote_serial_quit_handler): Reimplement.
6618         (remote_target::open_1): Adjust to use get_current_remote_target.
6619         Heap-allocate remote_target/extended_remote_target instances.
6620         (vcont_builder::vcont_builder): Add remote_target parameter, and
6621         save it in m_remote.  All callers adjusted.
6622         (vcont_builder::m_remote): New field.
6623         (vcont_builder::restart, vcont_builder::flush)
6624         (vcont_builder::push_action): Use it.
6625         (remote_target::commit_resume): Use it.
6626         (struct queue_iter_param) <remote>: New field.
6627         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6628         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6629         (check_pending_event_prevents_wildcard_vcont_callback)
6630         (remote_target::check_pending_events_prevent_wildcard_vcont)
6631         (remote_target::discard_pending_stop_replies)
6632         (remote_target::discard_pending_stop_replies_in_queue)
6633         (remote_target::remote_notif_remove_queued_reply): Fill in
6634         'remote' field.
6635         (remote_notif_get_pending_events): New.
6636         (remote_target::readchar, remote_target::remote_serial_write):
6637         Save/restore curr_quit_handler_target.
6638         (putpkt): New.
6639         (kill_new_fork_children): Fill in 'remote' field.
6640         (packet_command): Use get_current_remote_target, defer to
6641         remote_target method of same name.
6642         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6643         parameter, and save it in m_remote.  All callers adjusted.
6644         (scoped_remote_fd::release): Use m_remote.
6645         (scoped_remote_fd::m_remote): New field.
6646         (remote_file_put, remote_file_get, remote_file_delete): Use
6647         get_current_remote_target, defer to remote_target method of same
6648         name.
6649         (remote_btrace_reset): Add remote_state paremeter.  Update all
6650         callers.
6651         (remote_async_inferior_event_handler). Pass down 'data'.
6652         (remote_new_objfile): Use get_current_remote_target.
6653         (remote_target::vcont_r_supported): New.
6654         (set_range_stepping): Use get_current_remote_target and
6655         remote_target::vcont_r_supported.
6656         (_initialize_remote): Don't allocate 'remote_state' and
6657         'stop_reply_queue' globals.
6658         * remote.h (struct remote_target): Forward declare.
6659         (getpkt, putpkt, remote_notif_get_pending_events): Add
6660         'remote_target' parameter.
6661
6662 2018-05-22  Pedro Alves  <palves@redhat.com>
6663
6664         * remote.c (vcont_builder): Now a class.  Make all data members
6665         private.
6666         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6667         Declare methods.
6668         (vcont_builder_restart): Rename to ...
6669         (vcont_builder::restart): ... this.
6670         (vcont_builder_flush): Rename to ...
6671         (vcont_builder::flush): ... this.
6672         (vcont_builder_push_action): Rename to ...
6673         (vcont_builder::push_action): ... this.
6674         (remote_target::commit_resume): Adjust.
6675
6676 2018-05-22  Pedro Alves  <palves@redhat.com>
6677
6678         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6679         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6680         (get_fixed_memory_packet_size): New.
6681         (get_memory_packet_size): Use it.
6682         (set_memory_packet_size): Don't override the config size with
6683         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6684         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6685         Don't refer to get_memory_packet_size if not connected to a remote
6686         target.  Show "(default)" if configured size is 0.
6687
6688 2018-05-22  Pedro Alves  <palves@redhat.com>
6689
6690         * remote.c (remote_target::mourn_inferior): Move
6691         discard_pending_stop_replies call here from ...
6692         (_initialize_remote): ... here.
6693
6694 2018-05-22  Pedro Alves  <palves@redhat.com>
6695
6696         * remote.c (compare_section_command): Remove set_general_process
6697         call.
6698
6699 2018-05-22  Pedro Alves  <palves@redhat.com>
6700
6701         * remote.c (struct packet_reg, struct remote_arch_state):
6702         Move higher up in the file.
6703         (remote_state) <m_arch_states>: Store remote_arch_state values
6704         instead of remote_arch_state pointers.
6705         (remote_state::get_remote_arch_state): Adjust.
6706
6707 2018-05-22  Pedro Alves  <palves@redhat.com>
6708
6709         * remote.c: Include <unordered_map>.
6710         (remote_state): Now a class.
6711         (remote_state) <get_remote_arch_state>: Declare method.
6712         <get_remote_arch_state>: New field.
6713         (remote_arch_state) <remote_arch_state>: Declare ctor.
6714         <regs>: Now a unique_ptr.
6715         (remote_gdbarch_data_handle): Delete.
6716         (get_remote_arch_state): Delete.
6717         (remote_state::get_remote_arch_state): New.
6718         (get_remote_state): Adjust to call remote_state's
6719         get_remote_arch_state method.
6720         (init_remote_state): Delete, bits factored out to ...
6721         (remote_arch_state::remote_arch_state): ... this new method.
6722         (get_remote_packet_size, get_memory_packet_size)
6723         (process_g_packet, remote_target::fetch_registers)
6724         (remote_target::prepare_to_store, store_registers_using_G)
6725         (remote_target::store_registers, remote_target::get_trace_status):
6726         Adjust to call remote_state's method.
6727         (_initialize_remote): Remove reference to
6728         remote_gdbarch_data_handle.
6729
6730 2018-05-22  Pedro Alves  <palves@redhat.com>
6731
6732         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6733         pread>: New method declarations.
6734         (remote_target::open_1): Adjust.
6735         (readahead_cache_invalidate): Rename to ...
6736         (readahead_cache::invalidate): ... this, and adjust to be a class
6737         method.
6738         (readahead_cache_invalidate_fd): Rename to ...
6739         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6740         class method.
6741         (remote_hostio_pwrite): Adjust.
6742         (remote_hostio_pread_from_cache): Rename to ...
6743         (readahead_cache::pread): ... this, and adjust to be a class
6744         method.
6745         (remote_hostio_close): Adjust.
6746
6747 2018-05-22  Pedro Alves  <palves@redhat.com>
6748
6749         * remote.c (remote_hostio_close_cleanup): Delete.
6750         (class scoped_remote_fd): New.
6751         (remote_file_put, remote_file_get): Use it.
6752
6753 2018-05-22  Pedro Alves  <palves@redhat.com>
6754
6755         (struct vCont_action_support): Use bool and initialize all fields.
6756         (struct readahead_cache): Initialize all fields.
6757         (remote_state): Use bool and initialize all fields.
6758         (remote_state::remote_state, remote_state::~remote_state): New.
6759         (new_remote_state): Delete.
6760         (_initialize_remote): Use new to allocate remote_state.
6761
6762 2018-05-22  Pedro Alves  <palves@redhat.com>
6763             張俊芝  <zjz@zjz.name>
6764
6765         PR gdb/22973
6766         * c-exp.y: Include "c-support.h".
6767         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6768         of tolower.  Use c_ident_is_alpha to scan names.
6769         * c-lang.c: Include "c-support.h".
6770         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6771         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6772         * c-support.h: New file, with bits factored out from ...
6773         * cp-name-parser.y: ... this file.
6774         Include "c-support.h".
6775         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6776         c-support.h and renamed.
6777         (symbol_end, yylex): Adjust.
6778
6779 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6780
6781         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6782         parameter type to CORE_ADDR.
6783         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6784         parameter type in declaration to CORE_ADDR.
6785         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6786         target_auxv_search to get AT_HWCAP and use the result to get the
6787         target description.
6788         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6789         to CORE_ADDR. Remove the cast of the return value to unsigned
6790         long. Fix error predicate of target_auxv_search.
6791         (ppc_linux_nat_target::read_description): Change the type of the
6792         hwcap variable to CORE_ADDR.
6793
6794 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6795
6796         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6797         if the size of fpscr is larger than 32 bits.
6798
6799 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6800
6801         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6802         (ppc32_linux_vsxregmap): New global.
6803         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6804         regcache_supply_regset, and regcache_collect_regset.
6805         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6806         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6807         (fetch_vsx_register, store_vsx_register): Remove.
6808         (fetch_vsx_registers): Add regno parameter. Get regset using
6809         ppc_linux_vsxregset. Use regset to supply registers.
6810         (store_vsx_registers): Add regno parameter. Get regset using
6811         ppc_linux_vsxregset. Use regset to collect registers.
6812         (fetch_register): Call fetch_vsx_registers instead of
6813         fetch_vsx_register.
6814         (store_register): Call store_vsx_registers instead of
6815         store_vsx_register.
6816         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6817         new regno parameter.
6818         (store_ppc_registers): Call store_vsx_registers with -1 for the
6819         new regno parameter.
6820         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6821         (ppc_collect_vsxregset): Remove.
6822
6823 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6824
6825         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6826         offset fields.
6827         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6828         for vector register offset fields.
6829         (ppc64_fbsd_reg_offsets): Likewise.
6830         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6831         to vector register offset fields.
6832         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6833         to vector register offset fields.
6834         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6835         vector register offset fields.
6836         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6837         initializers for vector register offset fields.
6838         (rs6000_aix64_reg_offsets): Likewise.
6839         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6840         (ppc_supply_vrregset): Remove.
6841         (ppc_collect_vrregset): Remove.
6842         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6843         (ppc_linux_vrregset) : New function.
6844         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6845         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6846         (ppc32_linux_vrregset): Remove.
6847         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6848         and use result instead of ppc32_linux_vrregset.
6849         (ppc32_linux_reg_offsets): Remove initializers for vector register
6850         offset fields.
6851         (ppc64_linux_reg_offsets): Likewise.
6852         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6853         * ppc-linux-nat.c: Include regset.h.
6854         (gdb_vrregset_t): Adjust comment to account for little-endian
6855         mode.
6856         (supply_vrregset, fill_vrregset): Remove.
6857         (fetch_altivec_register, store_altivec_register): Remove.
6858         (fetch_altivec_registers): Add regno parameter. Get regset using
6859         ppc_linux_vrregset. Use regset to supply registers.
6860         (store_altivec_registers): Add regno parameter. Get regset using
6861         ppc_linux_vrregset. Use regset to collect registers.
6862         (fetch_register): Call fetch_altivec_registers instead of
6863         fetch_altivec_register.
6864         (store_register): Call store_altivec_registers instead of
6865         store_altivec_register.
6866         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6867         the new regno parameter.
6868         (store_ppc_registers): Call store_altivec_registers with -1 for
6869         the new regno parameter.
6870
6871 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6872
6873         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6874         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6875         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6876         (gdb_vrregset_t): Change array type size to
6877         PPC_LINUX_SIZEOF_VRREGSET.
6878         (gdb_vsxregset_t): Change array type size to
6879         PPC_LINUX_SIZEOF_VSXREGSET.
6880         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6881         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6882         PPC_LINUX_SIZEOF_VSXREGSET.
6883
6884 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6885
6886         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6887         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6888         nat/ppc-linux.c.
6889         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6890         ppc_linux_target_wordsize with tid.
6891         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6892         wordsize with tid.
6893         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6894         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6895         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6896         tid parameter. Remove static specifier.
6897         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6898         (ppc_linux_target_wordsize): New declaration.
6899
6900 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6901
6902         * arch/ppc-linux-common.c: New file.
6903         * arch/ppc-linux-common.h: New file.
6904         * arch/ppc-linux-tdesc.h: New file.
6905         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6906         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6907         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6908         arch/ppc-linux-tdesc.h.
6909         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6910         arch/ppc-linux-tdesc.h.
6911         (ppc_linux_nat_target::read_description): Remove target
6912         description matching code. Fill a ppc_linux_features struct and
6913         call ppc_linux_match_description with it. Move comment about ISA
6914         2.05 to ppc-linux-common.c.
6915         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6916         arch/ppc-linux-tdesc.h.
6917         (ppc_linux_core_read_description): Remove target description
6918         matching code. Fill a ppc_linux_features struct and call
6919         ppc_linux_match_description with it.
6920         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6921         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6922         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6923         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6924         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6925         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6926         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6927         (tdesc_powerpc_e500l): Remove.
6928
6929 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6930
6931         * ada-lang.c (catch_assert_command): Pass empty string instead
6932         of NULL for excep_string argument.
6933
6934 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6935
6936         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6937         the width of the requested register exceeds the width of the
6938         `ptrace' data type.
6939
6940 2018-05-21  Tom Tromey  <tom@tromey.com>
6941
6942         * printcmd.c (output_command): Remove.
6943         (output_command_const): Rename to output_command.
6944         * valprint.h (output_command): Rename from output_command_const.
6945         * tracepoint.c (trace_dump_actions): Call output_command.
6946
6947 2018-05-21  Tom Tromey  <tom@tromey.com>
6948
6949         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6950         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6951         * ada-lang.h (create_ada_exception_catchpoint): Update.
6952         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6953         std::string.
6954         (create_excep_cond_exprs, ~ada_catchpoint)
6955         (should_stop_exception, print_one_exception)
6956         (print_mention_exception, print_recreate_exception): Update.
6957         (ada_get_next_arg): Remove.
6958         (catch_ada_exception_command_split): Use std::string.  Change type
6959         of "excep_string", "cond_string".
6960         (catch_ada_exception_command): Update.
6961         (create_ada_exception_catchpoint): Change type of excep_string.
6962         (ada_exception_sal): Remove excep_string parameter.
6963         (~ada_catchpoint): Remove.
6964
6965 2018-05-21  Tom Tromey  <tom@tromey.com>
6966
6967         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6968         cleanup.
6969
6970 2018-05-21  Tom Tromey  <tom@tromey.com>
6971
6972         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6973         Return unique_xmalloc_ptr.
6974         (print_it_exception): Update.
6975
6976 2018-05-21  Tom Tromey  <tom@tromey.com>
6977
6978         * tracepoint.c (trace_dump_actions): Use std::string.
6979
6980 2018-05-21  Tom Tromey  <tom@tromey.com>
6981
6982         * symfile.c (reread_symbols): Use std::string for original_name.
6983
6984 2018-05-21  Tom Tromey  <tom@tromey.com>
6985
6986         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6987         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6988         constructor.
6989
6990 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6991
6992         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6993         instance to...
6994         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6995         * objfiles.c (get_objfile_bfd_data): Allocate
6996         objfile_per_bfd_storage with obstack_new when allocating on
6997         obstack.
6998
6999 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7000
7001         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7002         OBSTACK_ZALLOC.
7003         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7004         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7005         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7006         (add_pending): Likewise.
7007         (parse_symbol): Likewise.
7008         (parse_partial_symbols): Likewise.
7009         (psymtab_to_symtab_1): Likewise.
7010         (new_psymtab): Likewise.
7011         (elfmdebug_build_psymtabs): Likewise.
7012         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7013         * objfiles.c (get_objfile_bfd_data): Likewise.
7014         (objfile_register_static_link): Likewise.
7015         * psymtab.c (allocate_psymtab): Likewise.
7016         * stabsread.c (read_member_functions): Likewise.
7017         * xcoffread.c (xcoff_end_psymtab): Likewise.
7018
7019 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7020
7021         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7022         compiler supports std::is_trivially_constructible.
7023         * common/poison.h: Include obstack.h.
7024         (IsMallocable): Define to is_trivially_constructible if the
7025         compiler supports it, define to true_type otherwise.
7026         (xobnew): New.
7027         (XOBNEW): Redefine.
7028         (xobnewvec): New.
7029         (XOBNEWVEC): Redefine.
7030         * gdb_obstack.h (obstack_zalloc): New.
7031         (OBSTACK_ZALLOC): Redefine.
7032         (obstack_calloc): New.
7033         (OBSTACK_CALLOC): Redefine.
7034         (obstack_new): New.
7035         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7036         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7037         gdbarch.c.
7038         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7039         obstack_calloc/obstack_zalloc.
7040         (gdbarch_obstack_zalloc): Remove.
7041         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7042
7043 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7044
7045         * stack.c (backtrace_command_1): Remove useless variable int i.
7046
7047 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7048
7049         * stack.c (print_frame_info): Fix comment.
7050
7051 2018-05-18  Tom Tromey  <tom@tromey.com>
7052
7053         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7054         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7055         (~dwarf2_per_objfile): Update
7056         (dwarf2_get_dwz_file): Use new.
7057         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7058         unique_ptr.
7059
7060 2018-05-18  Tom Tromey  <tom@tromey.com>
7061
7062         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7063         unique_ptr.
7064         * dwarf2read.c (struct dwp_file): Add constructor and
7065         initializers.
7066         (open_and_init_dwp_file): Return a unique_ptr.
7067         (dwarf2_per_objfile, create_dwp_hash_table)
7068         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7069         (lookup_dwo_unit_in_dwp): Update.
7070         (open_and_init_dwp_file, get_dwp_file): Update.
7071
7072 2018-05-18  Tom Tromey  <tom@tromey.com>
7073
7074         * dwarf2read.c (dwarf2_per_objfile): Update.
7075         (struct mapped_index): Add initializers.
7076         (dwarf2_read_index): Use new.
7077         (dw2_symtab_iter_init): Update.
7078         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7079         unique_ptr.
7080
7081 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7082
7083         * dwarf2read.c (mapped_index) <total_size>: Remove.
7084
7085 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7086
7087         * unittests/format_pieces-selftests.c (test_format_specifier):
7088         Add ARI comments.
7089
7090 2018-05-18  Tom Tromey  <tom@tromey.com>
7091
7092         * c-typeprint.c (maybe_print_hole): New function.
7093         (c_print_type_struct_field_offset): Update.
7094         (c_type_print_base_struct_union): Call maybe_print_hole.
7095
7096 2018-05-17  Keith Seitz  <keiths@redhat.com>
7097
7098         * breakpoint.c (build_bpstat_chain): New function, moved from
7099         bpstat_stop_status.
7100         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7101         If no stop chain is passed, call build_bpstat_chain to build it.
7102         * breakpoint.h (build_bpstat_chain): Declare.
7103         (bpstat_stop_status): Move documentation here from breakpoint.c.
7104         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7105         build the stop chain and pass it to skip_inline_frames.
7106         Pass this stop chain to bpstat_stop_status.
7107         * inline-frame.c: Include breakpoint.h.
7108         (stopped_by_user_bp_inline_frame): New function.
7109         (skip_inline_frames): Add parameter `stop_chain'.
7110         Move documention to inline-frame.h.
7111         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7112         whether the frame should be elided.
7113         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7114         Add moved documentation and update for new parameter.
7115
7116 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7117
7118         PR cli/14975
7119         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7120         unittests/format_pieces-selftests.c.
7121         * common/format.h (format_piece) <operator==>: New.
7122         (format_pieces) <operator[]>: Remove.
7123         * common/format.c (format_pieces::format_pieces): Handle \e.
7124         * unittests/format_pieces-selftests.c: New.
7125
7126 2018-05-17  Tom Tromey  <tom@tromey.com>
7127
7128         PR symtab/23010:
7129         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7130         (dw2_instantiate_symtab): Add skip_partial parameter.
7131         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7132         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7133         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7134         (dw2_expand_symtabs_matching_one)
7135         (dw2_find_pc_sect_compunit_symtab)
7136         (dw2_debug_names_lookup_symbol)
7137         (dw2_debug_names_expand_symtabs_for_function): Update.
7138         (init_cutu_and_read_dies): Add skip_partial parameter.
7139         (process_psymtab_comp_unit, build_type_psymtabs_1)
7140         (process_skeletonless_type_unit, load_partial_comp_unit)
7141         (psymtab_to_symtab_1): Update.
7142         (load_full_comp_unit): Add skip_partial parameter.
7143         (process_imported_unit_die, dwarf2_read_addr_index)
7144         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7145         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7146         (read_signatured_type): Update.
7147
7148 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7149
7150         * value.c (release_value): Remove unused variable.
7151         (record_latest_value): Likewise.
7152         (access_value_history): Likewise.
7153         (preserve_values): Likewise.
7154
7155 2018-05-17  Tom Tromey  <tom@tromey.com>
7156
7157         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7158         Initialize.
7159
7160 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7161
7162         PR gdb/22286
7163         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7164         Also handle registers whose width is not a multiple of
7165         PTRACE_TYPE_RET.
7166         (linux_nat_trad_target::store_register): Likewise.
7167
7168 2018-05-16  Tom Tromey  <tom@tromey.com>
7169
7170         * gdbcore.h (core_bfd): Redefine.
7171         * corelow.c (core_target::close): Update.
7172         (core_target_open): Update.
7173         * progspace.h (struct program_space) <cbfd>: Now a
7174         gdb_bfd_ref_ptr.
7175
7176 2018-05-16  Tom Tromey  <tom@tromey.com>
7177
7178         PR cli/19551:
7179         * symfile-add-flags.h (enum symfile_add_flags)
7180         <SYMFILE_NOT_FILENAME>: New constant.
7181         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7182         objfile name from BFD.
7183         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7184         * minidebug.c (find_separate_debug_file_in_section): Put
7185         ".gnu_debugdata" into BFD's file name.
7186
7187 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7188
7189         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7190         Remove.
7191
7192 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7193
7194         PR binutils/21446
7195         * aarch64-tdep.c (aarch64_analyze_prologue,
7196         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7197         Indicate not interested in errors.
7198
7199 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7200
7201         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7202         Supply the MIPS_ZERO_REGNUM register.
7203
7204 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7205
7206         * mips-tdep.c (mask_address_var): Make variable static.
7207
7208 2018-05-14  Tom Tromey  <tom@tromey.com>
7209
7210         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7211
7212 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7213
7214         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7215         FXSAVE_ADDR for the mxcsr register.
7216
7217 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7218
7219         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7220
7221 2018-05-11  Pedro Alves  <palves@redhat.com>
7222
7223         * corelow.c (core_target) <core_target>: No longer inline.
7224         Initialize m_core_gdbarch, m_core_vec and build the section table
7225         here.
7226         <~core_target>: New.
7227         <core_gdbarch, get_core_register_section>: New methods.
7228         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7229         factored out from ...
7230         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7231         (core_ops): Delete.
7232         (sniff_core_bfd): Add gdbarch parameter.
7233         (core_close): Delete, merged into ...
7234         (core_target::close): ... here.  Delete self.
7235         (core_close_cleanup): Delete.
7236         (core_target_open): Allocate a core_target on the heap.  Use a
7237         unique_ptr instead of a cleanup.  Bits moved into the core_target
7238         ctor.  Adjust to use core_target methods instead of globals.
7239         (get_core_register_section): Rename to ...
7240         (core_target::get_core_register_section): ... this and adjust.
7241         (struct get_core_registers_cb_data): New.
7242         (get_core_registers_cb): Use it.  Use bool.
7243         (core_target::fetch_registers, core_target::files_info)
7244         (core_target::xfer_partial, core_target::read_description)
7245         (core_target::pid_to, core_target::thread_name): Adjust to
7246         reference class fields instead of globals.
7247         * target.h (struct target_ops_deleter, target_ops_up): New.
7248
7249 2018-05-11  Pedro Alves  <palves@redhat.com>
7250
7251         * corefile.c (core_file_command): Move to corelow.c.
7252         * corelow.c (the_core_target): Delete.
7253         (core_file_command): Moved from corefile.c.  Check exec_bfd
7254         instead of the_core_target.  Use target_detach instead of calling
7255         into the_core_target directly.
7256         (maybe_say_no_core_file_now): New.
7257         (core_target::detach): Use it.
7258         (_initialize_corelow): Remove references to the_core_target.
7259         * gdbcore.h (the_core_target): Delete.
7260
7261 2018-05-11  Tom Tromey  <tromey@redhat.com>
7262             Pedro Alves  <palves@redhat.com>
7263
7264         * corefile.c (core_bfd): Remove.
7265         * gdbcore.h (core_bfd): Now a macro.
7266         * progspace.h (struct program_space) <cbfd>: New field.
7267
7268 2018-05-11  Tom Tromey  <tom@tromey.com>
7269
7270         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7271         gdb::def_vector.
7272
7273 2018-05-10  Tom Tromey  <tom@tromey.com>
7274
7275         * configure: Rebuild.
7276         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7277
7278 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7279
7280         PR server/23158:
7281         * regformats/regdat.sh: Adjust script, following the addition
7282         of the new expedite_regs parameter to init_target_desc.
7283
7284 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7285     
7286         PR gdb/23127
7287         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7288         set_gdbarch_significant_addr_bit.
7289         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7290         set_gdbarch_significant_addr_bit.
7291         * utils.c (address_significant): Update to sign extend addr.
7292
7293 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7294
7295         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7296         (xtensa_linux_init_abi): Limit tdep->num_regs by
7297         tdep->num_nopriv_regs.
7298         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7299         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7300         not initialized.
7301
7302 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7303
7304         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7305
7306 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7307
7308         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7309         (I387_MXCSR_INIT_VAL): New constant.
7310         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7311         buffer if it was supplied by the inferior.
7312         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7313         (i387_xsave_get_clear_bv): New function.
7314         (i387_supply_xsave): Only read x87 control registers from the
7315         xsave buffer if the feature is enabled, and the state will have
7316         been written, otherwise, provide a suitable default.
7317         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7318         including x87 control registers.  Update control registers if they
7319         have changed from the default value, and mark features as enabled
7320         as required.
7321         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7322
7323 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7324
7325         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7326
7327 2018-05-07  Tom Tromey  <tom@tromey.com>
7328
7329         * configure: Rebuild.
7330         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7331
7332 2018-05-07  Tom Tromey  <tom@tromey.com>
7333
7334         PR tdep/20362:
7335         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7336         bit.  Use correct value for VDIV.
7337
7338 2018-05-04  Tom Tromey  <tom@tromey.com>
7339
7340         * configure: Rebuild.
7341         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7342
7343 2018-05-04  Tom Tromey  <tom@tromey.com>
7344
7345         * linux-record.c (record_linux_system_call) <case
7346         RECORD_SYS_RECVFROM>: Add "break".
7347
7348 2018-05-04  Tom Tromey  <tom@tromey.com>
7349
7350         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7351         Add missing "break".
7352         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7353         Add missing "break".
7354
7355 2018-05-04  Tom Tromey  <tom@tromey.com>
7356
7357         * rs6000-tdep.c (ppc_process_record_op4)
7358         (ppc_process_record_op63): Add fall-through comment.
7359
7360 2018-05-04  Tom Tromey  <tom@tromey.com>
7361
7362         * i386-tdep.c (i386_process_record): Add fall-through comment.
7363
7364 2018-05-04  Tom Tromey  <tom@tromey.com>
7365
7366         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7367         comment.
7368
7369 2018-05-04  Tom Tromey  <tom@tromey.com>
7370
7371         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7372         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7373         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7374         comment.
7375         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7376         comment.
7377         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7378         comment.
7379
7380 2018-05-04  Tom Tromey  <tom@tromey.com>
7381
7382         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7383
7384 2018-05-04  Tom Tromey  <tom@tromey.com>
7385
7386         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7387         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7388         * symfile.c (section_is_mapped): Fix fall-through comment.
7389         * stabsread.c (define_symbol, read_member_functions): Fix
7390         fall-through comment.
7391         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7392         comment.
7393         * remote.c (remote_wait_as): Fix fall-through comment.
7394         * p-exp.y (yylex): Fix fall-through comment.
7395         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7396         comment.
7397         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7398         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7399         * jv-exp.y (yylex): Fix fall-through comment.
7400         * go-exp.y (lex_one_token): Fix fall-through comment.
7401         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7402         fall-through comment.
7403         * f-exp.y (yylex): Fix fall-through comment.
7404         * dwarf2read.c (process_die): Fix fall-through comments.
7405         * dbxread.c (process_one_symbol): Fix fall-through comment.
7406         * d-exp.y (lex_one_token): Fix fall-through comment.
7407         * cp-name-parser.y (yylex): Fix fall-through comment.
7408         * coffread.c (coff_symtab_read): Fix fall-through comment.
7409         * c-exp.y (lex_one_token): Fix fall-through comment.
7410         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7411         comment.
7412         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7413         comment.
7414
7415 2018-05-04  Tom Tromey  <tom@tromey.com>
7416
7417         PR python/22730:
7418         * NEWS: Mention gdb.execute change.
7419         * gdbcmd.h (execute_control_command): Don't declare.
7420         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7421         execute_control_commands, execute_control_commands_to_string.
7422         * cli/cli-script.h (execute_control_commands)
7423         (execute_control_commands_to_string): Declare.
7424         (execute_control_command): Add from_tty parameter.
7425         * cli/cli-script.c (execute_control_commands)
7426         (execute_control_commands_to_string): New functions.
7427         (execute_user_command): Use execute_control_commands.
7428         (execute_control_command_1): Add "from_tty" parameter.  Update.
7429         (execute_control_command): Likewise.
7430
7431 2018-05-04  Tom Tromey  <tom@tromey.com>
7432
7433         PR python/22731:
7434         * NEWS: Mention that breakpoint commands are writable.
7435         * python/py-breakpoint.c (bppy_set_commands): New function.
7436         (breakpoint_object_getset) <"commands">: Use it.
7437
7438 2018-05-04  Tom Tromey  <tom@tromey.com>
7439
7440         * tracepoint.c (actions_command): Update.
7441         * mi/mi-cmd-break.c (mi_command_line_array)
7442         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7443         (mi_read_next_line): Remove.
7444         (mi_cmd_break_commands): Update.
7445         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7446         function_view.
7447         * cli/cli-script.c (get_command_line): Update.
7448         (process_next_line): Use function_view.  Constify.
7449         (recurse_read_control_structure, read_command_lines)
7450         (read_command_lines_1): Change argument types to function_view.
7451         (do_define_command, document_command): Update.
7452         * breakpoint.h (check_tracepoint_command): Don't declare.
7453         * breakpoint.c (check_tracepoint_command): Remove.
7454         (commands_command_1, create_tracepoint_from_upload): Update.
7455
7456 2018-05-04  Tom Tromey  <tom@tromey.com>
7457
7458         PR gdb/11750:
7459         * cli/cli-script.h (enum command_control_type) <define_control>:
7460         New constant.
7461         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7462         (build_command_line, execute_control_command_1)
7463         (process_next_line): Likewise.
7464         (do_define_command): New function, extracted from define_command.
7465         (define_command): Use it.
7466
7467 2018-05-04  Tom Tromey  <tom@tromey.com>
7468
7469         * tracepoint.c (actions_command): Update.
7470         * cli/cli-script.h (read_command_lines): Update.
7471         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7472         (MAX_TMPBUF): Remove define.
7473         (define_command): Use string_printf.
7474         (document_command): Likewise.
7475         * breakpoint.c (commands_command_1): Update.
7476
7477 2018-05-04  Tom Tromey  <tom@tromey.com>
7478
7479         * top.c (execute_command): Update.
7480         * cli/cli-script.h (print_command_lines): Now varargs.
7481         * cli/cli-script.c (print_command_lines): Now varargs.
7482         (execute_control_command_1) <case while_control, case if_control>:
7483         Update.
7484
7485 2018-05-04  Tom Tromey  <tom@tromey.com>
7486
7487         * tracepoint.c (all_tracepoint_actions): Rename from
7488         all_tracepoint_actions_and_cleanup.  Change return type.
7489         (actions_command, encode_actions_1, encode_actions)
7490         (trace_dump_actions, tdump_command): Update.
7491         * remote.c (remote_download_command_source): Update.
7492         * python/python.c (gdbpy_eval_from_control_command)
7493         (python_command, python_interactive_command): Update.
7494         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7495         * guile/guile.c (guile_command)
7496         (gdbscm_eval_from_control_command, guile_command): Update.
7497         * compile/compile.c (compile_code_command)
7498         (compile_print_command, compile_to_object): Update.
7499         * cli/cli-script.h (struct command_lines_deleter): New.
7500         (counted_command_line): New typedef.
7501         (struct command_line): Add constructor, destructor.
7502         <body_list>: Remove.
7503         <body_list_0, body_list_1>: New members.
7504         (command_line_up): Remove typedef.
7505         (read_command_lines, read_command_lines_1, get_command_line):
7506         Update.
7507         (copy_command_lines): Don't declare.
7508         * cli/cli-script.c (build_command_line): Use "new".
7509         (get_command_line): Return counted_command_line.
7510         (print_command_lines, execute_user_command)
7511         (execute_control_command_1, while_command, if_command): Update.
7512         (realloc_body_list): Remove.
7513         (process_next_line, recurse_read_control_structure): Update.
7514         (read_command_lines, read_command_lines_1): Return counted_command_line.
7515         (free_command_lines): Use "delete".
7516         (copy_command_lines): Remove.
7517         (define_command, document_command, show_user_1): Update.
7518         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7519         a counted_command_line.
7520         * breakpoint.h (counted_command_line): Remove typedef.
7521         (breakpoint_set_commands): Update.
7522         * breakpoint.c (check_no_tracepoint_commands)
7523         (validate_commands_for_breakpoint): Update.
7524         (breakpoint_set_commands): Change commands to be a
7525         counted_command_line.
7526         (commands_command_1, update_dprintf_command_list)
7527         (create_tracepoint_from_upload): Update.
7528
7529 2018-05-04  Tom Tromey  <tom@tromey.com>
7530
7531         * cli/cli-decode.h (cmd_list_element): New constructor.
7532         (~cmd_list_element): New destructor.
7533         (struct cmd_list_element): Add initializers.
7534         * cli/cli-decode.c (do_add_cmd): Use "new".
7535         (delete_cmd): Use "delete".
7536
7537 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7538             Pedro Alves <palves@redhat.com>
7539
7540         PR breakpoints/19806 and support for PR external/20207.
7541         * NEWS: Mention Aarch64 watchpoint improvements.
7542         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7543         watchpoints and PR external/20207 watchpoints.
7544         * nat/aarch64-linux-hw-point.c
7545         (kernel_supports_any_contiguous_range): New.
7546         (aarch64_watchpoint_offset): New.
7547         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7548         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7549         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7550         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7551         next_addr_orig_p.  Support PR external/20207 watchpoints.
7552         (aarch64_downgrade_regs): New.
7553         (aarch64_dr_state_insert_one_point): New parameters offset and
7554         addr_orig.
7555         (aarch64_dr_state_remove_one_point): Likewise.
7556         (aarch64_handle_breakpoint): Update caller.
7557         (aarch64_handle_aligned_watchpoint): Likewise.
7558         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7559         aligned_offset.
7560         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7561         aarch64_downgrade_regs.
7562         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7563         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7564         (DR_CONTROL_MASK): ... this.
7565         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7566         (unsigned int aarch64_watchpoint_offset): New prototype.
7567         (aarch64_linux_set_debug_regs): Remove const from state.
7568         * utils.c (align_up, align_down): Move to ...
7569         * common/common-utils.c (align_up, align_down): ... here.
7570         * utils.h (align_up, align_down): Move to ...
7571         * common/common-utils.h (align_up, align_down): ... here.
7572
7573 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7574
7575         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7576         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7577         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7578         Re-implement to match the ABI as summarized in GCC's
7579         gcc/config/sparc/sparc.c.  All callers updated.
7580         (sparc32_store_arguments): Remove assertion.
7581
7582 2018-05-04  Tom Tromey  <tom@tromey.com>
7583
7584         * printcmd.c: Don't include tui.h.
7585         (decode_format): Use skip_spaces.
7586
7587 2018-05-04  Tom Tromey  <tom@tromey.com>
7588
7589         PR gdb/22619:
7590         * printcmd.c (last_count): New global.
7591         (x_command): Use saved count when repeating.
7592
7593 2018-05-04  Tom Tromey  <tom@tromey.com>
7594
7595         * nto-procfs.c (do_closedir_cleanup): Remove.
7596         (procfs_pidlist): Use gdb_dir_up.
7597         * procfs.c (do_closedir_cleanup): Remove.
7598         (proc_update_threads): Use gdb_dir_up.
7599         * common/filestuff.h (struct gdb_dir_deleter): New.
7600         (gdb_dir_up): New typedef.
7601
7602 2018-05-04  Tom Tromey  <tom@tromey.com>
7603
7604         * ada-lang.c (print_mention_exception): Use std::string.
7605
7606 2018-05-04  Tom Tromey  <tom@tromey.com>
7607
7608         * ada-lang.c (create_excep_cond_exprs): Update.
7609         (ada_exception_catchpoint_cond_string): Use std::string.
7610
7611 2018-05-04  Tom Tromey  <tom@tromey.com>
7612
7613         * ada-lang.c (xget_renaming_scope): Return std::string.
7614         (old_renaming_is_invisible): Update.
7615
7616 2018-05-04  Tom Tromey  <tom@tromey.com>
7617
7618         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7619         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7620
7621 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7622
7623         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7624
7625 2018-05-04  Tom Tromey  <tom@tromey.com>
7626
7627         * remote.c (remote_query_supported_append): Change type.
7628         (remote_check_symbols): Update.
7629
7630 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7631
7632         PR gdb/11420
7633         * configure.ac: Prepend libpython.
7634         * python/python-config.py: Likewise.
7635         * configure: Regenerate.
7636
7637 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7638
7639         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7640
7641 2018-05-03  Pedro Alves  <palves@redhat.com>
7642
7643         * s390-linux-nat.c
7644         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7645         override.  Write 'true' instead of '1'.
7646         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7647         declaration.
7648
7649 2018-05-02  Pedro Alves  <palves@redhat.com>
7650
7651         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7652         add_inf_child_target.
7653         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7654         add_inf_child_target.
7655         * aix-thread.c (aix_thread_target_info): New.
7656         (aix_thread_target) <shortname, longname, doc>: Delete.
7657         <info>: New.
7658         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7659         add_inf_child_target.
7660         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7661         add_inf_child_target.
7662         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7663         add_inf_child_target.
7664         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7665         add_inf_child_target.
7666         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7667         add_inf_child_target.
7668         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7669         add_inf_child_target.
7670         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7671         add_inf_child_target.
7672         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7673         add_inf_child_target.
7674         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7675         add_inf_child_target.
7676         * bfd-target.c (target_bfd_target_info): New.
7677         (target_bfd) <shortname, longname, doc>: Delete.
7678         <info>: New.
7679         * bsd-kvm.c (bsd_kvm_target_info): New.
7680         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7681         <info>: New.
7682         (bsd_kvm_target::open): Rename to ...
7683         (bsd_kvm_target_open): ... this.  Adjust.
7684         * bsd-uthread.c (bsd_uthread_target_info): New.
7685         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7686         <info>: New.
7687         * corefile.c (core_file_command): Adjust.
7688         * corelow.c (core_target_info): New.
7689         (core_target) <shortname, longname, doc>: Delete.
7690         <info>: New.
7691         (core_target::open): Rename to ...
7692         (core_target_open): ... this.  Adjust.
7693         * ctf.c (ctf_target_info): New.
7694         (ctf_target) <shortname, longname, doc>: Delete.
7695         <info>: New.
7696         (ctf_target::open): Rename to ...
7697         (ctf_target_open): ... this.
7698         (_initialize_ctf): Adjust.
7699         * exec.c (exec_target_info): New.
7700         (exec_target) <shortname, longname, doc>: Delete.
7701         <info>: New.
7702         (exec_target::open): Rename to ...
7703         (exec_target_open): ... this.
7704         * gdbcore.h (core_target_open): Declare.
7705         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7706         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7707         add_inf_child_target.
7708         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7709         add_inf_child_target.
7710         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7711         add_inf_child_target.
7712         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7713         add_inf_child_target.
7714         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7715         add_inf_child_target.
7716         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7717         add_inf_child_target.
7718         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7719         add_inf_child_target.
7720         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7721         add_inf_child_target.
7722         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7723         add_inf_child_target.
7724         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7725         add_inf_child_target.
7726         * inf-child.c (inf_child_target_info): New.
7727         (inf_child_target::info): New.
7728         (inf_child_open_target): Remove 'target' parameter.  Use
7729         get_native_target instead.
7730         (inf_child_target::open): Delete.
7731         (add_inf_child_target): New.
7732         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7733         Delete.
7734         <info>: New.
7735         (add_inf_child_target): Declare.
7736         (inf_child_open_target): Declare.
7737         * linux-thread-db.c (thread_db_target_info): New.
7738         (thread_db_target) <shortname, longname, doc>: Delete.
7739         <info>: New.
7740         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7741         add_inf_child_target.
7742         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7743         add_inf_child_target.
7744         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7745         add_inf_child_target.
7746         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7747         add_inf_child_target.
7748         * make-target-delegates (print_class): Adjust.
7749         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7750         add_inf_child_target.
7751         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7752         add_inf_child_target.
7753         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7754         add_inf_child_target.
7755         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7756         add_inf_child_target.
7757         * nto-procfs.c (nto_native_target_info): New.
7758         (nto_procfs_target_native) <shortname, longname, doc>:
7759         Delete.
7760         <info>: New.
7761         (nto_procfs_target_info): New.
7762         (nto_procfs_target_procfs) <shortname, longname, doc>:
7763         Delete.
7764         <info>: New.
7765         (init_procfs_targets): Adjust.
7766         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7767         add_inf_child_target.
7768         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7769         add_inf_child_target.
7770         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7771         add_inf_child_target.
7772         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7773         add_inf_child_target.
7774         * ravenscar-thread.c (ravenscar_target_info): New.
7775         (ravenscar_thread_target) <shortname, longname, doc>:
7776         Delete.
7777         <info>: New.
7778         * record-btrace.c (record_btrace_target_info):
7779         (record_btrace_target) <shortname, longname, doc>: Delete.
7780         <info>: New.
7781         (record_btrace_target::open): Rename to ...
7782         (record_btrace_target_open): ... this.  Adjust.
7783         * record-full.c (record_longname, record_doc): New.
7784         (record_full_base_target) <shortname, longname, doc>: Delete.
7785         <info>: New.
7786         (record_full_target_info): New.
7787         (record_full_target): <shortname>: Delete.
7788         <info>: New.
7789         (record_full_core_open_1, record_full_open_1): Update comments.
7790         (record_full_base_target::open): Rename to ...
7791         (record_full_open): ... this.
7792         (cmd_record_full_restore): Update.
7793         (_initialize_record_full): Update.
7794         * remote-sim.c (remote_sim_target_info): New.
7795         (gdbsim_target) <shortname, longname, doc>: Delete.
7796         <info>: New.
7797         (gdbsim_target::open): Rename to ...
7798         (gdbsim_target_open): ... this.
7799         (_initialize_remote_sim): Adjust.
7800         * remote.c (remote_doc): New.
7801         (remote_target_info): New.
7802         (remote_target) <shortname, longname, doc>: Delete.
7803         <info>: New.
7804         (extended_remote_target_info): New.
7805         (extended_remote_target) <shortname, longname, doc>: Delete.
7806         <info>: New.
7807         (remote_target::open_1): Make static.  Adjust.
7808         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7809         * s390-linux-nat.c (_initialize_s390_nat): Use
7810         add_inf_child_target.
7811         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7812         add_inf_child_target.
7813         * sol-thread.c (thread_db_target_info): New.
7814         (sol_thread_target) <shortname, longname, doc>: Delete.
7815         <info>: New.
7816         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7817         add_inf_child_target.
7818         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7819         add_inf_child_target.
7820         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7821         add_inf_child_target.
7822         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7823         add_inf_child_target.
7824         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7825         add_inf_child_target.
7826         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7827         add_inf_child_target.
7828         * spu-linux-nat.c (_initialize_spu_nat): Use
7829         add_inf_child_target.
7830         * spu-multiarch.c (spu_multiarch_target_info): New.
7831         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7832         <info>: New.
7833         * target-delegates.c: Regenerate.
7834         * target.c: Include <unordered_map>.
7835         (target_ops_p): Delete.
7836         (DEF_VEC_P(target_ops_p)): Delete.
7837         (target_factories): New.
7838         (test_target_info): New.
7839         (test_target_ops::info): New.
7840         (open_target): Adjust to use target_factories.
7841         (add_target_with_completer): Rename to ...
7842         (add_target): ... this.  Change prototype.  Register target_info
7843         and open callback in target_factories.  Register target_info in
7844         command context instead of target_ops.
7845         (add_target): Delete old implementation.
7846         (add_deprecated_target_alias): Change prototype.  Adjust.
7847         (the_native_target): New.
7848         (set_native_target, get_native_target): New.
7849         (find_default_run_target): Use the_native_target.
7850         (find_attach_target, find_run_target): Simplify.
7851         (target_ops::open): Delete.
7852         (dummy_target_info): New.
7853         (dummy_target::shortname, dummy_target::longname)
7854         (dummy_target::doc): Delete.
7855         (dummy_target::info): New.
7856         (debug_target::shortname, debug_target::longname)
7857         (debug_target::doc): Delete.
7858         (debug_target::info): New.
7859         * target.h (struct target_info): New.
7860         (target_ops::~target_ops): Add comment.
7861         (target_ops::info): New.
7862         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7863         longer virtual.  Implement in terms of target_info.
7864         (set_native_target, get_native_target): Declare.
7865         (target_open_ftype): New.
7866         (add_target, add_target_with_completer)
7867         (add_deprecated_target_alias): Change prototype.
7868         (test_target) <shortname, longname, doc>: Delete.
7869         <info>: New.
7870         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7871         add_inf_child_target.
7872         * tracefile-tfile.c (tfile_target_info): New.
7873         (tfile_target) <shortname, longname, doc>: Delete.
7874         <info>: New.
7875         (tfile_target::open): Rename to ...
7876         (tfile_target_open): ... this.
7877         (_initialize_tracefile_tfile): Adjust.
7878         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7879         add_inf_child_target.
7880         * windows-nat.c (_initialize_windows_nat): Use
7881         add_inf_child_target.
7882         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7883         add_inf_child_target.
7884
7885 2018-05-02  Pedro Alves  <palves@redhat.com>
7886
7887         * linux-nat.h (linux_nat_target) <low_new_thread,
7888         low_delete_thread, low_new_fork, low_forget_process,
7889         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7890         New virtual methods.
7891         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7892         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7893         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7894         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7895         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7896         Delete.
7897         * linux-fork.c (delete_fork): Adjust to call low method.
7898         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7899         (linux_nat_new_fork, linux_nat_forget_process_hook)
7900         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7901         (linux_nat_status_is_event):
7902         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7903         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7904         to call low method.
7905         (sigtrap_is_event): Rename to ...
7906         (linux_nat_target::low_status_is_event): ... this.
7907         (linux_nat_set_status_is_event): Delete.
7908         (save_stop_reason, linux_nat_wait_1)
7909         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7910         low methods.
7911         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7912         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7913         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7914         (linux_nat_set_prepare_to_resume): Delete.
7915         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7916         low virtual methods.
7917         * amd64-linux-nat.c: Likewise.
7918         * arm-linux-nat.c: Likewise.
7919         * i386-linux-nat.c: Likewise.
7920         * ia64-linux-nat.c: Likewise.
7921         * mips-linux-nat.c: Likewise.
7922         * ppc-linux-nat.c: Likewise.
7923         * s390-linux-nat.c: Likewise.
7924         * sparc64-linux-nat.c: Likewise.
7925         * x86-linux-nat.c: Likewise.
7926         * x86-linux-nat.h: Include "nat/x86-linux.h".
7927         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7928         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7929         Override methods.
7930
7931 2018-05-02  Pedro Alves  <palves@redhat.com>
7932
7933         * target.h (target_ops)
7934         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7935         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7936         stopped_by_watchpoint, have_continuable_watchpoint,
7937         stopped_data_address, watchpoint_addr_within_range,
7938         can_accel_watchpoint_condition, can_run, thread_alive,
7939         has_all_memory, has_memory, has_stack, has_registers,
7940         has_execution, can_async_p, is_async_p, supports_non_stop,
7941         always_non_stop_p, can_execute_reverse, supports_multi_process,
7942         supports_enable_disable_tracepoint,
7943         supports_disable_randomization, supports_string_tracing,
7944         supports_evaluation_of_breakpoint_conditions,
7945         can_run_breakpoint_commands, filesystem_is_local,
7946         can_download_tracepoint, get_trace_state_variable_value,
7947         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7948         record_is_replaying, record_will_replay,
7949         augmented_libraries_svr4_read>: Adjust to return bool.
7950         * aarch64-linux-nat.c: All implementations adjusted.
7951         * aix-thread.c: All implementations adjusted.
7952         * arm-linux-nat.c: All implementations adjusted.
7953         * breakpoint.c: All implementations adjusted.
7954         * bsd-kvm.c: All implementations adjusted.
7955         * bsd-uthread.c: All implementations adjusted.
7956         * corelow.c: All implementations adjusted.
7957         * ctf.c: All implementations adjusted.
7958         * darwin-nat.c: All implementations adjusted.
7959         * darwin-nat.h: All implementations adjusted.
7960         * exec.c: All implementations adjusted.
7961         * fbsd-nat.c: All implementations adjusted.
7962         * fbsd-nat.h: All implementations adjusted.
7963         * gnu-nat.c: All implementations adjusted.
7964         * gnu-nat.h: All implementations adjusted.
7965         * go32-nat.c: All implementations adjusted.
7966         * ia64-linux-nat.c: All implementations adjusted.
7967         * inf-child.c: All implementations adjusted.
7968         * inf-child.h: All implementations adjusted.
7969         * inf-ptrace.c: All implementations adjusted.
7970         * inf-ptrace.h: All implementations adjusted.
7971         * linux-nat.c: All implementations adjusted.
7972         * linux-nat.h: All implementations adjusted.
7973         * mips-linux-nat.c: All implementations adjusted.
7974         * nto-procfs.c: All implementations adjusted.
7975         * ppc-linux-nat.c: All implementations adjusted.
7976         * procfs.c: All implementations adjusted.
7977         * ravenscar-thread.c: All implementations adjusted.
7978         * record-btrace.c: All implementations adjusted.
7979         * record-full.c: All implementations adjusted.
7980         * remote-sim.c: All implementations adjusted.
7981         * remote.c: All implementations adjusted.
7982         * s390-linux-nat.c: All implementations adjusted.
7983         * sol-thread.c: All implementations adjusted.
7984         * spu-multiarch.c: All implementations adjusted.
7985         * target-delegates.c: All implementations adjusted.
7986         * target.c: All implementations adjusted.
7987         * target.h: All implementations adjusted.
7988         * tracefile-tfile.c: All implementations adjusted.
7989         * tracefile.c: All implementations adjusted.
7990         * tracefile.h: All implementations adjusted.
7991         * windows-nat.c: All implementations adjusted.
7992         * x86-linux-nat.h: All implementations adjusted.
7993         * x86-nat.h: All implementations adjusted.
7994
7995 2018-05-02  Pedro Alves  <palves@redhat.com>
7996
7997         * make-target-delegates (scan_target_h): Don't trim lines here.
7998         Replace sequences of tabs and/or whitespace with a single
7999         whitespace.
8000         (top level, parsing methods): Trim each line before processing it
8001         here.
8002
8003 2018-05-02  Pedro Alves  <palves@redhat.com>
8004             John Baldwin  <jhb@freebsd.org>
8005
8006         * target.h (enum strata) <debug_stratum>: New.
8007         (struct target_ops) <all delegation methods>: Replace by C++
8008         virtual methods, and drop "to_" prefix.  All references updated
8009         throughout.
8010         <to_shortname, to_longname, to_doc, to_data,
8011         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8012         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8013         virtual methods.  All references updated throughout.
8014         <can_attach, supports_terminal_ours, can_create_inferior,
8015         get_thread_control_capabilities, attach_no_wait>: New
8016         virtual methods.
8017         <insert_breakpoint, remove_breakpoint>: Now
8018         TARGET_DEFAULT_NORETURN methods.
8019         <info_proc>: Now returns bool.
8020         <to_magic>: Delete.
8021         (OPS_MAGIC): Delete.
8022         (current_target): Delete.  All references replaced by references
8023         to ...
8024         (target_stack): ... this.  New.
8025         (target_shortname, target_longname): Adjust.
8026         (target_can_run): Now a function declaration.
8027         (default_child_has_all_memory, default_child_has_memory)
8028         (default_child_has_stack, default_child_has_registers)
8029         (default_child_has_execution): Remove target_ops parameter.
8030         (complete_target_initialization): Delete.
8031         (memory_breakpoint_target): New template class.
8032         (test_target_ops): Refactor as a C++ class with virtual methods.
8033         * make-target-delegates (NAME_PART): Tighten.
8034         (POINTER_PART, CP_SYMBOL): New.
8035         (SIMPLE_RETURN_PART): Reimplement.
8036         (VEC_RETURN_PART): Expect less.
8037         (RETURN_PART, VIRTUAL_PART): New.
8038         (METHOD): Adjust to C++ virtual methods.
8039         (scan_target_h): Remove reference to C99.
8040         (dname): Output "target_ops::" prefix.
8041         (write_function_header): Adjust to output a C++ class method.
8042         (write_declaration): New.
8043         (write_delegator): Adjust to output a C++ class method.
8044         (tdname): Output "dummy_target::" prefix.
8045         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8046         method.
8047         (tdefault_names, debug_names): Delete.
8048         (return_types, tdefaults, styles, argtypes_array): New.
8049         (top level): All methods are delegators.
8050         (print_class): New.
8051         (top level): Print dummy_target and debug_target classes.
8052         * target-delegates.c: Regenerate.
8053         * target-debug.h (target_debug_print_enum_info_proc_what)
8054         (target_debug_print_thread_control_capabilities)
8055         (target_debug_print_thread_info_p): New.
8056         * target.c (dummy_target): Delete.
8057         (the_dummy_target, the_debug_target): New.
8058         (target_stack): Now extern.
8059         (set_targetdebug): Push/unpush debug target.
8060         (default_child_has_all_memory, default_child_has_memory)
8061         (default_child_has_stack, default_child_has_registers)
8062         (default_child_has_execution): Remove target_ops parameter.
8063         (complete_target_initialization): Delete.
8064         (add_target_with_completer): No longer call
8065         complete_target_initialization.
8066         (target_supports_terminal_ours): Use regular delegation.
8067         (update_current_target): Delete.
8068         (push_target): No longer check magic number.  Don't call
8069         update_current_target.
8070         (unpush_target): Don't call update_current_target.
8071         (target_is_pushed): No longer check magic number.
8072         (target_require_runnable): Skip for all stratums over
8073         process_stratum.
8074         (target_ops::info_proc): New.
8075         (target_info_proc): Use find_target_at and
8076         find_default_run_target.
8077         (target_supports_disable_randomization): Use regular delegation.
8078         (target_get_osdata): Use find_target_at.
8079         (target_ops::open, target_ops::close, target_ops::can_attach)
8080         (target_ops::attach, target_ops::can_create_inferior)
8081         (target_ops::create_inferior, target_ops::can_run)
8082         (target_can_run): New.
8083         (default_fileio_target): Use regular delegation.
8084         (target_ops::fileio_open, target_ops::fileio_pwrite)
8085         (target_ops::fileio_pread, target_ops::fileio_fstat)
8086         (target_ops::fileio_close, target_ops::fileio_unlink)
8087         (target_ops::fileio_readlink): New.
8088         (target_fileio_open_1, target_fileio_unlink)
8089         (target_fileio_readlink): Always call the target method.  Handle
8090         FILEIO_ENOSYS.
8091         (return_zero, return_zero_has_execution): Delete.
8092         (init_dummy_target): Delete.
8093         (dummy_target::dummy_target, dummy_target::shortname)
8094         (dummy_target::longname, dummy_target::doc)
8095         (debug_target::debug_target, debug_target::shortname)
8096         (debug_target::longname, debug_target::doc): New.
8097         (target_supports_delete_record): Use regular delegation.
8098         (setup_target_debug): Delete.
8099         (maintenance_print_target_stack): Skip debug_stratum.
8100         (initialize_targets): Instantiate the_dummy_target and
8101         the_debug_target.
8102         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8103         use target_stack.
8104         (target_auxv_search, fprint_target_auxv): Adjust.
8105         (info_auxv_command): Adjust to use target_stack.
8106         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8107         * exceptions.c (print_flush): Handle a NULL target_stack.
8108         * regcache.c (target_ops_no_register): Refactor as class with
8109         virtual methods.
8110
8111         * exec.c (exec_target): New class.
8112         (exec_ops): Now an exec_target.
8113         (exec_open, exec_close_1, exec_get_section_table)
8114         (exec_xfer_partial, exec_files_info, exec_has_memory)
8115         (exec_make_note_section): Refactor as exec_target methods.
8116         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8117         Delete.
8118         (exec_target::find_memory_regions): New.
8119         (_initialize_exec): Don't call init_exec_ops.
8120         * gdbcore.h (exec_file_clear): Delete.
8121
8122         * corefile.c (core_target): Delete.
8123         (core_file_command): Adjust.
8124         * corelow.c (core_target): New class.
8125         (the_core_target): New.
8126         (core_close): Remove target_ops parameter.
8127         (core_close_cleanup): Adjust.
8128         (core_target::close): New.
8129         (core_open, core_detach, get_core_registers, core_files_info)
8130         (core_xfer_partial, core_thread_alive, core_read_description)
8131         (core_pid_to_str, core_thread_name, core_has_memory)
8132         (core_has_stack, core_has_registers, core_info_proc): Rework as
8133         core_target methods.
8134         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8135         (_initialize_corelow): Initialize the_core_target.
8136         * gdbcore.h (core_target): Delete.
8137         (the_core_target): New.
8138
8139         * ctf.c: (ctf_target): New class.
8140         (ctf_ops): Now a ctf_target.
8141         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8142         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8143         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8144         methods.
8145         (init_ctf_ops): Delete.
8146         (_initialize_ctf): Don't call it.
8147         * tracefile-tfile.c (tfile_target): New class.
8148         (tfile_ops): Now a tfile_target.
8149         (tfile_open, tfile_close, tfile_files_info)
8150         (tfile_get_tracepoint_status, tfile_trace_find)
8151         (tfile_fetch_registers, tfile_xfer_partial)
8152         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8153         Refactor as tfile_target methods.
8154         (tfile_xfer_partial_features): Remove target_ops parameter.
8155         (init_tfile_ops): Delete.
8156         (_initialize_tracefile_tfile): Don't call it.
8157         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8158         (tracefile_has_stack, tracefile_has_registers)
8159         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8160         tracefile_target methods.
8161         (init_tracefile_ops): Delete.
8162         (tracefile_target::tracefile_target): New.
8163         * tracefile.h: Include "target.h".
8164         (tracefile_target): New class.
8165         (init_tracefile_ops): Delete.
8166
8167         * spu-multiarch.c (spu_multiarch_target): New class.
8168         (spu_ops): Now a spu_multiarch_target.
8169         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8170         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8171         (spu_search_memory, spu_mourn_inferior): Refactor as
8172         spu_multiarch_target methods.
8173         (init_spu_ops): Delete.
8174         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8175         complete_target_initialization.
8176
8177         * ravenscar-thread.c (ravenscar_thread_target): New class.
8178         (ravenscar_ops): Now a ravenscar_thread_target.
8179         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8180         (ravenscar_thread_alive, ravenscar_pid_to_str)
8181         (ravenscar_fetch_registers, ravenscar_store_registers)
8182         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8183         (ravenscar_stopped_by_hw_breakpoint)
8184         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8185         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8186         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8187         methods.
8188         (init_ravenscar_thread_ops): Delete.
8189         (_initialize_ravenscar): Remove references to
8190         init_ravenscar_thread_ops and complete_target_initialization.
8191
8192         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8193         (bsd_uthread_target): New class.
8194         (bsd_uthread_ops): Now a bsd_uthread_target.
8195         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8196         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8197         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8198         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8199         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8200         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8201         (bsd_uthread_target): Delete function.
8202         (_initialize_bsd_uthread): Remove reference to
8203         complete_target_initialization.
8204
8205         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8206         (target_bfd): ... this new class.
8207         (target_bfd_xfer_partial, target_bfd_get_section_table)
8208         (target_bfd_close): Refactor as target_bfd methods.
8209         (target_bfd::~target_bfd): New.
8210         (target_bfd_reopen): Adjust.
8211         (target_bfd::close): New.
8212
8213         * record-btrace.c (record_btrace_target): New class.
8214         (record_btrace_ops): Now a record_btrace_target.
8215         (record_btrace_open, record_btrace_stop_recording)
8216         (record_btrace_disconnect, record_btrace_close)
8217         (record_btrace_async, record_btrace_info)
8218         (record_btrace_insn_history, record_btrace_insn_history_range)
8219         (record_btrace_insn_history_from, record_btrace_call_history)
8220         (record_btrace_call_history_range)
8221         (record_btrace_call_history_from, record_btrace_record_method)
8222         (record_btrace_is_replaying, record_btrace_will_replay)
8223         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8224         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8225         (record_btrace_store_registers, record_btrace_prepare_to_store)
8226         (record_btrace_to_get_unwinder)
8227         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8228         (record_btrace_commit_resume, record_btrace_wait)
8229         (record_btrace_stop, record_btrace_can_execute_reverse)
8230         (record_btrace_stopped_by_sw_breakpoint)
8231         (record_btrace_supports_stopped_by_sw_breakpoint)
8232         (record_btrace_stopped_by_hw_breakpoint)
8233         (record_btrace_supports_stopped_by_hw_breakpoint)
8234         (record_btrace_update_thread_list, record_btrace_thread_alive)
8235         (record_btrace_goto_begin, record_btrace_goto_end)
8236         (record_btrace_goto, record_btrace_stop_replaying_all)
8237         (record_btrace_execution_direction)
8238         (record_btrace_prepare_to_generate_core)
8239         (record_btrace_done_generating_core): Refactor as
8240         record_btrace_target methods.
8241         (init_record_btrace_ops): Delete.
8242         (_initialize_record_btrace): Remove reference to
8243         init_record_btrace_ops.
8244         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8245         the execution_direction global.
8246         (record_full_base_target, record_full_target)
8247         (record_full_core_target): New classes.
8248         (record_full_ops): Now a record_full_target.
8249         (record_full_core_ops): Now a record_full_core_target.
8250         (record_full_target::detach, record_full_target::disconnect)
8251         (record_full_core_target::disconnect)
8252         (record_full_target::mourn_inferior, record_full_target::kill):
8253         New.
8254         (record_full_open, record_full_close, record_full_async): Refactor
8255         as methods of the record_full_base_target class.
8256         (record_full_resume, record_full_commit_resume): Refactor
8257         as methods of the record_full_target class.
8258         (record_full_wait, record_full_stopped_by_watchpoint)
8259         (record_full_stopped_data_address)
8260         (record_full_stopped_by_sw_breakpoint)
8261         (record_full_supports_stopped_by_sw_breakpoint)
8262         (record_full_stopped_by_hw_breakpoint)
8263         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8264         methods of the record_full_base_target class.
8265         (record_full_store_registers, record_full_xfer_partial)
8266         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8267         Refactor as methods of the record_full_target class.
8268         (record_full_can_execute_reverse, record_full_get_bookmark)
8269         (record_full_goto_bookmark, record_full_execution_direction)
8270         (record_full_record_method, record_full_info, record_full_delete)
8271         (record_full_is_replaying, record_full_will_replay)
8272         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8273         (record_full_stop_replaying): Refactor as methods of the
8274         record_full_base_target class.
8275         (record_full_core_resume, record_full_core_kill)
8276         (record_full_core_fetch_registers)
8277         (record_full_core_prepare_to_store)
8278         (record_full_core_store_registers, record_full_core_xfer_partial)
8279         (record_full_core_insert_breakpoint)
8280         (record_full_core_remove_breakpoint)
8281         (record_full_core_has_execution): Refactor
8282         as methods of the record_full_core_target class.
8283         (record_full_base_target::supports_delete_record): New.
8284         (init_record_full_ops): Delete.
8285         (init_record_full_core_ops): Delete.
8286         (record_full_save): Refactor as method of the
8287         record_full_base_target class.
8288         (_initialize_record_full): Remove references to
8289         init_record_full_ops and init_record_full_core_ops.
8290
8291         * remote.c (remote_target, extended_remote_target): New classes.
8292         (remote_ops): Now a remote_target.
8293         (extended_remote_ops): Now an extended_remote_target.
8294         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8295         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8296         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8297         (remote_pass_signals, remote_set_syscall_catchpoint)
8298         (remote_program_signals, )
8299         (remote_thread_always_alive): Remove target_ops parameter.
8300         (remote_thread_alive, remote_thread_name)
8301         (remote_update_thread_list, remote_threads_extra_info)
8302         (remote_static_tracepoint_marker_at)
8303         (remote_static_tracepoint_markers_by_strid)
8304         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8305         (remote_open): Refactor as methods of remote_target.
8306         (extended_remote_open, extended_remote_detach)
8307         (extended_remote_attach, extended_remote_post_attach):
8308         (extended_remote_supports_disable_randomization)
8309         (extended_remote_create_inferior): : Refactor as method of
8310         extended_remote_target.
8311         (remote_set_permissions, remote_open_1, remote_detach)
8312         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8313         (remote_resume, remote_commit_resume, remote_stop)
8314         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8315         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8316         (remote_prepare_to_store, remote_store_registers)
8317         (remote_flash_erase, remote_flash_done, remote_files_info)
8318         (remote_kill, remote_mourn, remote_insert_breakpoint)
8319         (remote_remove_breakpoint, remote_insert_watchpoint)
8320         (remote_watchpoint_addr_within_range)
8321         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8322         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8323         (remote_supports_stopped_by_sw_breakpoint)
8324         (remote_stopped_by_hw_breakpoint)
8325         (remote_supports_stopped_by_hw_breakpoint)
8326         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8327         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8328         (remote_verify_memory): Refactor as methods of remote_target.
8329         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8330         parameter.
8331         (remote_xfer_partial, remote_get_memory_xfer_limit)
8332         (remote_search_memory, remote_rcmd, remote_memory_map)
8333         (remote_pid_to_str, remote_get_thread_local_address)
8334         (remote_get_tib_address, remote_read_description): Refactor as
8335         methods of remote_target.
8336         (remote_target::fileio_open, remote_target::fileio_pwrite)
8337         (remote_target::fileio_pread, remote_target::fileio_close): New.
8338         (remote_hostio_readlink, remote_hostio_fstat)
8339         (remote_filesystem_is_local, remote_can_execute_reverse)
8340         (remote_supports_non_stop, remote_supports_disable_randomization)
8341         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8342         (remote_supports_enable_disable_tracepoint)
8343         (remote_supports_string_tracing)
8344         (remote_can_run_breakpoint_commands, remote_trace_init)
8345         (remote_download_tracepoint, remote_can_download_tracepoint)
8346         (remote_download_trace_state_variable, remote_enable_tracepoint)
8347         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8348         (remote_trace_start, remote_get_trace_status)
8349         (remote_get_tracepoint_status, remote_trace_stop)
8350         (remote_trace_find, remote_get_trace_state_variable_value)
8351         (remote_save_trace_data, remote_get_raw_trace_data)
8352         (remote_set_disconnected_tracing, remote_core_of_thread)
8353         (remote_set_circular_trace_buffer, remote_traceframe_info)
8354         (remote_get_min_fast_tracepoint_insn_len)
8355         (remote_set_trace_buffer_size, remote_set_trace_notes)
8356         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8357         (remote_disable_btrace, remote_teardown_btrace)
8358         (remote_read_btrace, remote_btrace_conf)
8359         (remote_augmented_libraries_svr4_read, remote_load)
8360         (remote_pid_to_exec_file, remote_can_do_single_step)
8361         (remote_execution_direction, remote_thread_handle_to_thread_info):
8362         Refactor as methods of remote_target.
8363         (init_remote_ops, init_extended_remote_ops): Delete.
8364         (remote_can_async_p, remote_is_async_p, remote_async)
8365         (remote_thread_events, remote_upload_tracepoints)
8366         (remote_upload_trace_state_variables): Refactor as methods of
8367         remote_target.
8368         (_initialize_remote): Remove references to init_remote_ops and
8369         init_extended_remote_ops.
8370
8371         * remote-sim.c (gdbsim_target): New class.
8372         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8373         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8374         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8375         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8376         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8377         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8378         Refactor as methods of gdbsim_target.
8379         (gdbsim_ops): Now a gdbsim_target.
8380         (init_gdbsim_ops): Delete.
8381         (gdbsim_cntrl_c): Adjust.
8382         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8383
8384         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8385         (the_amd64_linux_nat_target): New.
8386         (amd64_linux_fetch_inferior_registers)
8387         (amd64_linux_store_inferior_registers): Refactor as methods of
8388         amd64_linux_nat_target.
8389         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8390         * i386-linux-nat.c: Don't include "linux-nat.h".
8391         (i386_linux_nat_target): New class.
8392         (the_i386_linux_nat_target): New.
8393         (i386_linux_fetch_inferior_registers)
8394         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8395         as methods of i386_linux_nat_target.
8396         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8397         * inf-child.c (inf_child_ops): Delete.
8398         (inf_child_fetch_inferior_registers)
8399         (inf_child_store_inferior_registers): Delete.
8400         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8401         methods of inf_child_target.
8402         (inf_child_target::supports_terminal_ours)
8403         (inf_child_target::terminal_init)
8404         (inf_child_target::terminal_inferior)
8405         (inf_child_target::terminal_ours_for_output)
8406         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8407         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8408         New.
8409         (inf_child_open, inf_child_disconnect, inf_child_close)
8410         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8411         (inf_child_post_startup_inferior, inf_child_can_run)
8412         (inf_child_pid_to_exec_file): Refactor as methods of
8413         inf_child_target.
8414         (inf_child_follow_fork): Delete.
8415         (inf_child_target::can_create_inferior)
8416         (inf_child_target::can_attach): New.
8417         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8418         (inf_child_target::has_stack, inf_child_target::has_registers)
8419         (inf_child_target::has_execution): New.
8420         (inf_child_fileio_open, inf_child_fileio_pwrite)
8421         (inf_child_fileio_pread, inf_child_fileio_fstat)
8422         (inf_child_fileio_close, inf_child_fileio_unlink)
8423         (inf_child_fileio_readlink, inf_child_use_agent)
8424         (inf_child_can_use_agent): Refactor as methods of
8425         inf_child_target.
8426         (return_zero, inf_child_target): Delete.
8427         (inf_child_target::inf_child_target): New.
8428         * inf-child.h: Include "target.h".
8429         (inf_child_target): Delete function prototype.
8430         (inf_child_target): New class.
8431         (inf_child_open_target, inf_child_mourn_inferior)
8432         (inf_child_maybe_unpush_target): Delete.
8433         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8434         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8435         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8436         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8437         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8438         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8439         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8440         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8441         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8442         methods of inf_ptrace_target.
8443         (inf_ptrace_target): Delete function.
8444         * inf-ptrace.h: Include "inf-child.h".
8445         (inf_ptrace_target): Delete function declaration.
8446         (inf_ptrace_target): New class.
8447         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8448         * linux-nat.c (linux_target): New.
8449         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8450         (linux_nat_target::~linux_nat_target): New.
8451         (linux_child_post_attach, linux_child_post_startup_inferior)
8452         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8453         (linux_child_remove_fork_catchpoint)
8454         (linux_child_insert_vfork_catchpoint)
8455         (linux_child_remove_vfork_catchpoint)
8456         (linux_child_insert_exec_catchpoint)
8457         (linux_child_remove_exec_catchpoint)
8458         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8459         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8460         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8461         (linux_nat_stopped_data_address)
8462         (linux_nat_stopped_by_sw_breakpoint)
8463         (linux_nat_supports_stopped_by_sw_breakpoint)
8464         (linux_nat_stopped_by_hw_breakpoint)
8465         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8466         (linux_nat_kill, linux_nat_mourn_inferior)
8467         (linux_nat_xfer_partial, linux_nat_thread_alive)
8468         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8469         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8470         (linux_child_static_tracepoint_markers_by_strid)
8471         (linux_nat_is_async_p, linux_nat_can_async_p)
8472         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8473         (linux_nat_supports_multi_process)
8474         (linux_nat_supports_disable_randomization, linux_nat_async)
8475         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8476         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8477         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8478         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8479         methods of linux_nat_target.
8480         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8481         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8482         parameter.
8483         (check_stopped_by_watchpoint): Adjust.
8484         (linux_xfer_partial): Delete.
8485         (linux_target_install_ops, linux_target, linux_nat_add_target):
8486         Delete.
8487         (linux_nat_target::linux_nat_target): New.
8488         * linux-nat.h: Include "inf-ptrace.h".
8489         (linux_nat_target): New.
8490         (linux_target, linux_target_install_ops, linux_nat_add_target):
8491         Delete function declarations.
8492         (linux_target): Declare global.
8493         * linux-thread-db.c (thread_db_target): New.
8494         (thread_db_target::thread_db_target): New.
8495         (thread_db_ops): Delete.
8496         (the_thread_db_target): New.
8497         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8498         (thread_db_update_thread_list, thread_db_pid_to_str)
8499         (thread_db_extra_thread_info)
8500         (thread_db_thread_handle_to_thread_info)
8501         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8502         (thread_db_resume): Refactor as methods of thread_db_target.
8503         (init_thread_db_ops): Delete.
8504         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8505         * x86-linux-nat.c: Don't include "linux-nat.h".
8506         (super_post_startup_inferior): Delete.
8507         (x86_linux_nat_target::~x86_linux_nat_target): New.
8508         (x86_linux_child_post_startup_inferior)
8509         (x86_linux_read_description, x86_linux_enable_btrace)
8510         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8511         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8512         methods of x86_linux_nat_target.
8513         (x86_linux_create_target): Delete.  Bits folded ...
8514         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8515         pointer.
8516         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8517         (x86_linux_nat_target): New class.
8518         (x86_linux_create_target): Delete.
8519         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8520         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8521         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8522         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8523         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8524         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8525         make extern.
8526         (x86_use_watchpoints): Delete.
8527         * x86-nat.h: Include "breakpoint.h" and "target.h".
8528         (x86_use_watchpoints): Delete.
8529         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8530         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8531         (x86_insert_watchpoint, x86_remove_watchpoint)
8532         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8533         (x86_stopped_by_hw_breakpoint): New declarations.
8534         (x86_nat_target): New template class.
8535
8536         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8537         (the_ppc_linux_nat_target): New.
8538         (ppc_linux_fetch_inferior_registers)
8539         (ppc_linux_can_use_hw_breakpoint)
8540         (ppc_linux_region_ok_for_hw_watchpoint)
8541         (ppc_linux_ranged_break_num_registers)
8542         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8543         (ppc_linux_insert_mask_watchpoint)
8544         (ppc_linux_remove_mask_watchpoint)
8545         (ppc_linux_can_accel_watchpoint_condition)
8546         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8547         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8548         (ppc_linux_watchpoint_addr_within_range)
8549         (ppc_linux_masked_watch_num_registers)
8550         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8551         (ppc_linux_read_description): Refactor as methods of
8552         ppc_linux_nat_target.
8553         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8554
8555         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8556         (procfs_target): New class.
8557         (the_procfs_target): New.
8558         (procfs_target): Delete function.
8559         (procfs_auxv_parse, procfs_attach, procfs_detach)
8560         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8561         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8562         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8563         (procfs_create_inferior, procfs_update_thread_list)
8564         (procfs_thread_alive, procfs_pid_to_str)
8565         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8566         (procfs_stopped_data_address, procfs_insert_watchpoint)
8567         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8568         (proc_find_memory_regions, procfs_info_proc)
8569         (procfs_make_note_section): Refactor as methods of procfs_target.
8570         (_initialize_procfs): Adjust.
8571         * sol-thread.c (sol_thread_target): New class.
8572         (sol_thread_ops): Now a sol_thread_target.
8573         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8574         (sol_thread_fetch_registers, sol_thread_store_registers)
8575         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8576         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8577         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8578         (init_sol_thread_ops): Delete.
8579         (_initialize_sol_thread): Adjust.  Remove references to
8580         init_sol_thread_ops and complete_target_initialization.
8581
8582         * windows-nat.c (windows_nat_target): New class.
8583         (windows_fetch_inferior_registers)
8584         (windows_store_inferior_registers, windows_resume, windows_wait)
8585         (windows_attach, windows_detach, windows_pid_to_exec_file)
8586         (windows_files_info, windows_create_inferior)
8587         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8588         (windows_close, windows_pid_to_str, windows_xfer_partial)
8589         (windows_get_tib_address, windows_get_ada_task_ptid)
8590         (windows_thread_name, windows_thread_alive): Refactor as
8591         windows_nat_target methods.
8592         (do_initial_windows_stuff): Adjust.
8593         (windows_target): Delete function.
8594         (_initialize_windows_nat): Adjust.
8595
8596         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8597         (darwin_mourn_inferior, darwin_kill_inferior)
8598         (darwin_create_inferior, darwin_attach, darwin_detach)
8599         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8600         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8601         (darwin_supports_multi_process): Refactor as darwin_nat_target
8602         methods.
8603         (darwin_resume_to, darwin_files_info): Delete.
8604         (_initialize_darwin_inferior): Rename to ...
8605         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8606         * darwin-nat.h: Include "inf-child.h".
8607         (darwin_nat_target): New class.
8608         (darwin_complete_target): Delete.
8609         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8610         (darwin_target): New.
8611         (i386_darwin_fetch_inferior_registers)
8612         (i386_darwin_store_inferior_registers): Refactor as methods of
8613         darwin_nat_target.
8614         (darwin_complete_target): Delete, with ...
8615         (_initialize_i386_darwin_nat): ... bits factored out here.
8616
8617         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8618         (the_alpha_linux_nat_target): New.
8619         (alpha_linux_register_u_offset): Refactor as
8620         alpha_linux_nat_target method.
8621         (_initialize_alpha_linux_nat): Adjust.
8622         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8623         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8624         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8625         methods of linux_nat_trad_target.
8626         (linux_trad_target): Delete.
8627         * linux-nat-trad.h (linux_trad_target): Delete function.
8628         (linux_nat_trad_target): New class.
8629         * mips-linux-nat.c (mips_linux_nat_target): New class.
8630         (super_fetch_registers, super_store_registers, super_close):
8631         Delete.
8632         (the_mips_linux_nat_target): New.
8633         (mips64_linux_regsets_fetch_registers)
8634         (mips64_linux_regsets_store_registers)
8635         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8636         (mips_linux_register_u_offset, mips_linux_read_description)
8637         (mips_linux_can_use_hw_breakpoint)
8638         (mips_linux_stopped_by_watchpoint)
8639         (mips_linux_stopped_data_address)
8640         (mips_linux_region_ok_for_hw_watchpoint)
8641         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8642         (mips_linux_close): Refactor as methods of mips_linux_nat.
8643         (_initialize_mips_linux_nat): Adjust to C++ification.
8644
8645         * aix-thread.c (aix_thread_target): New class.
8646         (aix_thread_ops): Now an aix_thread_target.
8647         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8648         (aix_thread_fetch_registers, aix_thread_store_registers)
8649         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8650         (aix_thread_thread_alive, aix_thread_pid_to_str)
8651         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8652         Refactor as methods of aix_thread_target.
8653         (init_aix_thread_ops): Delete.
8654         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8655         and complete_target_initialization.
8656         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8657         (rs6000_nat_target): New class.
8658         (the_rs6000_nat_target): New.
8659         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8660         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8661         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8662         (super_create_inferior): Delete.
8663         (_initialize_rs6000_nat): Adjust to C++ification.
8664
8665         * arm-linux-nat.c (arm_linux_nat_target): New class.
8666         (the_arm_linux_nat_target): New.
8667         (arm_linux_fetch_inferior_registers)
8668         (arm_linux_store_inferior_registers, arm_linux_read_description)
8669         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8670         (arm_linux_remove_hw_breakpoint)
8671         (arm_linux_region_ok_for_hw_watchpoint)
8672         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8673         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8674         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8675         arm_linux_nat_target.
8676         (_initialize_arm_linux_nat): Adjust to C++ification.
8677
8678         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8679         (the_aarch64_linux_nat_target): New.
8680         (aarch64_linux_fetch_inferior_registers)
8681         (aarch64_linux_store_inferior_registers)
8682         (aarch64_linux_child_post_startup_inferior)
8683         (aarch64_linux_read_description)
8684         (aarch64_linux_can_use_hw_breakpoint)
8685         (aarch64_linux_insert_hw_breakpoint)
8686         (aarch64_linux_remove_hw_breakpoint)
8687         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8688         (aarch64_linux_region_ok_for_hw_watchpoint)
8689         (aarch64_linux_stopped_data_address)
8690         (aarch64_linux_stopped_by_watchpoint)
8691         (aarch64_linux_watchpoint_addr_within_range)
8692         (aarch64_linux_can_do_single_step): Refactor as methods of
8693         aarch64_linux_nat_target.
8694         (super_post_startup_inferior): Delete.
8695         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8696
8697         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8698         (the_hppa_linux_nat_target): New.
8699         (hppa_linux_fetch_inferior_registers)
8700         (hppa_linux_store_inferior_registers): Refactor as methods of
8701         hppa_linux_nat_target.
8702         (_initialize_hppa_linux_nat): Adjust to C++ification.
8703
8704         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8705         (the_ia64_linux_nat_target): New.
8706         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8707         (ia64_linux_stopped_data_address)
8708         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8709         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8710         ia64_linux_nat_target methods.
8711         (super_xfer_partial): Delete.
8712         (_initialize_ia64_linux_nat): Adjust to C++ification.
8713
8714         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8715         (the_m32r_linux_nat_target): New.
8716         (m32r_linux_fetch_inferior_registers)
8717         (m32r_linux_store_inferior_registers): Refactor as
8718         m32r_linux_nat_target methods.
8719         (_initialize_m32r_linux_nat): Adjust to C++ification.
8720
8721         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8722         (the_m68k_linux_nat_target): New.
8723         (m68k_linux_fetch_inferior_registers)
8724         (m68k_linux_store_inferior_registers): Refactor as
8725         m68k_linux_nat_target methods.
8726         (_initialize_m68k_linux_nat): Adjust to C++ification.
8727
8728         * s390-linux-nat.c (s390_linux_nat_target): New class.
8729         (the_s390_linux_nat_target): New.
8730         (s390_linux_fetch_inferior_registers)
8731         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8732         (s390_insert_watchpoint, s390_remove_watchpoint)
8733         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8734         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8735         (s390_auxv_parse, s390_read_description): Refactor as methods of
8736         s390_linux_nat_target.
8737         (_initialize_s390_nat): Adjust to C++ification.
8738
8739         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8740         (the_sparc_linux_nat_target): New.
8741         (_initialize_sparc_linux_nat): Adjust to C++ification.
8742         * sparc-nat.c (sparc_fetch_inferior_registers)
8743         (sparc_store_inferior_registers): Remove target_ops parameter.
8744         * sparc-nat.h (sparc_fetch_inferior_registers)
8745         (sparc_store_inferior_registers): Remove target_ops parameter.
8746         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8747         (the_sparc64_linux_nat_target): New.
8748         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8749
8750         * spu-linux-nat.c (spu_linux_nat_target): New class.
8751         (the_spu_linux_nat_target): New.
8752         (spu_child_post_startup_inferior, spu_child_post_attach)
8753         (spu_child_wait, spu_fetch_inferior_registers)
8754         (spu_store_inferior_registers, spu_xfer_partial)
8755         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8756         methods.
8757         (_initialize_spu_nat): Adjust to C++ification.
8758
8759         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8760         (the_tilegx_linux_nat_target): New.
8761         (fetch_inferior_registers, store_inferior_registers):
8762         Refactor as methods.
8763         (_initialize_tile_linux_nat): Adjust to C++ification.
8764
8765         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8766         (the_xtensa_linux_nat_target): New.
8767         (xtensa_linux_fetch_inferior_registers)
8768         (xtensa_linux_store_inferior_registers): Refactor as
8769         xtensa_linux_nat_target methods.
8770         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8771
8772         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8773         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8774         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8775         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8776         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8777         (fbsd_stopped_by_sw_breakpoint)
8778         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8779         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8780         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8781         (fbsd_post_startup_inferior, fbsd_post_attach)
8782         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8783         (fbsd_set_syscall_catchpoint)
8784         (super_xfer_partial, super_resume, super_wait)
8785         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8786         (fbsd_handle_debug_trap): Remove target_ops parameter.
8787         (fbsd_nat_add_target): Delete.
8788         * fbsd-nat.h: Include "inf-ptrace.h".
8789         (fbsd_nat_add_target): Delete.
8790         (USE_SIGTRAP_SIGINFO): Define.
8791         (fbsd_nat_target): New class.
8792
8793         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8794         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8795         (amd64bsd_target): Delete.
8796         * amd64-bsd-nat.h: New file.
8797         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8798         "x86-bsd-nat.h".
8799         (amd64_fbsd_nat_target): New class.
8800         (the_amd64_fbsd_nat_target): New.
8801         (amd64fbsd_read_description): Refactor as method of
8802         amd64_fbsd_nat_target.
8803         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8804         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8805         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8806         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8807         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8808         (i386bsd_target): Delete.
8809         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8810         (i386bsd_fetch_inferior_registers)
8811         (i386bsd_store_inferior_registers): Declare.
8812         (i386_bsd_nat_target): New class.
8813         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8814         (the_i386_fbsd_nat_target): New.
8815         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8816         i386_fbsd_nat_target methods.
8817         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8818         (_initialize_i386fbsd_nat): Adjust to C++ification.
8819         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8820         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8821         (_initialize_x86_bsd_nat): Adjust to C++ification.
8822         * x86-bsd-nat.h: Include "x86-nat.h".
8823         (x86bsd_target): Delete declaration.
8824         (x86bsd_nat_target): New class.
8825
8826         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8827         (the_aarch64_fbsd_nat_target): New.
8828         (aarch64_fbsd_fetch_inferior_registers)
8829         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8830         aarch64_fbsd_nat_target.
8831         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8832         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8833         (the_alpha_bsd_nat_target): New.
8834         (alphabsd_fetch_inferior_registers)
8835         (alphabsd_store_inferior_registers): Refactor as
8836         alpha_bsd_nat_target methods.
8837         (_initialize_alphabsd_nat): Refactor as methods of
8838         alpha_bsd_nat_target.
8839         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8840         (the_amd64_nbsd_nat_target): New.
8841         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8842         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8843         (the_amd64_obsd_nat_target): New.
8844         (_initialize_amd64obsd_nat): Adjust to C++ification.
8845         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8846         (the_arm_fbsd_nat_target): New.
8847         (arm_fbsd_fetch_inferior_registers)
8848         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8849         (_initialize_arm_fbsd_nat): Refactor as methods of
8850         arm_fbsd_nat_target.
8851         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8852         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8853         (the_arm_netbsd_nat_target): New.
8854         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8855         arm_netbsd_nat_target.
8856         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8857         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8858         (the_hppa_nbsd_nat_target): New.
8859         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8860         hppa_nbsd_nat_target methods.
8861         (_initialize_hppanbsd_nat): Adjust to C++ification.
8862         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8863         (the_hppa_obsd_nat_target): New.
8864         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8865         methods of hppa_obsd_nat_target.
8866         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8867         add_target.
8868         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8869         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8870         add_target.
8871         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8872         (_initialize_i386obsd_nat): Use add_target.
8873         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8874         (the_m68k_bsd_nat_target): New.
8875         (m68kbsd_fetch_inferior_registers)
8876         (m68kbsd_store_inferior_registers): Refactor as methods of
8877         m68k_bsd_nat_target.
8878         (_initialize_m68kbsd_nat): Adjust to C++ification.
8879         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8880         (the_mips_fbsd_nat_target): New.
8881         (mips_fbsd_fetch_inferior_registers)
8882         (mips_fbsd_store_inferior_registers): Refactor as methods of
8883         mips_fbsd_nat_target.
8884         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8885         add_target.
8886         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8887         (the_mips_nbsd_nat_target): New.
8888         (mipsnbsd_fetch_inferior_registers)
8889         (mipsnbsd_store_inferior_registers): Refactor as methods of
8890         mips_nbsd_nat_target.
8891         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8892         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8893         (the_mips64_obsd_nat_target): New.
8894         (mips64obsd_fetch_inferior_registers)
8895         (mips64obsd_store_inferior_registers): Refactor as methods of
8896         mips64_obsd_nat_target.
8897         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8898         add_target.
8899         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8900         nbsd_nat_target.
8901         * nbsd-nat.h: Include "inf-ptrace.h".
8902         (nbsd_nat_target): New class.
8903         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8904         (obsd_wait): Refactor as methods of obsd_nat_target.
8905         (obsd_add_target): Delete.
8906         * obsd-nat.h: Include "inf-ptrace.h".
8907         (obsd_nat_target): New class.
8908         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8909         (the_ppc_fbsd_nat_target): New.
8910         (ppcfbsd_fetch_inferior_registers)
8911         (ppcfbsd_store_inferior_registers): Refactor as methods of
8912         ppc_fbsd_nat_target.
8913         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8914         add_target.
8915         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8916         (the_ppc_nbsd_nat_target): New.
8917         (ppcnbsd_fetch_inferior_registers)
8918         (ppcnbsd_store_inferior_registers): Refactor as methods of
8919         ppc_nbsd_nat_target.
8920         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8921         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8922         (the_ppc_obsd_nat_target): New.
8923         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8924         methods of ppc_obsd_nat_target.
8925         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8926         add_target.
8927         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8928         (the_sh_nbsd_nat_target): New.
8929         (shnbsd_fetch_inferior_registers)
8930         (shnbsd_store_inferior_registers): Refactor as methods of
8931         sh_nbsd_nat_target.
8932         (_initialize_shnbsd_nat): Adjust to C++ification.
8933         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8934         (inf_ptrace_xfer_partial): Delete.
8935         (sparc_xfer_partial, sparc_target): Delete.
8936         * sparc-nat.h (sparc_fetch_inferior_registers)
8937         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8938         (sparc_target): Delete function declaration.
8939         (sparc_target): New template class.
8940         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8941         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8942         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8943         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8944         add_target.
8945         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8946         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8947         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8948         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8949         add_target.
8950         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8951         (the_vax_bsd_nat_target): New.
8952         (vaxbsd_fetch_inferior_registers)
8953         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8954         methods.
8955         (_initialize_vaxbsd_nat): Adjust to C++ification.
8956
8957         * bsd-kvm.c (bsd_kvm_target): New class.
8958         (bsd_kvm_ops): Now a bsd_kvm_target.
8959         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8960         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8961         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8962         bsd_kvm_target.
8963         (bsd_kvm_return_one): Delete.
8964         (bsd_kvm_add_target): Adjust to C++ification.
8965
8966         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8967         (nto_procfs_target_procfs): New classes.
8968         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8969         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8970         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8971         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8972         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8973         (procfs_remove_hw_breakpoint, procfs_resume)
8974         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8975         (procfs_kill_inferior, procfs_store_registers)
8976         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8977         as methods of nto_procfs_target.
8978         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8979         (nto_native_ops): Delete.
8980         (procfs_open, procfs_native_open): Delete.
8981         (nto_native_ops): Now an nto_procfs_target_native.
8982         (init_procfs_targets): Adjust to C++ification.
8983         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8984         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8985         Refactor as methods of nto_procfs_target.
8986
8987         * go32-nat.c (go32_nat_target): New class.
8988         (the_go32_nat_target): New.
8989         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8990         (go32_store_registers, go32_xfer_partial, go32_files_info)
8991         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8992         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8993         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8994         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8995         (go32_target): Delete.
8996         (_initialize_go32_nat): Adjust to C++ification.
8997
8998         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8999         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9000         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9001         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9002         gnu_nat_target.
9003         (gnu_target): Delete.
9004         * gnu-nat.h (gnu_target): Delete.
9005         (gnu_nat_target): New class.
9006         * i386-gnu-nat.c (gnu_base_target): New.
9007         (i386_gnu_nat_target): New class.
9008         (the_i386_gnu_nat_target): New.
9009         (_initialize_i386gnu_nat): Adjust to C++ification.
9010
9011 2018-05-02  Pedro Alves  <palves@redhat.com>
9012
9013         * bfd-target.c (target_bfd_xclose): Rename to ...
9014         (target_bfd_close): ... this.
9015         (target_bfd_reopen): Adjust.
9016         * target.c (target_close): Remove references to to_xclose.
9017         * target.h (target_ops::to_xclose): Delete.
9018         (target_ops::to_close): Update comments.
9019
9020 2018-05-02  Pedro Alves  <palves@redhat.com>
9021
9022         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9023         "linux-nat.h".
9024         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9025         * inf-ptrace.c (inf_ptrace_register_u_offset)
9026         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9027         (inf_ptrace_store_register, inf_ptrace_store_registers)
9028         (inf_ptrace_trad_target): Move to ...
9029         * linux-nat-trad.c: ... this new file.
9030         * linux-nat-trad.h: New file.
9031         * linux-nat.c (linux_target_install_ops): Make extern.
9032         (linux_trad_target): Delete.
9033         * linux-nat.h (linux_trad_target): Delete declaration.
9034         (linux_target_install_ops): Declare.
9035         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9036         "linux-nat.h".
9037
9038 2018-05-02  Pedro Alves  <palves@redhat.com>
9039
9040         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9041         procfs_target/add_target here.
9042         * procfs.c (procfs_target): Make static.
9043         (_initialize_procfs): Call add_target here.
9044         * procfs.h (struct target_ops): Remove forward declaration.
9045         (procfs_target): Remove declaration.
9046         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9047
9048 2018-05-02  Pedro Alves  <palves@redhat.com>
9049
9050         * procfs.c (procfs_stopped_by_watchpoint)
9051         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9052         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9053         Forward declare.
9054         (procfs_use_watchpoints): Delete, move contents...
9055         (procfs_target): ... here.
9056         * procfs.h (procfs_use_watchpoints): Delete declaration.
9057         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9058         procfs_use_watchpoints.
9059         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9060         procfs_use_watchpoints.
9061
9062 2018-05-02  Tom Tromey  <tom@tromey.com>
9063
9064         PR python/20084:
9065         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9066         and var_zuinteger_unlimited.
9067         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9068         and PARAM_ZUINTEGER_UNLIMITED.
9069         (set_parameter_value): Handle var_zuinteger and
9070         var_zuinteger_unlimited.
9071         (add_setshow_generic): Likewise.
9072         (parmpy_init): Likewise.
9073
9074 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9075
9076         PR rust/23124
9077         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9078         pointer is not null before dereferencing it.
9079
9080 2018-04-30  Tom Tromey  <tom@tromey.com>
9081
9082         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9083         is_mi_like_p.
9084
9085 2018-04-30  Tom Tromey  <tom@tromey.com>
9086
9087         * breakpoint.c (mention): Remove use of is_mi_like_p.
9088         (print_mention_ranged_breakpoint): Likewise.
9089         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9090         of is_mi_like_p.
9091
9092 2018-04-30  Tom Tromey  <tom@tromey.com>
9093
9094         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9095
9096 2018-04-30  Tom Tromey  <tom@tromey.com>
9097
9098         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9099         (info_spu_event_command): Remove some uses of is_mi_like_p.
9100
9101 2018-04-30  Tom Tromey  <tom@tromey.com>
9102
9103         * python/py-framefilter.c (py_print_single_arg)
9104         (enumerate_locals, py_print_args, py_print_frame): Remove some
9105         uses of is_mi_like_p.
9106
9107 2018-04-30  Tom Tromey  <tom@tromey.com>
9108
9109         * ui-out.c: Update.
9110         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9111         * ui-out.h (ui_out::is_mi_like_p): Now const.
9112         (ui_out::do_is_mi_like_p): Now const.
9113         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9114
9115 2018-04-30  Tom Tromey  <tom@tromey.com>
9116
9117         * varobj.c (varobj_set_visualizer): Use new_reference.
9118         * python/python.c (gdbpy_decode_line): Use new_reference.
9119         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9120         new_reference.
9121
9122 2018-04-30  Tom Tromey  <tom@tromey.com>
9123
9124         * varobj.c (install_new_value): Use new_reference.
9125         * value.h (value_incref): Return void.  Swap intro comment with
9126         value_decref.
9127         * value.c (set_value_parent): Use new_reference.
9128         (value_incref): Return void.  Update intro comment.
9129         (release_value): Use new_reference.
9130         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9131
9132 2018-04-30  Tom Tromey  <tom@tromey.com>
9133
9134         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9135         * gdb_bfd.h (new_bfd_ref): Remove.
9136         (gdb_bfd_open): Update comment.
9137         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9138         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9139         (gdb_bfd_fdopenr): Use new_reference.
9140         * exec.c (exec_file_attach): Use new_reference.
9141
9142 2018-04-30  Tom Tromey  <tom@tromey.com>
9143
9144         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9145         method.
9146
9147 2018-04-30  Tom Tromey  <tom@tromey.com>
9148
9149         * jit.c (jit_read_code_entry): Use type_align.
9150         * i386-tdep.c (i386_gdbarch_init): Don't call
9151         set_gdbarch_long_long_align_bit.
9152         * gdbarch.sh: Remove long_long_align_bit.
9153         * gdbarch.c, gdbarch.h: Rebuild.
9154         * arc-tdep.c (arc_type_align): New function.
9155         (arc_gdbarch_init): Use arc_type_align.  Don't call
9156         set_gdbarch_long_long_align_bit.
9157
9158 2018-04-30  Tom Tromey  <tom@tromey.com>
9159
9160         * rust-lang.c (rust_type_alignment): Remove.
9161         (rust_composite_type): Use type_align.
9162
9163 2018-04-30  Tom Tromey  <tom@tromey.com>
9164
9165         * NEWS: Mention Type.align.
9166         * python/py-type.c (typy_get_alignof): New function.
9167         (type_object_getset): Add "alignof".
9168
9169 2018-04-30  Tom Tromey  <tom@tromey.com>
9170
9171         PR exp/17095:
9172         * NEWS: Update.
9173         * std-operator.def (UNOP_ALIGNOF): New operator.
9174         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9175         New.
9176         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9177         * c-lang.c (c_op_print_tab): Add alignof.
9178         * c-exp.y (ALIGNOF): New token.
9179         (exp): Add "ALIGNOF" production.
9180         (ident_tokens): Add _Alignof and alignof.
9181
9182 2018-04-30  Tom Tromey  <tom@tromey.com>
9183
9184         * i386-tdep.c (i386_type_align): New function.
9185         (i386_gdbarch_init): Update.
9186         * gdbarch.sh (type_align): New method.
9187         * gdbarch.c, gdbarch.h: Rebuild.
9188         * arch-utils.h (default_type_align): Declare.
9189         * arch-utils.c (default_type_align): New function.
9190         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9191         (struct type) <align_log2>: New field.
9192         <instance_flags>: Now a bitfield.
9193         (TYPE_RAW_ALIGN): New macro.
9194         (type_align, type_raw_align, set_type_align): Declare.
9195         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9196         functions.
9197         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9198         (get_alignment, maybe_set_alignment): New functions.
9199         (read_structure_type, read_enumeration_type, read_array_type)
9200         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9201         (read_subrange_type, read_base_type): Set type alignment.
9202
9203 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9204
9205         * dwarf2read.c (read_index_from_section): Use bool.
9206
9207 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9208
9209         PR gdb/22950
9210         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9211         with #ifdef.
9212
9213 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9214
9215         PR build/22873
9216         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9217         last step, and do it atomically.
9218
9219 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9220
9221         * compile/compile-c-types.c (convert_int, convert_float):
9222         Update for C FE v1.
9223
9224 2018-04-27  Tom Tromey  <tom@tromey.com>
9225
9226         PR rust/22545:
9227         * rust-lang.c (rust_inclusive_range_type_p): New function.
9228         (rust_range): Handle inclusive ranges.
9229         (rust_compute_range): Likewise.
9230         * rust-exp.y (struct rust_op) <inclusive>: New field.
9231         (DOTDOTEQ): New constant.
9232         (range_expr): Add "..=" productions.
9233         (operator_tokens): Add "..=" token.
9234         (ast_range): Add "inclusive" parameter.
9235         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9236         ranges.
9237         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9238         bounds values.
9239         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9240         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9241         Update comments.
9242         * expprint.c (print_subexp_standard): Handle new bounds values.
9243         (dump_subexp_body_standard): Likewise.
9244
9245 2018-04-27  Tom Tromey  <tom@tromey.com>
9246
9247         * configure: Rebuild.
9248         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9249         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9250         "OVERRIDE".
9251         (class symbol_needs_eval_context): Likewise.
9252         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9253         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9254         "virtual".
9255         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9256         "override".
9257         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9258         * aarch64-tdep.c (instruction_reader::read): Use "override".
9259         (instruction_reader_test::read): Likewise.
9260         * arm-tdep.c (instruction_reader::read): Use "override".
9261         (instruction_reader_thumb::read): Likewise.
9262
9263 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9264
9265         PR remote/9665
9266         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9267         instead of remote_send.
9268         (remote_send): Remove.
9269
9270 2018-04-26  Pedro Alves  <palves@redhat.com>
9271
9272         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9273         find_function_start_sal instead of find_pc_line.
9274
9275 2018-04-26  Pedro Alves  <palves@redhat.com>
9276
9277         * breakpoint.c (set_breakpoint_location_function): Handle
9278         mst_data_gnu_ifunc.
9279         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9280         * elfread.c (elf_symtab_read): Give data symbols with
9281         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9282         (elf_rel_plt_read): Update comment.
9283         * linespec.c (convert_linespec_to_sals): Handle
9284         mst_data_gnu_ifunc.
9285         (minsym_found): Handle mst_data_gnu_ifunc.
9286         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9287         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9288         * parse.c (find_minsym_type_and_address): Handle
9289         mst_data_gnu_ifunc.
9290         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9291         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9292         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9293         comment.
9294         <mst_data_gnu_ifunc>: New enumerator.
9295
9296 2018-04-26  Pedro Alves  <palves@redhat.com>
9297
9298         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9299         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9300         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9301         Handle it.
9302         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9303         (lookup_minimal_symbol_by_pc): Adjust.
9304         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9305         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9306         * minsyms.h (lookup_msym_prefer): New enum.
9307         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9308         parameter by a lookup_msym_prefer parameter.
9309
9310 2018-04-26  Pedro Alves  <palves@redhat.com>
9311
9312         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9313         ends in "@plt" instead of looking at the symbol's section.
9314
9315 2018-04-26  Pedro Alves  <palves@redhat.com>
9316
9317         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9318         all references.
9319         (find_pc_partial_function_gnu_ifunc): Rename to ...
9320         (find_pc_partial_function): ... this, and remove references to
9321         'is_gnu_ifunc_p'.
9322         (find_pc_partial_function): Delete old implementation.
9323         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9324
9325 2018-04-26  Pedro Alves  <palves@redhat.com>
9326
9327         * linespec.c (struct bound_minimal_symbol_search_key): New.
9328         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9329         skip first line if we found a GNU ifunc minimal symbol by name.
9330         (compare_msymbols): Change parameters to work with a destructured
9331         lhs minsym.
9332         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9333         functions.
9334
9335 2018-04-26  Pedro Alves  <palves@redhat.com>
9336
9337         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9338         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9339         address/name.
9340         (add_location_to_breakpoint): Store the minsym and the objfile in
9341         the breakpoint location.
9342         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9343         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9344         Record the minsym in the sal.
9345         * symtab.h (symtab_and_line) <msymbol>: New field.
9346
9347 2018-04-26  Pedro Alves  <palves@redhat.com>
9348
9349         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9350         unless we actually resolved the ifunc.
9351
9352 2018-04-26  Pedro Alves  <palves@redhat.com>
9353
9354         * c-exp.y (variable production): Prefer ifunc minsyms over
9355         regular function symbols.
9356         * symtab.c (find_gnu_ifunc): New function.
9357         * minsyms.h (lookup_msym_prefer): New enum.
9358         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9359         parameter by a lookup_msym_prefer parameter.
9360         * symtab.h (find_gnu_ifunc): New declaration.
9361
9362 2018-04-26  Pedro Alves  <palves@redhat.com>
9363
9364         * blockframe.c (find_gnu_ifunc_target_type): New function.
9365         (find_function_type): New.
9366         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9367         return a value with a memory address.
9368         (eval_call): For calls to GNU ifunc functions, try to find the
9369         type of the target function from the type that the resolver
9370         returns.
9371         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9372         symbols.
9373         * infcall.c (find_function_return_type): Delete.
9374         (find_function_addr): Add 'function_type' parameter.  For calls to
9375         GNU ifunc functions, try to find the type of the target function
9376         from the type that the resolver returns, and return it via
9377         FUNCTION_TYPE.
9378         (call_function_by_hand_dummy): Adjust to use the function type
9379         returned by find_function_addr.
9380         (find_function_addr): Add 'function_type' parameter and move
9381         description here.
9382         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9383         declarations.
9384
9385 2018-04-26  Pedro Alves  <palves@redhat.com>
9386
9387         * c-exp.y (variable production): Skip finding an alias for ifunc
9388         symbols.
9389
9390 2018-04-26  Pedro Alves  <palves@redhat.com>
9391
9392         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9393
9394 2018-04-25  Pedro Alves  <palves@redhat.com>
9395
9396         * infcmd.c (kill_command): Print the pid as string, not the whole
9397         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9398         message.
9399         * remote.c (remote_detach_1): Print the pid as string, not the
9400         whole thread's ptid.
9401
9402 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9403             Sergio Durigan Junior  <sergiodj@redhat.com>
9404             Pedro Alves  <palves@redhat.com>
9405
9406         * infcmd.c (kill_command): Print message when inferior has
9407         been killed.
9408         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9409         '1'.
9410         (add_inferior): Improve message printed when
9411         'print_inferior_events' is on.
9412         (exit_inferior): Remove message printed when
9413         'print_inferior_events' is on.
9414         (detach_inferior): Improve message printed when
9415         'print_inferior_events' is on.
9416         (initialize_inferiors): Use 'add_inferior_silent' to set
9417         'current_inferior_'.
9418         * inferior.h (print_inferior_events): Declare here as
9419         'extern'.
9420         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9421         '[Detaching...]' messages when 'print_inferior_events' is on.
9422         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9423         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9424         'Detaching after fork from child...', replace it by '... from
9425         parent...'.
9426         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9427         prefix/suffix when printing 'Detaching...' messages.  Print
9428         them when 'print_inferior_events' is on.
9429         * remote.c (remote_detach_1): Print message when detaching
9430         from inferior and '!is_fork_parent'.
9431
9432 2018-04-24  Tom Tromey  <tom@tromey.com>
9433
9434         * cli-out.h: Reindent.
9435
9436 2018-04-24  Tom Tromey  <tom@tromey.com>
9437
9438         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9439         (cli_ui_out::do_field_string): Use fputs_filtered.
9440         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9441
9442 2018-04-23  Tom Tromey  <tom@tromey.com>
9443
9444         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9445         gdb::unique_xmalloc_ptr.
9446
9447 2018-04-23  Tom Tromey  <tom@tromey.com>
9448
9449         * configure: Rebuild.
9450
9451 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9452
9453         PR gdb/23095
9454         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9455         prepare_for_testing.  Set normal_bp to r_debug_state if target
9456         is bsd.
9457
9458 2018-04-21  Pedro Alves  <palves@redhat.com>
9459             Rajendra SY  <rajendra.sy@gmail.com>
9460
9461         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9462         * remote.c (extended_remote_attach): In all-stop mode, mark the
9463         thread as executing.
9464
9465 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9466
9467         * thread.c (thread_apply_all_command): Fix comment.
9468         (thread_command): Fix comment.
9469
9470 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9471
9472         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9473         parameter.
9474         * features/aarch64-core.c (create_feature_aarch64_core):
9475         Regenerate.
9476         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9477         Likewise.
9478         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9479         Likewise.
9480         * features/i386/32bit-avx512.c
9481         (create_feature_i386_32bit_avx512): Likewise.
9482         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9483         Likewise.
9484         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9485         Likewise.
9486         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9487         Likewise.
9488         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9489         Likewise.
9490         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9491         Likewise.
9492         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9493         Likewise.
9494         * features/i386/64bit-avx512.c
9495         (create_feature_i386_64bit_avx512): Likewise.
9496         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9497         Likewise.
9498         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9499         Likewise.
9500         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9501         Likewise.
9502         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9503         Likewise.
9504         * features/i386/64bit-segments.c
9505         (create_feature_i386_64bit_segments): Likewise.
9506         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9507         Likewise.
9508         * features/i386/x32-core.c
9509         (create_feature_i386_x32_core): Likewise.
9510         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9511         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9512         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9513         * target-descriptions.c: In generated code, don't pass xml
9514         filename.
9515
9516 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9517
9518         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9519         (print_xml_feature::visit_post): Likewise.
9520         (print_xml_feature::visit): Likewise.
9521         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9522         (print_xml_feature): Add new class.
9523         * regformats/regdat.sh: Null xmltarget on feature targets.
9524         * target-descriptions.c (struct target_desc): Add xmltarget.
9525         (maintenance_check_tdesc_xml_convert): Add unittest function.
9526         (tdesc_get_features_xml): Add function to get xml.
9527         (maintenance_check_xml_descriptions): Test xml generation.
9528         * xml-tdesc.c (string_read_description_xml): Add function.
9529         * xml-tdesc.h (string_read_description_xml): Add declaration.
9530
9531 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9532
9533         * features/Makefile: Add feature marker to targets with new style
9534         target descriptions.
9535         * regformats/aarch64.dat: Regenerate.
9536         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9537         * regformats/i386/amd64-avx-linux.dat: Likewise.
9538         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9539         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9540         * regformats/i386/amd64-linux.dat: Likewise.
9541         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9542         * regformats/i386/amd64.dat: Likewise.
9543         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9544         * regformats/i386/i386-avx-linux.dat: Likewise.
9545         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9546         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9547         * regformats/i386/i386-linux.dat: Likewise.
9548         * regformats/i386/i386-mmx-linux.dat: Likewise.
9549         * regformats/i386/i386-mpx-linux.dat: Likewise.
9550         * regformats/i386/i386.dat: Likewise.
9551         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9552         * regformats/i386/x32-avx-linux.dat: Likewise.
9553         * regformats/i386/x32-linux.dat: Likewise.
9554         * regformats/tic6x-c62x-linux.dat: Likewise.
9555         * regformats/tic6x-c64x-linux.dat: Likewise.
9556         * regformats/tic6x-c64xp-linux.dat: Likewise.
9557         * regformats/regdat.sh: Parse feature marker.
9558
9559 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9560
9561         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9562         (tdesc_osabi_name): Likewise.
9563         * target-descriptions.c (tdesc_architecture_name): Add new
9564         function.
9565         (tdesc_osabi_name): Likewise.
9566
9567 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9568
9569         * common/tdesc.c (tdesc_predefined_type): Move to here.
9570         (tdesc_named_type): Likewise.
9571         (tdesc_create_vector): Likewise.
9572         (tdesc_create_struct): Likewise.
9573         (tdesc_set_struct_size): Likewise.
9574         (tdesc_create_union): Likewise.
9575         (tdesc_create_flags): Likewise.
9576         (tdesc_create_enum): Likewise.
9577         (tdesc_add_field): Likewise.
9578         (tdesc_add_typed_bitfield): Likewise.
9579         (tdesc_add_bitfield): Likewise.
9580         (tdesc_add_flag): Likewise.
9581         (tdesc_add_enum_value): Likewise.
9582         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9583         (struct tdesc_type_vector): Likewise.
9584         (struct tdesc_type_field): Likewise.
9585         (struct tdesc_type_with_fields): Likewise.
9586         (tdesc_create_enum): Add declaration.
9587         (tdesc_add_typed_bitfield): Likewise.
9588         (tdesc_add_enum_value): Likewise.
9589         * target-descriptions.c (tdesc_type_field): Move from here.
9590         (tdesc_type_builtin): Likewise.
9591         (tdesc_type_vector): Likewise.
9592         (tdesc_type_with_fields): Likewise.
9593         (tdesc_predefined_types): Likewise.
9594         (tdesc_named_type): Likewise.
9595         (tdesc_create_vector): Likewise.
9596         (tdesc_create_struct): Likewise.
9597         (tdesc_set_struct_size): Likewise.
9598         (tdesc_create_union): Likewise.
9599         (tdesc_create_flags): Likewise.
9600         (tdesc_create_enum): Likewise.
9601         (tdesc_add_field): Likewise.
9602         (tdesc_add_typed_bitfield): Likewise.
9603         (tdesc_add_bitfield): Likewise.
9604         (tdesc_add_flag): Likewise.
9605         (tdesc_add_enum_value): Likewise.
9606         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9607         (tdesc_add_typed_bitfield): Likewise.
9608         (tdesc_add_enum_value): Likewise.
9609
9610 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9611
9612         * common/tdesc.c (tdesc_feature::accept): Move to here.
9613         (tdesc_feature::operator==): Likewise.
9614         (tdesc_create_reg): Likewise.
9615         * common/tdesc.h (tdesc_type_kind): Likewise.
9616         (struct tdesc_type): Likewise.
9617         (struct tdesc_feature): Likewise.
9618         * regformats/regdat.sh: Create a feature.
9619         * target-descriptions.c (tdesc_type_kind): Move from here.
9620         (tdesc_type): Likewise.
9621         (tdesc_type_up): Likewise.
9622         (tdesc_feature): Likewise.
9623         (tdesc_create_reg): Likewise.
9624
9625 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9626
9627         * Makefile.in: Add arch/tdesc.c
9628         * common/tdesc.c: New file.
9629         * common/tdesc.h (tdesc_element_visitor): Move to here.
9630         (tdesc_element): Likewise.
9631         (tdesc_reg): Likewise.
9632         (tdesc_reg_up): Likewise.
9633         * regformats/regdef.h (reg): Add offset to constructors.
9634         * target-descriptions.c (tdesc_element_visitor): Move from here.
9635         (tdesc_element): Likewise.
9636         (tdesc_reg): Likewise.
9637         (tdesc_reg_up): Likewise.
9638
9639 2018-04-17  Tom Tromey  <tom@tromey.com>
9640
9641         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9642         discriminant field.
9643
9644 2018-04-17  Tom Tromey  <tom@tromey.com>
9645
9646         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9647
9648 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9649
9650         * symtab.c (print_symbol_info): Skip printing filename and line
9651         number when `last' is NULL.
9652         (symtab_symbol_info): Use empty string instead of NULL for first
9653         invocation of print_symbol_info.
9654         (rbreak_command): Pass NULL to `last' parameter of
9655         print_symbol_info.
9656
9657 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9658
9659         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9660         instead of nullptr.
9661
9662 2018-04-16  Pedro Alves  <palves@redhat.com>
9663
9664         * MAINTAINERS (sh): Remove.
9665         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9666         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9667         (ALLDEPFILES): Remove sh64-tdep.c.
9668         * NEWS: Mentions that support for SH-5/SH64 is removed.
9669         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9670         (sh*-*-openbsd*): Ditto.
9671         (sh64-*-elf*): Remove.
9672         (sh*): Remove.
9673         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9674         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9675         * sh-tdep.c: No longer include "sh64-tdep.h".
9676         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9677         * sh64-tdep.c, sh64-tdep.h: Remove files.
9678
9679 2018-04-16  Pedro Alves  <palves@redhat.com>
9680
9681         * MAINTAINERS: Remove m88k.
9682         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9683         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9684         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9685         * NEWS: Mention that support for m88k was removed.
9686         * configure.host (m88*-*-*): Remove support.
9687         * configure.nat (m88k-*-*): Remove support.
9688         * configure.tgt (m88*-*-openbsd*): Remove.
9689         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9690
9691 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9692
9693         * configure.tgt (x86_tobjs): New variable.
9694         (amd64_tobjs, i386_tobjs): Use it.
9695
9696 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9697
9698         * symtab.c (print_symbol_info): Precede the symbol definition by
9699         the line number when available.
9700         * NEWS: Advertise this enhancement.
9701
9702 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9703
9704         * NEWS (New options): announce set/show record btrace cpu.
9705         * btrace.c: Include record-btrace.h.
9706         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9707         the vendor is unknown.
9708         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9709         Maybe overwrite the btrace configuration's cpu.
9710         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9711         (btrace_fetch): Add cpu parameter.  Update callers.
9712         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9713         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9714         errata workarounds if the vendor is unknown.
9715         * python/py-record-btrace.c: Include record-btrace.h.
9716         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9717         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9718         * record-btrace.c (record_btrace_cpu_state_kind): New.
9719         (record_btrace_cpu): New.
9720         (set_record_btrace_cpu_cmdlist): New.
9721         (record_btrace_get_cpu): New.
9722         (require_btrace_thread, record_btrace_info)
9723         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9724         (cmd_set_record_btrace_cpu_none): New.
9725         (cmd_set_record_btrace_cpu_auto): New.
9726         (cmd_set_record_btrace_cpu): New.
9727         (cmd_show_record_btrace_cpu): New.
9728         (_initialize_record_btrace): Initialize set/show record btrace cpu
9729         commands.
9730         * record-btrace.h (record_btrace_get_cpu): New.
9731
9732 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9733
9734         * record.c (set_record_command): Fix typo in message.
9735
9736 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9737
9738         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9739
9740 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9741
9742         * infrun.c (process_event_stop_test): Call
9743         gdbarch_in_indirect_branch_thunk.
9744         * gdbarch.sh (in_indirect_branch_thunk): New.
9745         * gdbarch.c: Regenerated.
9746         * gdbarch.h: Regenerated.
9747         * x86-tdep.h: New.
9748         * x86-tdep.c: New.
9749         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9750         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9751         (ALLDEPFILES): Add x86-tdep.c.
9752         * arch-utils.h (default_in_indirect_branch_thunk): New.
9753         * arch-utils.c (default_in_indirect_branch_thunk): New.
9754         * i386-tdep: Include x86-tdep.h.
9755         (i386_in_indirect_branch_thunk): New.
9756         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9757         function.
9758         * amd64-tdep: Include x86-tdep.h.
9759         (amd64_in_indirect_branch_thunk): New.
9760         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9761
9762 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9763
9764         PR gdb/23053
9765         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9766         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9767         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9768         regression.
9769
9770 2018-04-12  Tom Tromey  <tom@tromey.com>
9771
9772         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9773         (rust_evaluate_subexp): Likewise.
9774
9775 2018-04-12  Pedro Alves  <palves@redhat.com>
9776
9777         * procfs.c (procfs_detach): Make forward declaration's prototype
9778         match definition's protototype.
9779         (proc_get_LDT_entry): Remove stale do_cleanups call.
9780
9781 2018-04-12  Pedro Alves  <palves@redhat.com>
9782
9783         * target.h (target_ops::to_has_exited): Delete.
9784         (target_has_exited): Delete.
9785         * target-delegates.c: Regenerate.
9786
9787 2018-04-11  Pedro Alves  <palves@redhat.com>
9788
9789         * target.c (fileio_fh_t::t): Add comment.
9790         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9791         (target_fileio_close): Handle a NULL target.
9792         (invalidate_fileio_fh): New.
9793         (target_close): Call it.
9794         * remote.c (remote_hostio_send_command): No longer check whether
9795         remote_desc is open.
9796
9797 2018-04-11  Pedro Alves  <palves@redhat.com>
9798
9799         * target.c (fileio_fh_t): Make it a named struct instead of a
9800         typedef.
9801         (fileio_fh_t::is_closed): New method.
9802         (DEF_VEC_O (fileio_fh_t)): Remove.
9803         (fileio_fhandles): Now a std::vector.
9804         (is_closed_fileio_fh): Delete.
9805         (acquire_fileio_fd): Adjust.  Rename parameters.
9806         (release_fileio_fd): Adjust.
9807         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9808         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9809         (target_fileio_close): Adjust.
9810
9811 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9812
9813         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9814         index.
9815
9816 2018-04-10  Pedro Alves  <palves@redhat.com>
9817
9818         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9819         (scoped_finish_thread_state): New class.
9820         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9821         cleanup.
9822         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9823         (fetch_inferior_event, normal_stop): Likewise.
9824         * thread.c (finish_thread_state_cleanup): Delete.
9825
9826 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9827             Pedro Alves  <palves@redhat.com>
9828
9829         * value.c: Include "selftest.h" and "common/array-view.h".
9830         (struct range) <operator ==>: New.
9831         (test_ranges_contain): New.
9832         (check_ranges_vector): New.
9833         (test_insert_into_bit_range_vector): New.
9834         (_initialize_values): Register selftests.
9835         * common/array-view.h (operator==, operator!=): New.
9836
9837 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9838
9839         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9840         an iterator.
9841         * inline-frame.c: Include <algorithm>.
9842         (struct inline_state): Add constructor.
9843         (inline_state_s): Remove.
9844         (DEF_VEC_O(inline_state_s)): Remove.
9845         (inline_states): Change type to std::vector.
9846         (find_inline_frame_state): Adjust to std::vector.
9847         (allocate_inline_frame_state): Remove.
9848         (clear_inline_frame_state): Adjust to std::vector.
9849         (skip_inline_frames): Adjust to std::vector.
9850
9851 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9852
9853         * tracepoint.h (struct trace_state_variable): Add constructor.
9854         <name>: Change type to std::string.
9855         * tracepoint.c (tsv_s): Remove.
9856         (DEF_VEC_O(tsv_s)): Remove.
9857         (tvariables): Change to std::vector.
9858         (create_trace_state_variable): Adjust to std::vector.
9859         (find_trace_state_variable): Likewise.
9860         (find_trace_state_variable_by_number): Likewise.
9861         (delete_trace_state_variable): Likewise.
9862         (trace_variable_command): Adjust to std::string.
9863         (delete_trace_variable_command): Likewise.
9864         (tvariables_info_1): Adjust to std::vector.
9865         (save_trace_state_variables): Likewise.
9866         (start_tracing): Likewise.
9867         (merge_uploaded_trace_state_variables): Adjust to std::vector
9868         and std::string.
9869         * target.h (struct target_ops)
9870         <to_download_trace_state_variable>: Pass reference to
9871         trace_state_variable.
9872         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9873         * target-delegates.c: Re-generate.
9874         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9875         (mi_tsv_deleted): Likewise.
9876         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9877         * remote.c (remote_download_trace_state_variable): Change
9878         pointer to reference and adjust.
9879         * make-target-delegates (parse_argtypes): Handle references.
9880         (write_function_header): Likewise.
9881         (munge_type): Likewise.
9882
9883 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9884
9885         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9886         string_view-selftests.c.
9887         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9888         testsuite.
9889         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9890         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9891         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9892         * unittests/basic_string_view/element_access/char/1.cc:
9893         Likewise.
9894         * unittests/basic_string_view/element_access/char/empty.cc:
9895         Likewise.
9896         * unittests/basic_string_view/element_access/char/front_back.cc:
9897         Likewise.
9898         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9899         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9900         Likewise.
9901         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9902         Likewise.
9903         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9904         Likewise.
9905         * unittests/basic_string_view/operations/compare/char/1.cc:
9906         Likewise.
9907         * unittests/basic_string_view/operations/compare/char/13650.cc:
9908         Likewise.
9909         * unittests/basic_string_view/operations/copy/char/1.cc:
9910         Likewise.
9911         * unittests/basic_string_view/operations/data/char/1.cc:
9912         Likewise.
9913         * unittests/basic_string_view/operations/find/char/1.cc:
9914         Likewise.
9915         * unittests/basic_string_view/operations/find/char/2.cc:
9916         Likewise.
9917         * unittests/basic_string_view/operations/find/char/3.cc:
9918         Likewise.
9919         * unittests/basic_string_view/operations/find/char/4.cc:
9920         Likewise.
9921         * unittests/basic_string_view/operations/rfind/char/1.cc:
9922         Likewise.
9923         * unittests/basic_string_view/operations/rfind/char/2.cc:
9924         Likewise.
9925         * unittests/basic_string_view/operations/rfind/char/3.cc:
9926         Likewise.
9927         * unittests/basic_string_view/operations/substr/char/1.cc:
9928         Likewise.
9929         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9930         * unittests/string_view-selftests.c: New file.
9931
9932 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9933
9934         * unittests/basic_string_view/capacity/1.cc: New file.
9935         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9936         * unittests/basic_string_view/cons/char/1.cc: New file.
9937         * unittests/basic_string_view/cons/char/2.cc: New file.
9938         * unittests/basic_string_view/cons/char/3.cc: New file.
9939         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9940         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9941         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9942         * unittests/basic_string_view/element_access/char/1.cc: New file.
9943         * unittests/basic_string_view/element_access/char/2.cc: New file.
9944         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9945         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9946         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9947         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9948         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9949         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9950         * unittests/basic_string_view/include.cc: New file.
9951         * unittests/basic_string_view/inserters/char/1.cc: New file.
9952         * unittests/basic_string_view/inserters/char/2.cc: New file.
9953         * unittests/basic_string_view/inserters/char/3.cc: New file.
9954         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9955         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9956         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9957         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9958         * unittests/basic_string_view/literals/types.cc: New file.
9959         * unittests/basic_string_view/literals/values.cc: New file.
9960         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9961         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9962         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9963         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9964         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9965         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9966         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9967         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9968         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9969         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9970         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9971         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9972         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9973         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9974         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9975         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9976         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9977         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9978         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9979         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9980         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9981         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9982         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9983         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9984         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9985         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9986         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9987         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9988         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9989         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9990         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9991         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9992         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9993         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9994         * unittests/basic_string_view/operators/char/2.cc: New file.
9995         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9996         * unittests/basic_string_view/range_access/char/1.cc: New file.
9997         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9998         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9999         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10000         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10001         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10002         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10003         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10004         * unittests/basic_string_view/typedefs.cc: New file.
10005         * unittests/basic_string_view/types/1.cc: New file.
10006
10007 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10008
10009         * common/gdb_string_view.h: Remove libstdc++ implementation
10010         details, adjust to gdb reality.
10011         * common/gdb_string_view.tcc: Likewise.
10012         * cli/cli-script.c (struct string_view): Remove.
10013         (user_args) <m_args>: Change element type to gdb::string_view.
10014         (user_args::insert_args): Adjust.
10015
10016 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10017
10018         * common/gdb_string_view.h: New file.
10019         * common/gdb_string_view.tcc: New file.
10020
10021 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10022
10023         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10024         * configure: Re-generate.
10025
10026 2018-04-09  Pedro Alves  <palves@redhat.com>
10027
10028         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10029         (set_target_gdbarch): Call
10030         gdb::observers::architecture_changed.notify instead of
10031         observer_notify_architecture_changed.
10032
10033 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10034
10035         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10036         (do_restore_current_traceframe_cleanup): Remove.
10037         (restore_current_traceframe_cleanup_dtor): Remove.
10038         (make_cleanup_restore_current_traceframe): Remove.
10039         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10040         New.
10041         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10042         * infrun.c (fetch_inferior_event): Use
10043         scoped_restore_current_traceframe.
10044
10045 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10046
10047         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10048         Remove.
10049         <n_allocated_type_units>: Remove.
10050         <all_type_units>: Change to std::vector.
10051         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10052         to std::vector change.
10053         (dwarf2_per_objfile::get_cutu): Likewise.
10054         (dwarf2_per_objfile::get_tu): Likewise.
10055         (create_signatured_type_table_from_index): Likewise.
10056         (create_signatured_type_table_from_debug_names): Likewise.
10057         (dw2_symtab_iter_next): Likewise.
10058         (dw2_print_stats): Likewise.
10059         (dw2_expand_all_symtabs): Likewise.
10060         (dw2_expand_marked_cus): Likewise.
10061         (dw2_debug_names_iterator::next): Likewise.
10062         (dwarf2_initialize_objfile): Likewise.
10063         (add_signatured_type_cu_to_table): Likewise.
10064         (create_all_type_units): Likewise.
10065         (add_type_unit): Likewise.
10066         (struct tu_abbrev_offset): Add constructor.
10067         (build_type_psymtabs_1): Adjust to std::vector change.
10068         (print_tu_stats): Likewise.
10069         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10070         (write_debug_names): Likewise.
10071
10072 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10073
10074         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10075         Make an std::vector.
10076         <n_comp_units>: Remove.
10077         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10078         to std::vector change.
10079         (dwarf2_per_objfile::get_cutu): Likewise.
10080         (dwarf2_per_objfile::get_cu): Likewise.
10081         (create_cus_from_index): Likewise.
10082         (create_addrmap_from_index): Likewise.
10083         (create_addrmap_from_aranges): Likewise.
10084         (dwarf2_read_index): Likewise.
10085         (dw2_find_last_source_symtab): Likewise.
10086         (dw2_map_symtabs_matching_filename): Likewise.
10087         (dw2_symtab_iter_next): Likewise.
10088         (dw2_print_stats): Likewise.
10089         (dw2_expand_all_symtabs): Likewise.
10090         (dw2_expand_symtabs_with_fullname): Likewise.
10091         (dw2_expand_marked_cus): Likewise.
10092         (dw2_map_symbol_filenames): Likewise.
10093         (create_cus_from_debug_names): Likewise.
10094         (dwarf2_read_debug_names): Likewise.
10095         (dw2_debug_names_iterator::next): Likewise.
10096         (dwarf2_initialize_objfile): Likewise.
10097         (set_partial_user): Likewise.
10098         (dwarf2_build_psymtabs_hard): Likewise.
10099         (read_comp_units_from_section): Remove arguments, adjust to
10100         std::vector change.
10101         (create_all_comp_units): Adjust to std::vector and
10102         read_comp_units_from_section changes.
10103         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10104         change.
10105         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10106         (psyms_seen_size): Likewise.
10107         (write_gdbindex): Likewise.
10108         (write_debug_names): Likewise.
10109
10110 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10111
10112         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10113         with dwarf2_per_objfile.
10114         (create_cus_from_index): Likewise.
10115         (create_signatured_type_table_from_index): Likewise.
10116         (dwarf2_read_index): Likewise.
10117         (dwarf2_initialize_objfile): Likewise.
10118         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10119         per_cu rather than get_dwarf2_per_objfile.
10120
10121 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10122
10123         * dwarf2read.h (struct signatured_type): Forward declare.
10124         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10125         New methods.
10126         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10127         (dw2_get_cutu): ...this.
10128         (dwarf2_per_objfile::get_cu): Rename from...
10129         (dw2_get_cu): ...this.
10130         (dwarf2_per_objfile::get_tu): New.
10131         (create_addrmap_from_index): Adjust.
10132         (create_addrmap_from_aranges): Adjust.
10133         (dw2_find_last_source_symtab): Adjust.
10134         (dw2_map_symtabs_matching_filename): Adjust.
10135         (dw2_symtab_iter_next): Adjust.
10136         (dw2_print_stats): Adjust.
10137         (dw2_expand_all_symtabs): Adjust.
10138         (dw2_expand_symtabs_with_fullname): Adjust.
10139         (dw2_expand_marked_cus): Adjust.
10140         (dw_expand_symtabs_matching_file_matcher): Adjust.
10141         (dw2_map_symbol_filenames): Adjust.
10142         (dw2_debug_names_iterator::next): Adjust.
10143         (dwarf2_initialize_objfile): Adjust.
10144         (set_partial_user): Adjust.
10145         (dwarf2_build_psymtabs_hard): Adjust.
10146
10147 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10148
10149         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10150         Remove unused variables.
10151         (dw2_map_symtabs_matching_filename): Likewise.
10152         (dwarf2_record_block_ranges): Likewise.
10153         (dwarf2_read_addr_index): Likewise.
10154         (follow_die_offset): Likewise.
10155
10156 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10157
10158         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10159         to symbol_file_add_main.
10160
10161 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10162
10163         PR mi/22299
10164         * mi/mi-console.c (do_fputc_async_safe): New.
10165         (mi_console_file::write_async_safe): New.
10166         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10167         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10168         New.
10169         * ui-file.c (ui_file::putstrn): Adjust call to
10170         fputstrn_unfiltered.
10171         * utils.c (printchar): Replace do_fputs and do_fprintf
10172         parameters by do_fputc.
10173         (fputstr_filtered): Adjust call to printchar.
10174         (fputstr_unfiltered): Likewise.
10175         (fputstrn_filtered): Likewise.
10176         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10177         printchar.
10178         * utils.h (do_fputc_ftype): New typedef.
10179         (fputstrn_unfiltered): Add do_fputc parameter.
10180
10181 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10182
10183         * regformats/i386/i386-avx.dat: Remove.
10184
10185 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10186
10187         PR gdb/22979
10188         * amd64-tdep.c (amd64_none_init_abi): New function.
10189         (amd64_x32_none_init_abi): New function.
10190         (_initialize_amd64_tdep): Register handlers for x86-64 and
10191         x64_32 with GDB_OSABI_NONE.
10192         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10193         GDB_OSABI_NONE osabi.
10194
10195 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10196
10197         PR gdb/22980
10198         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10199         GDB_OSABI_NONE.
10200         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10201         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10202
10203 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10204
10205         * common/byte-vector.h (char_vector): New type.
10206         * target.h (target_read_alloc): Return
10207         gdb::optional<byte_vector>.
10208         (target_read_stralloc): Return gdb::optional<char_vector>.
10209         (target_get_osdata): Return gdb::optional<char_vector>.
10210         * target.c (target_read_alloc_1): Templatize.  Replacement
10211         manual memory management with vector.
10212         (target_read_alloc): Change return type, adjust.
10213         (target_read_stralloc): Change return type, adjust.
10214         (target_get_osdata): Change return type, adjust.
10215         * auxv.c (struct auxv_info) <length>: Remove.
10216         <data>: Change type to gdb::optional<byte_vector>.
10217         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10218         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10219         (target_auxv_search): Adjust.
10220         (fprint_target_auxv): Adjust.
10221         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10222         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10223         (linux_make_corefile_notes): Adjust.
10224         * osdata.c (get_osdata): Adjust.
10225         * remote.c (remote_get_threads_with_qxfer): Adjust.
10226         (remote_memory_map): Adjust.
10227         (remote_traceframe_info): Adjust.
10228         (btrace_read_config): Adjust.
10229         (remote_read_btrace): Adjust.
10230         (remote_pid_to_exec_file): Adjust.
10231         * solib-aix.c (solib_aix_get_library_list): Adjust.
10232         * solib-dsbt.c (decode_loadmap): Don't free buf.
10233         (dsbt_get_initial_loadmaps): Adjust.
10234         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10235         * solib-target.c (solib_target_current_sos): Adjust.
10236         * tracepoint.c (sdata_make_value): Adjust.
10237         * xml-support.c (xinclude_start_include): Adjust.
10238         (xml_fetch_content_from_file): Adjust.
10239         * xml-support.h (xml_fetch_another): Change return type.
10240         (xml_fetch_content_from_file): Change return type.
10241         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10242         * xml-tdesc.c (file_read_description_xml): Adjust.
10243         (fetch_available_features_from_target): Change return type.
10244         (target_fetch_description_xml): Adjust.
10245         (target_read_description_xml): Adjust.
10246
10247 2018-04-06  Tom Tromey  <tom@tromey.com>
10248
10249         * value.c (~value): Update.
10250         (struct value) <contents>: Now unique_xmalloc_ptr.
10251         (value_contents_bits_eq, allocate_value_contents)
10252         (value_contents_raw, value_contents_all_raw)
10253         (value_contents_for_printing, value_contents_for_printing_const)
10254         (set_value_enclosing_type): Update.
10255
10256 2018-04-06  Tom Tromey  <tom@tromey.com>
10257
10258         * value.c (range_s): Remove typedef, VEC.
10259         (struct range): Add operator<.
10260         (range_lessthan): Remove.
10261         (ranges_contain): Change type.
10262         (~value): Update.
10263         (struct value) <unavailable, optimized_out>: Now std::vector.
10264         (value_entirely_available)
10265         (value_entirely_covered_by_range_vector)
10266         (value_entirely_unavailable, value_entirely_optimized_out):
10267         Update.
10268         (insert_into_bit_range_vector): Change argument type.
10269         (find_first_range_overlap): Likewise.
10270         (struct ranges_and_idx, value_contents_bits_eq)
10271         (require_not_optimized_out, require_available): Update.
10272         (ranges_copy_adjusted): Change argument types.
10273         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10274
10275 2018-04-06  Tom Tromey  <tom@tromey.com>
10276
10277         * value.c (~value): Update.
10278         (struct value) <parent>: Now a value_ref_ptr.
10279         (value_parent, set_value_parent, value_address, value_copy):
10280         Update.
10281
10282 2018-04-06  Tom Tromey  <tom@tromey.com>
10283
10284         * value.c (struct value): Add constructor, destructor, and member
10285         initializers.
10286         (allocate_value_lazy, value_decref): Update.
10287
10288 2018-04-06  Tom Tromey  <tom@tromey.com>
10289
10290         * value.c (struct value) <released, next>: Remove.
10291         (all_values): Now a std::vector.
10292         (allocate_value_lazy): Update.
10293         (value_next): Remove.
10294         (value_mark, value_free_to_mark, release_value)
10295         (value_release_to_mark): Update.
10296
10297 2018-04-06  Tom Tromey  <tom@tromey.com>
10298
10299         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10300         (free_value_chain): Remove.
10301         * value.c (free_value_chain): Remove.
10302         (value_release_to_mark): Return a std::vector.
10303         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10304         std::vector.
10305         (check_condition): Update.
10306         * eval.c (fetch_subexp_value): Change "val_chain" to a
10307         std::vector.
10308         * breakpoint.c (update_watchpoint): Update.
10309         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10310
10311 2018-04-06  Tom Tromey  <tom@tromey.com>
10312
10313         * value.h (free_all_values): Remove.
10314         * value.c (free_all_values): Remove.
10315
10316 2018-04-06  Tom Tromey  <tom@tromey.com>
10317
10318         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10319         (value_history_chain, value_history_count): Remove.
10320         (value_history): New global.
10321         (record_latest_value, access_value_history, show_values)
10322         (preserve_values): Update.
10323
10324 2018-04-06  Tom Tromey  <tom@tromey.com>
10325
10326         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10327         * varobj.c (varobj_set_display_format, varobj_set_value)
10328         (install_default_visualizer, construct_visualizer)
10329         (install_new_value, ~varobj, varobj_get_value_type)
10330         (my_value_of_variable, varobj_editable_p): Update.
10331         * c-varobj.c (c_describe_child, c_value_of_variable)
10332         (cplus_number_of_children, cplus_describe_child): Update.
10333         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10334         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10335         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10336
10337 2018-04-06  Tom Tromey  <tom@tromey.com>
10338
10339         * printcmd.c (last_examine_address): Change type to
10340         value_ref_ptr.
10341         (do_examine, x_command): Update.
10342
10343 2018-04-06  Tom Tromey  <tom@tromey.com>
10344
10345         * value.c (release_value): Update.
10346         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10347         (struct bpstats) <val>: Now a value_ref_ptr.
10348         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10349         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10350         (~watchpoint, print_it_watchpoint, watch_command_1)
10351         (invalidate_bp_value_on_memory_change): Update.
10352
10353 2018-04-06  Tom Tromey  <tom@tromey.com>
10354
10355         * varobj.c (varobj_clear_saved_item)
10356         (update_dynamic_varobj_children, install_new_value, ~varobj):
10357         Update.
10358         * value.h (value_incref): Move declaration earlier.
10359         (value_decref): Rename from value_free.
10360         (struct value_ref_policy): New.
10361         (value_ref_ptr): New typedef.
10362         (struct value_deleter): Remove.
10363         (gdb_value_up): Remove typedef.
10364         (release_value): Change return type.
10365         (release_value_or_incref): Remove.
10366         * value.c (set_value_parent): Update.
10367         (value_incref): Change return type.
10368         (value_decref): Rename from value_free.
10369         (value_free_to_mark, free_all_values, free_value_chain): Update.
10370         (release_value): Return value_ref_ptr.
10371         (release_value_or_incref): Remove.
10372         (record_latest_value, set_internalvar, clear_internalvar):
10373         Update.
10374         * stack.c (info_frame_command): Don't call value_free.
10375         * python/py-value.c (valpy_dealloc, valpy_new)
10376         (value_to_value_object): Update.
10377         * printcmd.c (do_examine): Update.
10378         * opencl-lang.c (lval_func_free_closure): Update.
10379         * mi/mi-main.c (register_changed_p): Don't call value_free.
10380         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10381         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10382         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10383         value_free.
10384         * guile/scm-value.c (vlscm_free_value_smob)
10385         (vlscm_scm_from_value): Update.
10386         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10387         (frame_unwind_register_unsigned, get_frame_register_bytes)
10388         (put_frame_register_bytes): Don't call value_free.
10389         * findvar.c (address_from_register): Don't call value_free.
10390         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10391         * dwarf2loc.c (entry_data_value_free_closure)
10392         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10393         (dwarf2_evaluate_loc_desc_full): Update.
10394         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10395         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10396         (~watchpoint, watch_command_1)
10397         (invalidate_bp_value_on_memory_change): Update.
10398         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10399
10400 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10401
10402         PR gdb/23022
10403         * warning.m4: Add -Wno-error=deprecated-register.
10404         * configure: Re-generate.
10405
10406 2018-04-05  Tom Tromey  <tom@tromey.com>
10407
10408         * linespec.h: Remove include of "vec.h".
10409
10410 2018-04-05  Tom Tromey  <tom@tromey.com>
10411
10412         * linespec.c (typep): Remove typedef.
10413         (find_methods, find_superclass_methods): Take a std::vector.
10414         (find_method): Use std::vector.
10415
10416 2018-04-05  Tom Tromey  <tom@tromey.com>
10417
10418         * utils.c (compare_strings): Remove.
10419         * utils.h (compare_strings): Remove.
10420         * objc-lang.h (find_imps): Update.
10421         * objc-lang.c (find_methods): Take a std::vector.
10422         (uniquify_strings, find_imps): Likewise.
10423         * linespec.c (find_methods): Take a std::vector.
10424         (decode_objc): Use std::vector.
10425         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10426         a std::vector.
10427         (find_method, find_function_symbols): Use std::vector.
10428
10429 2018-04-05  Tom Tromey  <tom@tromey.com>
10430
10431         * completer.c (completion_tracker::completion_tracker): Remove
10432         cast.
10433         (completion_tracker::discard_completions): Likewise.
10434         * breakpoint.c (ambiguous_names_p): Remove cast.
10435         * ada-lang.c (_initialize_ada_language): Remove cast.
10436         * utils.h (streq): Update.
10437         (streq_hash): Add new declaration.
10438         * utils.c (streq): Return bool.
10439         (streq_hash): New function.
10440
10441 2018-04-05  Tom Tromey  <tom@tromey.com>
10442
10443         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10444         Remove a string copy.
10445
10446 2018-04-05  Tom Tromey  <tom@tromey.com>
10447
10448         * linespec.c (filter_results): Use std::vector.
10449         (decode_line_2, decode_line_full): Update.
10450
10451 2018-04-05  Tom Tromey  <tom@tromey.com>
10452
10453         * linespec.c (canonical_to_fullform): Return std::string.
10454         (filter_results): Update.
10455         (struct decode_line_2_item): Add constructor.
10456         <fullform, displayform>: Now std::string.
10457         (decode_line_2_compare_items): Now a std::sort comparator.
10458         (decode_line_2): Update.
10459
10460 2018-04-05  Tom Tromey  <tom@tromey.com>
10461
10462         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10463         (unexpected_linespec_error): Update.
10464         (linespec_parse_basic, parse_linespec): Update.
10465
10466 2018-04-05  Tom Tromey  <tom@tromey.com>
10467
10468         * linespec.c (linespec_parse_basic): Reindent.
10469
10470 2018-04-05  Tom Tromey  <tom@tromey.com>
10471
10472         * minsyms.h (iterate_over_minimal_symbols): Update.
10473         * minsyms.c (iterate_over_minimal_symbols): Take a
10474         gdb::function_view.
10475         * linespec.c (struct collect_minsyms): Remove.
10476         (compare_msyms): Now a std::sort comparator.
10477         (add_minsym): Add parameters.
10478         (search_minsyms_for_name): Update.  Use std::vector.
10479
10480 2018-04-03  Tom Tromey  <tom@tromey.com>
10481
10482         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10483         gdb::byte_vector.
10484
10485 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10486
10487         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10488
10489 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10490
10491         PR gdb/16959
10492         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10493         printing static type.
10494
10495 2018-04-01  Tom Tromey  <tom@tromey.com>
10496
10497         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10498         (rs6000_xfer_shared_libraries): Update.
10499
10500 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10501
10502         * common/gdb_vecs.h (char_ptr): Remove.
10503         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10504
10505 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10506
10507         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10508         with std::vector.
10509         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10510
10511 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10512
10513         * tracepoint.h (struct uploaded_tp): Initialize fields.
10514         <actions, step_actions, cmd_strings>: Change type to
10515         std::vector<char *>.
10516         * tracepoint.c (get_uploaded_tp): Allocate with new.
10517         (free_uploaded_tps): Free with delete.
10518         (parse_tracepoint_definition): Adjust to std::vector change.
10519         * breakpoint.c (read_uploaded_action): Likewise.
10520         (create_tracepoint_from_upload): Likewise.
10521         * ctf.c (ctf_write_uploaded_tp): Likewise.
10522         (SET_ARRAY_FIELD): Likewise.
10523         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10524
10525 2018-03-30  Tom Tromey  <tom@tromey.com>
10526
10527         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10528         std::unique_ptr.
10529         (svr4_keep_data_in_core): Update.
10530         (svr4_read_so_list): Update.
10531
10532 2018-03-30  Tom Tromey  <tom@tromey.com>
10533
10534         * windows-nat.c (handle_output_debug_string, handle_exception):
10535         Update.
10536         * target.h (target_read_string): Update.
10537         * target.c (target_read_string): Change "string" to
10538         unique_xmalloc_ptr.
10539         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10540         Update.
10541         * solib-frv.c (frv_current_sos): Update.
10542         * solib-dsbt.c (dsbt_current_sos): Update.
10543         * solib-darwin.c (darwin_current_sos): Update.
10544         * linux-thread-db.c (inferior_has_bug): Update.
10545         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10546         Update.  Remove alloca.
10547         * ada-lang.c (ada_main_name): Update.
10548
10549 2018-03-30  Tom Tromey  <tom@tromey.com>
10550
10551         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10552         (struct dwo_file_deleter): New.
10553         (dwo_file_up): New typedef.
10554         (open_and_init_dwo_file): Use dwo_file_up.
10555         (free_dwo_file_cleanup): Remove.
10556
10557 2018-03-30  Tom Tromey  <tom@tromey.com>
10558
10559         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10560         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10561
10562 2018-03-30  Tom Tromey  <tom@tromey.com>
10563
10564         * dwarf2read.c (class free_cached_comp_units): New class.
10565         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10566         (free_cached_comp_units): Remove function.
10567
10568 2018-03-30  Tom Tromey  <tom@tromey.com>
10569
10570         * utils.h (make_cleanup_unpush_target): Remove.
10571         * inf-ptrace.c (struct target_unpusher): New.
10572         (target_unpush_up) New typedef.
10573         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10574         target_unpush_up.
10575         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10576
10577 2018-03-27  Tom Tromey  <tom@tromey.com>
10578
10579         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10580
10581 2018-03-27  Pedro Alves  <palves@redhat.com>
10582             Tom Tromey  <tom@tromey.com>
10583
10584         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10585         destructor.  Now a class.
10586         (gdb_readline_wrapper_cleanup): Remove function.
10587         (gdb_readline_wrapper): Remove cleanups.
10588
10589 2018-03-27  Tom Tromey  <tom@tromey.com>
10590
10591         * typeprint.h (struct type_print_options) <local_typedefs,
10592         global_typedefs>: Remove "struct" keyword.
10593         (class typedef_hash_table): New class.
10594         (recursively_update_typedef_hash, add_template_parameters)
10595         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10596         (find_typedef_in_hash): Don't declare.
10597         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10598         (typedef_hash_table::recursively_update): Rename from
10599         recursively_update_typedef_hash.  Now a member.
10600         (typedef_hash_table::add_template_parameters): Rename from
10601         add_template_parameters.  Now a member.
10602         (typedef_hash_table::typedef_hash_table): Now a constructor;
10603         rename from create_typedef_hash.
10604         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10605         rename from free_typedef_hash.
10606         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10607         (do_free_global_table): Remove.
10608         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10609         from copy_type_recursive.
10610         (create_global_typedef_table): Remove.
10611         (typedef_hash_table::find_global_typedef): Now a member of
10612         typedef_hash_table.
10613         (typedef_hash_table::find_typedef): Rename from
10614         find_typedef_in_hash; now a member.
10615         (whatis_exp): Update.
10616         * extension.h (struct ext_lang_type_printers): Add constructor and
10617         destructor.
10618         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10619         declare.
10620         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10621         Now a constructor; rename from start_ext_lang_type_printers.
10622         (ext_lang_type_printers): Now a destructor; rename from
10623         free_ext_lang_type_printers.
10624         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10625         Update.
10626         (c_type_print_base_struct_union): Update.  Remove cleanups.
10627
10628 2018-03-27  Tom Tromey  <tom@tromey.com>
10629
10630         * dwarf-index-write.c: Include <cmath>.
10631
10632 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10633
10634         * NEWS: Add entry describing new "set|show varsize-limit" command.
10635         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10636         command.
10637         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10638         "set variable".
10639
10640 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10641
10642         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10643         dwarf-index-write.c
10644         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10645         * dwarf-index-common.c: New file.
10646         * dwarf-index-common.h: New file.
10647         * dwarf-index-write.c: New file.
10648         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10649         (struct dwarf2_section_info): Move from here.
10650         (dwarf2_section_info_def): Likewise.
10651         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10652         (offset_type): Likewise.
10653         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10654         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10655         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10656         (byte_swap): Likewise.
10657         (MAYBE_SWAP): Likewise.
10658         (dwarf2_per_cu_ptr): Likewise.
10659         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10660         (struct tu_stats): Likewise.
10661         (struct dwarf2_per_objfile): Likewise.
10662         (struct dwarf2_per_cu_data): Likewise.
10663         (struct signatured_type): Likewise.
10664         (sig_type_ptr): Likewise.
10665         (DEF_VEC_P (sig_type_ptr)): Likewise.
10666         (INDEX4_SUFFIX): Likewise.
10667         (INDEX5_SUFFIX): Likewise.
10668         (DEBUG_STR_SUFFIX): Likewise.
10669         (dwarf2_read_section): Make non-static.
10670         (mapped_index_string_hash): Move from here.
10671         (dwarf5_djb_hash): Likewise.
10672         (file_write): Likewise.
10673         (class data_buf): Likewise.
10674         (struct symtab_index_entry): Likewise.
10675         (struct mapped_symtab): Likewise.
10676         (find_slot): Likewise.
10677         (hash_expand): Likewise.
10678         (add_index_entry): Likewise.
10679         (uniquify_cu_indices): Likewise.
10680         (class c_str_view): Likewise.
10681         (class c_str_view_hasher): Likewise.
10682         (class vector_hasher): Likewise.
10683         (write_hash_table): Likewise.
10684         (psym_index_map): Likewise.
10685         (struct addrmap_index_data): Likewise.
10686         (add_address_entry): Likewise.
10687         (add_address_entry_worker): Likewise.
10688         (write_address_map): Likewise.
10689         (symbol_kind): Likewise.
10690         (write_psymbols): Likewise.
10691         (struct signatured_type_index_data): Likewise.
10692         (write_one_signatured_type): Likewise.
10693         (recursively_count_psymbols): Likewise.
10694         (recursively_write_psymbols): Likewise.
10695         (class debug_names): Likewise.
10696         (check_dwarf64_offsets): Likewise.
10697         (psyms_seen_size): Likewise.
10698         (write_gdbindex): Likewise.
10699         (write_debug_names): Likewise.
10700         (assert_file_size): Likewise.
10701         (write_psymtabs_to_index): Likewise.
10702         (save_gdb_index_command): Likewise.
10703         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10704         command.
10705         * dwarf2read.h: New file.
10706
10707 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10708
10709         PR gdb/22670
10710         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10711         symbol name if the CU's language stores symbol names in linkage
10712         format.
10713         * language.h (struct language_defn)
10714         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10715         all instances of this struct.
10716
10717 2018-03-26  Tom Tromey  <tom@tromey.com>
10718
10719         * stack.c (backtrace_command_1): Remove verbose code.
10720
10721 2018-03-26  Tom Tromey  <tom@tromey.com>
10722
10723         * python/py-framefilter.c (py_print_type): Don't catch
10724         exceptions.  Return void.
10725         (py_print_value): Likewise.
10726         (py_print_single_arg): Likewise.
10727         (enumerate_args): Don't catch exceptions.
10728         (py_print_args): Likewise.
10729         (py_print_frame): Likewise.
10730         (gdbpy_apply_frame_filter): Catch exceptions here.
10731
10732 2018-03-26  Tom Tromey  <tom@tromey.com>
10733
10734         * stack.c (_initialize_stack): Remove trailing newlines from help
10735         text.  Add "Usage" line to "backtrace" help.
10736
10737 2018-03-26  Tom Tromey  <tom@tromey.com>
10738
10739         PR python/16486:
10740         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10741
10742 2018-03-26  Tom Tromey  <tom@tromey.com>
10743
10744         * python/py-framefilter.c (py_print_single_arg): Return
10745         EXT_LANG_BT_ERROR from catch.
10746
10747 2018-03-26  Tom Tromey  <tom@tromey.com>
10748
10749         PR backtrace/15584:
10750         * stack.c (backtrace_command_1): Move some code into no-filters
10751         "if".
10752
10753 2018-03-26  Tom Tromey  <tom@tromey.com>
10754
10755         * python/py-framefilter.c (throw_quit_or_print_exception): New
10756         function.
10757         (gdbpy_apply_frame_filter): Use it.
10758
10759 2018-03-26  Tom Tromey  <tom@tromey.com>
10760
10761         PR cli/17716:
10762         * python/py-framefilter.c (py_print_type, py_print_value)
10763         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10764         RETURN_MASK_ERROR.
10765
10766 2018-03-26  Tom Tromey  <tom@tromey.com>
10767
10768         * python/py-framefilter.c (enumerate_args): Use
10769         gdb::unique_xmalloc_ptr.
10770
10771 2018-03-26  Tom Tromey  <tom@tromey.com>
10772
10773         * python/py-framefilter.c (py_print_frame): Return
10774         EXT_LANG_BT_OK.
10775         (gdbpy_apply_frame_filter): Update comment.
10776         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10777         Remove.
10778         <EXT_LANG_BT_NO_FILTERS>: Change value.
10779
10780 2018-03-26  Tom Tromey  <tom@tromey.com>
10781
10782         PR backtrace/15582:
10783         * stack.c (backtrace_command): Parse "hide" argument.
10784         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10785         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10786         constant.
10787
10788 2018-03-26  Tom Tromey  <tom@tromey.com>
10789
10790         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10791         add "flags".
10792         (backtrace_command): Remove "fulltrace", add "flags".
10793
10794 2018-03-26  Tom Tromey  <tom@tromey.com>
10795
10796         * stack.c (backtrace_command): Rewrite command line parsing.
10797
10798 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10799
10800         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10801
10802 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10803
10804         * filename-seen-cache.h: Add include guard.
10805
10806 2018-03-26  Keith Seitz  <keiths@redhat.com>
10807
10808         * symfile.c (place_section): Remove "struct" from section_addr_info
10809         in comment.
10810         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10811         "struct" keyword from section_addr_info.
10812
10813 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10814
10815         * regformats/regdef.h (reg): Add constructors.
10816
10817 2018-03-25  Pedro Alves  <palves@redhat.com>
10818
10819         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10820         if then/else bodies in var_func_name extraction.
10821
10822 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10823
10824         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10825         lookup_minimal_symbol() to find symbol entry.
10826         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10827
10828 2018-03-23  Keith Seitz  <keiths@redhat.com>
10829
10830         PR c++/22968
10831         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10832         nested type definitions for C++, too.
10833
10834 2018-03-23  Tom Tromey  <tom@tromey.com>
10835
10836         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10837         a typedef.
10838         (macho_register_oso): Remove.
10839         (macho_symtab_read): Take a std::vector.
10840         (oso_el_compare_name): Now a std::sort comparator.
10841         (macho_symfile_read_all_oso): Take a std::vector.
10842         (macho_symfile_read): Use std::vector.  Remove cleanups.
10843
10844 2018-03-22  Tom Tromey  <tom@tromey.com>
10845
10846         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10847         (record_full_goto_bookmark): Use std::string.
10848
10849 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10850
10851         PR tdep/18295
10852         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10853         a single mask.
10854
10855 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10856
10857         * rs6000-tdep.c (store_insn_p): New function.
10858         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10859         and cr_reg to their unshifted values. Use store_insn_p to
10860         match LR saves using either R1 or fdata->alloca_reg. Use
10861         store_insn_p to match CR saves. Set alloca_reg_offset
10862         when alloca_reg and framep are set. Remove lr_reg shift
10863         when assigning to fdata->lr_register.
10864
10865 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10866
10867         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10868         command line args instead of emitting a warning.
10869
10870 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10871
10872         * tracepoint.h (struct static_tracepoint_marker): Initialize
10873         fields, define default constructor, move constructor and move
10874         assignment, disable the rest.
10875         <str_id, extra>: Make std::string.
10876         (release_static_tracepoint_marker): Remove.
10877         (free_current_marker): Remove.
10878         * tracepoint.c (free_current_marker): Remove.
10879         (parse_static_tracepoint_marker_definition): Adjust to
10880         std::string, use new hex2str overload.
10881         (release_static_tracepoint_marker): Remove.
10882         (print_one_static_tracepoint_marker): Get marker by reference
10883         and adjust to std::string.
10884         (info_static_tracepoint_markers_command): Adjust to std::vector
10885         changes
10886         * target.h (static_tracepoint_marker_p): Remove typedef.
10887         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10888         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10889         bool.
10890         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10891         * target-debug.h
10892         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10893         (target_debug_print_std_vector_static_tracepoint_marker): New.
10894         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10895         to...
10896         (target_debug_print_static_tracepoint_marker_p): ... this.
10897         * target-delegates.c: Re-generate.
10898         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10899         Make std::string.
10900         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10901         (decode_static_tracepoint_spec): Adjust to std::vector.
10902         (tracepoint_print_one_detail): Adjust to std::string.
10903         (strace_marker_decode_location): Adjust to std::string.
10904         (update_static_tracepoint): Adjust to std::string, remove call
10905         to release_static_tracepoint_marker.
10906         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10907         Adjust to std::vector.
10908         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10909         (remote_static_tracepoint_markers_by_strid): Adjust to
10910         std::vector.
10911         * common/rsp-low.h (hex2str): New overload with explicit count
10912         of bytes.
10913         * common/rsp-low.c (hex2str): New overload with explicit count
10914         of bytes.
10915         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10916         (_initialize_rsp_low_selftests): Add test_hex2str test.
10917         * unittests/tracepoint-selftests.c
10918         (test_parse_static_tracepoint_marker_definition): Adjust to
10919         std::string.
10920
10921 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10922
10923         * tracepoint.c (parse_static_tracepoint_marker_definition):
10924         Consider case where the definition is followed by more
10925         definitions.
10926         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10927         tracepoint-selftests.c.
10928         * unittests/tracepoint-selftests.c: New.
10929
10930 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10931
10932         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10933         Carvalho.
10934
10935 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10936
10937         * symtab.c (find_pc_sect_line): fixed indentation.
10938
10939 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10940
10941         * symtab.c (find_pc_sect_line): now uses binary search.
10942
10943 2018-03-19  Tom Tromey  <tom@tromey.com>
10944
10945         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10946         "IDENT" production.
10947
10948 2018-03-19  Pedro Alves  <palves@redhat.com>
10949             Tom Tromey  <tom@tromey.com>
10950
10951         * unittests/observable-selftests.c: New file.
10952         * common/observable.h: New file.
10953         * observable.h: New file.
10954         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10955         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10956         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10957         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10958         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10959         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10960         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10961         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10962         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10963         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10964         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10965         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10966         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10967         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10968         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10969         tui/tui-interp.c, valops.c: Update all users.
10970         * tui/tui-hooks.c (tui_bp_created_observer)
10971         (tui_bp_deleted_observer, tui_bp_modified_observer)
10972         (tui_inferior_exit_observer, tui_before_prompt_observer)
10973         (tui_normal_stop_observer, tui_register_changed_observer):
10974         Remove.
10975         (tui_observers_token): New global.
10976         (attach_or_detach, tui_attach_detach_observers): New functions.
10977         (tui_install_hooks, tui_remove_hooks): Use
10978         tui_attach_detach_observers.
10979         * record-btrace.c (record_btrace_thread_observer): Remove.
10980         (record_btrace_thread_observer_token): New global.
10981         * observer.sh: Remove.
10982         * observer.c: Rename to observable.c.
10983         * observable.c (namespace gdb_observers): Define new objects.
10984         (observer_debug): Move into gdb_observers namespace.
10985         (struct observer, struct observer_list, xalloc_observer_list_node)
10986         (xfree_observer_list_node, generic_observer_attach)
10987         (generic_observer_detach, generic_observer_notify): Remove.
10988         (_initialize_observer): Update.
10989         Don't include observer.inc.
10990         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10991         (clean mostlyclean): Likewise.
10992         (observer.h, observer.inc): Remove targets.
10993         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10994         (COMMON_SFILES): Use observable.c, not observer.c.
10995         * .gitignore: Remove observer.h.
10996
10997 2018-03-18  Tom Tromey  <tom@tromey.com>
10998
10999         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11000         gdb::def_vector.
11001         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11002
11003 2018-03-17  Tom Tromey  <tom@tromey.com>
11004
11005         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11006
11007 2018-03-17  Tom Tromey  <tom@tromey.com>
11008
11009         * target.c (class scoped_target_fd): New.
11010         (target_fileio_close_cleanup): Remove.
11011         (target_fileio_read_alloc_1): Use scoped_target_fd.
11012
11013 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11014
11015         * silent-rules.mk: New.
11016         * Makefile.in: Include silent-rules.mk
11017         (srcdir, VPATH, top_srcdir): Move up.
11018         (COMPILE): Add ECHO_CXX.
11019         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11020         (init.c): Add ECHO_INIT_C.
11021         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11022         (version.c): Add ECHO_GEN.
11023         (printcmd.o): Add ECHO_CXX.
11024         (target-float.o): Add ECHO_CXX.
11025         (ada-exp.o): Add ECHO_CXX.
11026         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11027         (insight$(EXEEXT)): Add ECHO_CXXLD.
11028         * gnulib/configure.ac: Add AM_SILENT_RULES.
11029         * gnulib/aclocal.m4: Re-generate.
11030         * gnulib/configure: Re-generate.
11031         * gnulib/import/Makefile.in: Re-generate.
11032
11033 2018-03-16  Tom Tromey  <tom@tromey.com>
11034
11035         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11036         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11037         * utils.c (do_free_section_addr_info)
11038         (make_cleanup_free_section_addr_info): Remove.
11039         * symfile.h (struct other_sections): Add constructor.
11040         (struct section_addr_info): Remove.
11041         (section_addr_info): New typedef.
11042         (struct sym_fns) <sym_offsets>: Change type of parameter.
11043         (build_section_addr_info_from_objfile)
11044         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11045         (default_symfile_offsets, symbol_file_add)
11046         (symbol_file_add_from_bfd)
11047         (build_section_addr_info_from_section_table): Update.
11048         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11049         * symfile.c (alloc_section_addr_info): Remove.
11050         (build_section_addr_info_from_section_table): Change return type.
11051         Update.
11052         (build_section_addr_info_from_bfd)
11053         (build_section_addr_info_from_objfile): Likewise.
11054         (free_section_addr_info): Remove.
11055         (relative_addr_info_to_section_offsets): Change type of "addrs".
11056         (addrs_section_compar): Now a std::sort comparator.
11057         (addrs_section_sort): Change return type.
11058         (addr_info_make_relative): Change type of "addrs".  Update.
11059         (default_symfile_offsets, syms_from_objfile_1)
11060         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11061         (symbol_file_add_separate): Update.
11062         (symbol_file_add): Change type of "addrs".  Update.
11063         (add_symbol_file_command): Update.  Remove cleanups.
11064         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11065         cleanups.
11066         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11067         * solib.c (solib_read_symbols): Update.
11068         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11069         * machoread.c (macho_symfile_offsets): Update.
11070         * jit.c (jit_bfd_try_read_symtab): Update.
11071
11072 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11073
11074         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11075         unittests/utils-selftests.c.
11076         * unittests/utils-selftests.c: New file.
11077
11078 2018-03-14  Tom Tromey  <tom@tromey.com>
11079
11080         PR cli/14977:
11081         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11082         for NULL.
11083
11084 2018-03-14  Tom Tromey  <tom@tromey.com>
11085
11086         PR cli/19918:
11087         * printcmd.c (printf_pointer): Allow "-" in format.
11088
11089 2018-03-14  Tom Tromey  <tom@tromey.com>
11090
11091         * printcmd.c (_initialize_printcmd): Add usage to printf.
11092
11093 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11094
11095         * MAINTAINERS: Update my email address.
11096
11097 2018-03-13  Tom Tromey  <tom@tromey.com>
11098
11099         * machoread.c (macho_check_dsym): Change filenamep to a
11100         std::string*.
11101         (macho_symfile_read): Update.
11102         * symfile.c (load_command): Use std::string.
11103
11104 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11105
11106         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11107         to error message string.
11108         (riscv_register_name): Use xsnprintf instead of sprintf.
11109         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11110         internal_error.
11111         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11112         error.
11113         (riscv_push_dummy_call): Likewise.
11114
11115 2018-03-12  Tom Tromey  <tom@tromey.com>
11116
11117         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11118         Use gdb::byte_vector.
11119         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11120
11121 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11122
11123         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11124         parameter type to readable_regcache.
11125         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11126         the declaration.
11127
11128 2018-03-11  Tom Tromey  <tom@tromey.com>
11129
11130         * dwarf2read.c (struct nextfield): Add initializers.
11131         (struct nextfnfield): Remove.
11132         (struct fnfieldlist): Add initializers.  Remove "length" and
11133         "head", use std::vector.
11134         (struct decl_field_list): Remove.
11135         (struct field_info): Add initializers.
11136         <fields, baseclasses>: Now std::vector.
11137         <nbaseclasses, nfnfields, typedef_field_list_count,
11138         nested_types_list_count>: Remove.
11139         (dwarf2_add_field, dwarf2_add_type_defn)
11140         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11141         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11142         (process_structure_scope): Update.
11143
11144 2018-03-11  Tom Tromey  <tom@tromey.com>
11145
11146         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11147         for use by std::sort.
11148         (build_type_psymtabs_1): Use std::vector.
11149
11150 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11151
11152         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11153         and LIBMPFR in the printed configuration.
11154
11155 2018-03-08  Tom Tromey  <tom@tromey.com>
11156
11157         * source.c (get_filename_and_charpos): Use scoped_fd.
11158         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11159         (procfs_pidlist): Likewise.
11160         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11161         (iterate_over_mappings): Likewise.
11162
11163 2018-03-08  Tom Tromey  <tom@tromey.com>
11164
11165         * infcall.c (struct call_return_meta_info)
11166         <stack_temporaries_enabled>: Remove.
11167         (get_call_return_value, call_function_by_hand_dummy): Update.
11168         * thread.c (disable_thread_stack_temporaries): Remove.
11169         (enable_thread_stack_temporaries): Remove.
11170         (thread_stack_temporaries_enabled_p): Return bool.
11171         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11172         (get_last_thread_stack_temporary): Update.
11173         * eval.c (evaluate_subexp): Update.
11174         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11175         class, not a function.
11176         (value_ptr, value_vec): Remove typedefs.
11177         (class thread_info) <stack_temporaries_enabled>: Now bool.
11178         <stack_temporaries>: Now a std::vector.
11179         (thread_stack_temporaries_enabled_p)
11180         (value_in_thread_stack_temporaries): Return bool.
11181
11182 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11183
11184         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11185         (getpkt_or_notif_sane_1): Likewise.
11186
11187 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11188
11189         * build-id.c (build_id_to_debug_bfd): Use std::string.
11190
11191 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11192
11193         * build-id.c (find_separate_debug_file_by_buildid): Return
11194         std::string.
11195         * build-id.h (find_separate_debug_file_by_buildid): Return
11196         std::string.
11197         * coffread.c (coff_symfile_read): Adjust to std::string.
11198         * elfread.c (elf_symfile_read): Adjust to std::string.
11199         * symfile.c (separate_debug_file_exists): Change parameter to
11200         std::string.
11201         (find_separate_debug_file): Return std::string.
11202         (find_separate_debug_file_by_debuglink): Return std::string.
11203         * symfile.h (find_separate_debug_file_by_debuglink): Return
11204         std::string.
11205
11206 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11207
11208         * common/xml-utils.c (xml_escape_text): Move code to...
11209         (xml_escape_text_append): ... this new function.
11210         * common/xml-utils.h (xml_escape_text_append): New declaration.
11211         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11212         New function.
11213         (_initialize_xml_utils): register test_xml_escape_text_append as
11214         a selftest.
11215
11216 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11217
11218         * defs.h: Remove MAX_REGISTER_SIZE.
11219         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11220         asserts.
11221         * python/py-unwind.c (pyuw_sniffer): Likewise.
11222
11223 2018-03-07  Tom Tromey  <tom@tromey.com>
11224
11225         * linux-tdep.c (linux_info_proc): Update.
11226         * target.h (struct target_ops) <to_fileio_readlink>: Return
11227         optional<string>.
11228         (target_fileio_readlink): Return optional<string>.
11229         * remote.c (remote_hostio_readlink): Return optional<string>.
11230         * inf-child.c (inf_child_fileio_readlink): Return
11231         optional<string>.
11232         * target.c (target_fileio_readlink): Return optional<string>.
11233
11234 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11235
11236         * regcache.c (cooked_read_test): Add riscv to the list of
11237         architectures that have a save_reggroup.
11238
11239 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11240
11241         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11242         value is not a dynamic class object.
11243
11244 2018-03-06  Tom Tromey  <tom@tromey.com>
11245
11246         * rust-exp.y: Formatting fixes.
11247
11248 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11249
11250         * riscv-tdep.c (riscv_register_name): Remove target description
11251         support.
11252         (riscv_gdbarch_init): Remove target description check.
11253
11254 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11255
11256         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11257         comment.
11258         * riscv-tdep.h: Likewise.
11259
11260 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11261
11262         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11263         (riscv_pseudo_register_write): Delete.
11264         (riscv_gdbarch_init): Remove all use of pseudo registers.
11265
11266 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11267
11268         * record-btrace.c (btrace_print_lines): Replace cleanup
11269         parameter with RAII equivalents.
11270         (btrace_insn_history): Replace cleanup with RAII equivalents.
11271         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11272         make_cleanup_ui_out_tuple_begin_end): Remove.
11273         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11274         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11275         make_cleanup_ui_out_list_begin_end): Remove.
11276
11277 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11278
11279         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11280         parameter types to std::vector.  Use bool.
11281         (record_btrace_wait): Replace VEC(tp_t) with
11282         std::vector<thread_info *>.
11283         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11284
11285 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11286
11287         * record-btrace.c (record_btrace_disable_callback): Remove.
11288         (struct scoped_btrace_disable): New.
11289         (record_btrace_open): Use scoped_btrace_disable.
11290
11291 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11292
11293         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11294         reading values from registers.
11295
11296 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11297
11298         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11299         where appropriate.
11300
11301 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11302
11303         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11304         change parameter type.  Use GDB's print functions, and use
11305         core_addr_to_string where appropriate.
11306         (riscv_push_dummy_call): Use core_addr_to_string where
11307         appropriate, update call to riscv_print_arg_location, and reindent
11308         a few lines.
11309         (riscv_return_value): Update call to riscv_print_arg_location.
11310
11311 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11312             Tim Newsome <tim@sifive.com>
11313             Albert Ou <a0u@eecs.berkeley.edu>
11314             Darius Rad <darius@bluespec.com>
11315
11316         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11317         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11318         (ALLDEPFILES): Add riscv-tdep.c
11319         * configure.tgt: Add riscv support.
11320         * riscv-tdep.c: New file.
11321         * riscv-tdep.h: New file.
11322         * NEWS: Mention new target.
11323         * MAINTAINERS: Add entry for riscv.
11324
11325 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11326
11327         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11328         fields within aggregates.
11329
11330 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11331
11332         * record-btrace.c (btrace_print_lines): Change type of flags to
11333         gdb_disassembly_flags.
11334
11335 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11336
11337         * fbsd-nat.c: Include "inf-ptrace.h".
11338         (USE_SIGTRAP_SIGINFO): Conditionally define.
11339         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11340         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11341         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11342         function.
11343         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11344         Likewise.
11345         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11346         Likewise.
11347         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11348         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11349         "supports_stopped_by_hw_breakpoint" target methods.
11350
11351 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11352
11353         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11354         * fbsd-nat.c (debug_fbsd_nat): New variable.
11355         (show_fbsd_nat_debug): New function.
11356         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11357         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11358
11359 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11360
11361         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11362         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11363         prototype.
11364         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11365         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11366         method.
11367
11368 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11369
11370         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11371         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11372
11373 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11374
11375         * charset.c (struct charset_vector): New.
11376         (charsets): Change type to charset_vector.
11377         (find_charset_names): Adjust.
11378         (add_one): Adjust.
11379         (_initialize_charset): Adjust.
11380
11381 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11382
11383         * progspace.h (struct program_space) <deleted_solibs>: Change
11384         type to std::vector<std::string>.
11385         * progspace.c (clear_program_space_solib_cache): Adjust.
11386         * breakpoint.c (print_solib_event): Adjust.
11387         (check_status_catch_solib): Adjust.
11388         * solib.c (update_solib_list): Adjust.
11389         * ui-out.h (class ui_out) <field_string>: New overload.
11390         * ui-out.c (ui_out::field_string): New overload.
11391
11392 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11393
11394         * progspace.h (struct program_space): Add constructor and
11395         destructor, initialize fields.
11396         (add_program_space): Remove.
11397         * progspace.c (add_program_space): Rename to...
11398         (program_space::program_space): ... this.
11399         (release_program_space): Rename to...
11400         (program_space::~program_space): ... this.
11401         (delete_program_space): Use delete to delete program_space.
11402         (initialize_progspace): Use new to allocate program_space.
11403         * inferior.c (add_inferior_with_spaces): Likewise.
11404         (clone_inferior_command): Likewise.
11405         * infrun.c (follow_fork_inferior): Likewise.
11406         (handle_vfork_child_exec_or_exit): Likewise.
11407
11408 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11409
11410         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11411         (delim_string_to_char_ptr_vec): Return std::vector of
11412         gdb::unique_xmalloc_ptr.
11413         (dirnames_to_char_ptr_vec_append): Take std::vector of
11414         gdb::unique_xmalloc_ptr.
11415         (dirnames_to_char_ptr_vec): Return std::vector of
11416         gdb::unique_xmalloc_ptr.
11417         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11418         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11419         (delim_string_to_char_ptr_vec): Return an std::vector of
11420         gdb::unique_xmalloc_ptr, adjust the code.
11421         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11422         gdb::unique_xmalloc_ptr, adjust the code.
11423         (dirnames_to_char_ptr_vec): Return an std::vector of
11424         gdb::unique_xmalloc_ptr, adjust the code.
11425         * auto-load.c (auto_load_safe_path_vec): Change type to
11426         std::vector of gdb::unique_xmalloc_ptr.
11427         (auto_load_expand_dir_vars): Return an std::vector of
11428         gdb::unique_xmalloc_ptr, adjust the code.
11429         (auto_load_safe_path_vec_update): Adjust.
11430         (filename_is_in_auto_load_safe_path_vec): Adjust.
11431         (auto_load_objfile_script_1): Adjust.
11432         * build-id.c (build_id_to_debug_bfd): Adjust.
11433         * linux-thread-db.c (thread_db_load_search): Adjust.
11434         * source.c (add_path): Adjust.
11435         (openp): Adjust.
11436         * symfile.c (find_separate_debug_file): Adjust.
11437         * utils.c (do_free_char_ptr_vec): Remove.
11438         (make_cleanup_free_char_ptr_vec): Remove.
11439
11440 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11441
11442         PR gdb/22907
11443         * common/pathstuff.c: Conditionally include "<windows.h>".
11444
11445 2018-03-01  Georg Sauthoff  <mail@georg.so>
11446
11447         PR gdb/22888
11448         * gcore.in: Quote variables and switch interpreter to bash.
11449
11450 2018-03-01  Tom Tromey  <tom@tromey.com>
11451
11452         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11453         assertion.  Add assertion for discriminant_index.
11454         (quirk_rust_enum): Use correct base type name in univariant case.
11455
11456 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11457
11458         * record.c (get_call_history_modifiers): Return a
11459         record_print_flags.
11460         (cmd_record_call_history): Adjust.
11461         * record-btrace.c (record_btrace_call_history): Adjust.
11462         (record_btrace_call_history_range): Adjust.
11463         (record_btrace_call_history_from): Adjust.
11464         * target-debug.h (target_debug_print_record_print_flags): New.
11465         * target-delegates.c: Re-generate.
11466         * target.c (target_call_history): Change flags type.
11467         (target_call_history_from): Likewise.
11468         (target_call_history_range): Likewise.
11469         * target.h (struct target_ops) <target_call_history>: Likewise.
11470         (target_call_history_from): Likewise.
11471         (target_call_history_range): Likewise.
11472
11473 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11474             Simon Marchi  <simon.marchi@polymtl.ca>
11475
11476         * common/common-utils.c: Include "sys/stat.h".
11477         (is_regular_file): Move here from "source.c"; change return
11478         type to "bool".
11479         * common/common-utils.h (is_regular_file): New prototype.
11480         * common/pathstuff.c (contains_dir_separator): New function.
11481         * common/pathstuff.h (contains_dir_separator): New prototype.
11482         * source.c: Don't include "sys/stat.h".
11483         (is_regular_file): Move to "common/common-utils.c".
11484
11485 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11486
11487         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11488         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11489         * auto-load.c: Include "common/pathstuff.h".
11490         * common/common-def.h (current_directory): Move here.
11491         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11492         function.
11493         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11494         prototype.
11495         * common/pathstuff.c: New file.
11496         * common/pathstuff.h: New file.
11497         * compile/compile.c: Include "common/pathstuff.h".
11498         * defs.h (current_directory): Move to "common/common-defs.h".
11499         * dwarf2read.c: Include "common/pathstuff.h".
11500         * exec.c: Likewise.
11501         * guile/scm-safe-call.c: Likewise.
11502         * linux-thread-db.c: Likewise.
11503         * main.c: Likewise.
11504         * nto-tdep.c: Likewise.
11505         * objfiles.c: Likewise.
11506         * source.c: Likewise.
11507         * symtab.c: Likewise.
11508         * utils.c: Include "common/pathstuff.h".
11509         (gdb_realpath): Move to "common/pathstuff.c".
11510         (gdb_realpath_keepfile): Likewise.
11511         (gdb_abspath): Likewise.
11512         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11513         (gdb_realpath_keepfile): Likewise.
11514         (gdb_abspath): Likewise.
11515
11516 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11517
11518         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11519         wildcard process pid for super_resume for kernels with a
11520         specific bug.
11521
11522 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11523
11524         * compile/compile.c (get_args): Add additional comments
11525         explaining function.
11526
11527 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11528             Tom Tromey  <tom@tromey.com>
11529
11530         * target.h (memory_write_request_s): Remove typedef.  Don't define
11531         VEC.
11532         (target_write_memory_blocks): Change argument to std::vector.
11533         (struct memory_write_request): Add constructor.
11534         * target-memory.c (compare_block_starting_address): Return bool.
11535         Change argument types.
11536         (claim_memory): Change arguments to use std::vector.
11537         (split_regular_and_flash_blocks, blocks_to_erase)
11538         (compute_garbled_blocks): Likewise.
11539         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11540         (target_write_memory_blocks): Change argument to std::vector.
11541         * symfile.c (struct load_section_data): Add constructor and
11542         destructor.  Use std::vector for "requests".
11543         (struct load_progress_data): Add initializers.
11544         (load_section_callback): Update.  Use "new".
11545         (clear_memory_write_data): Remove.
11546         (generic_load): Update.
11547
11548 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11549
11550         * arch/aarch64.h: Use common/tdesc.h.
11551
11552 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11553
11554         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11555         architecture with a 64-bit ABI.
11556
11557 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11558
11559         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11560         ahead of target description loading.
11561
11562 2018-02-26  Tom Tromey  <tom@tromey.com>
11563
11564         * stack.c (backtrace_command_1): Update.
11565         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11566         of "flags".
11567         * python/py-framefilter.c (py_print_frame)
11568         (gdbpy_apply_frame_filter): Change type of "flags".
11569         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11570         of "flags".
11571         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11572         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11573         * extension.h (enum frame_filter_flag): Rename from
11574         frame_filter_flags.
11575         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11576         (apply_ext_lang_frame_filter): Change type of "flags".
11577         * extension.c (apply_ext_lang_frame_filter): Change type of
11578         "flags".
11579         * extension-priv.h (struct extension_language_ops)
11580         <apply_frame_filter>: Change type of "flags".
11581
11582 2018-02-26  Tom Tromey  <tom@tromey.com>
11583
11584         PR python/16497:
11585         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11586         off-by-one in py_end computation.
11587         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11588         PRINT_MORE_FRAMES.
11589         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11590         constant.
11591
11592 2018-02-26  Tom Tromey  <tom@tromey.com>
11593
11594         * dwarf2read.c (struct variant_field): New.
11595         (struct nextfield) <variant>: New field.
11596         (dwarf2_add_field): Handle DW_TAG_variant_part.
11597         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11598         discriminated union.
11599         (read_structure_type): Handle DW_TAG_variant_part.
11600         (handle_struct_member_die): New function, extracted from
11601         process_structure_scope.  Handle DW_TAG_variant.
11602         (process_structure_scope): Handle discriminated unions.  Call
11603         handle_struct_member_die.
11604
11605 2018-02-26  Tom Tromey  <tom@tromey.com>
11606
11607         * rust-lang.h (rust_last_path_segment): Declare.
11608         * rust-lang.c (rust_last_path_segment): Now public.  Change
11609         contract.
11610         (struct disr_info): Remove.
11611         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11612         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11613         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11614         (rust_enum_p, rust_enum_variant): New function.
11615         (rust_underscore_fields): Remove "offset" parameter.
11616         (rust_print_enum): New function.
11617         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11618         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11619         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11620         enums.
11621         (rust_internal_print_type): New function, from rust_print_type.
11622         Remove enum code.
11623         (rust_print_type): Call rust_internal_print_type.
11624         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11625         Update enum handling.
11626         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11627         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11628         (rust_union_quirks): New functions.
11629         (process_full_comp_unit, process_full_type_unit): Call
11630         rust_union_quirks.
11631         (process_structure_scope): Update rust_unions if necessary.
11632
11633 2018-02-26  Tom Tromey  <tom@tromey.com>
11634
11635         * value.h (value_union_variant): Declare.
11636         * valops.c (value_union_variant): New function.
11637         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11638         (struct discriminant_info): New.
11639         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11640         enumerator.
11641         (struct main_type) <flag_discriminated_union>: New field.
11642
11643 2018-02-26  Tom Tromey  <tom@tromey.com>
11644
11645         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11646         unittests/unpack-selftests.c.
11647         * unittests/unpack-selftests.c: New file.
11648         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11649
11650 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11651
11652         * dwarf2read.c (struct partial_die_info) <read>: New method.
11653         (read_partial_die): Remove the declaration.
11654         (load_partial_dies): Update.
11655         (partial_die_info::partial_die_info):
11656         (read_partial_die): Change it to partial_die_info::read.
11657
11658 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11659
11660         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11661         (fixup_partial_die): Remove declaration.
11662         (scan_partial_symbols): Update.
11663         (partial_die_parent_scope): Likewise.
11664         (partial_die_full_name): Likewise.
11665         (fixup_partial_die): Change it to partial_die_info::fixup.
11666
11667 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11668
11669         * dwarf2read.c (read_partial_die): Update the declaration.
11670         (load_partial_dies): Caller update.
11671         (read_partial_die): Remove one argument abbrev_len.
11672
11673 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11674
11675         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11676         assignment operator.
11677         (load_partial_dies): Use ctor and copy ctor.
11678         (read_partial_die): Update.
11679         (dwarf2_cu::find_partial_die): Use ctor.
11680
11681 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11682
11683         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11684         (find_partial_die_in_comp_unit): Change it to
11685         dwarf2_cu::find_partial_die.
11686         (find_partial_die): Update.
11687
11688 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11689
11690         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11691         is NULL.
11692
11693 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11694
11695         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11696
11697 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11698
11699         * arch/amd64.h: Use common/tdesc.h.
11700         * arch/i386.c: Likewise.
11701         * arch/i386.h: Likewise.
11702         * arch/tic6x.c: Likewise.
11703         * arch/tdesc.h: Move file from here...
11704         * common/tdesc.h: ...to here.
11705         * features/aarch64-core.c: Regenerate.
11706         * features/aarch64-fpu.c: Regenerate.
11707         * features/i386/32bit-avx.c: Regenerate.
11708         * features/i386/32bit-avx512.c: Regenerate.
11709         * features/i386/32bit-core.c: Regenerate.
11710         * features/i386/32bit-linux.c: Regenerate.
11711         * features/i386/32bit-mpx.c: Regenerate.
11712         * features/i386/32bit-pkeys.c: Regenerate.
11713         * features/i386/32bit-sse.c: Regenerate.
11714         * features/i386/64bit-avx.c: Regenerate.
11715         * features/i386/64bit-avx512.c: Regenerate.
11716         * features/i386/64bit-core.c: Regenerate.
11717         * features/i386/64bit-linux.c: Regenerate.
11718         * features/i386/64bit-mpx.c: Regenerate.
11719         * features/i386/64bit-pkeys.c: Regenerate.
11720         * features/i386/64bit-segments.c: Regenerate.
11721         * features/i386/64bit-sse.c: Regenerate.
11722         * features/i386/x32-core.c: Regenerate.
11723         * features/tic6x-c6xp.c: Regenerate.
11724         * features/tic6x-core.c: Regenerate.
11725         * features/tic6x-gp.c: Regenerate.
11726         * target-descriptions.c: Use common/tdesc.h.
11727         * target-descriptions.h: Likewise.
11728
11729 2018-02-24  Tom Tromey  <tom@tromey.com>
11730
11731         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11732         (try_thread_db_load_from_dir, thread_db_load_search): Use
11733         std::string.
11734         (info_auto_load_libthread_db_compare): Return bool.  Change
11735         argument types.
11736         (info_auto_load_libthread_db): Use std::vector, std::string.
11737         Remove cleanups.
11738
11739 2018-02-24  Tom Tromey  <tom@tromey.com>
11740
11741         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11742         std::string.
11743         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11744         std::string*.
11745         * gdbarch.c: Rebuild.
11746         * gdbarch.h: Rebuild.
11747         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11748         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11749         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11750         std::string*.
11751
11752 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11753
11754         * gdbtypes.h (sect_offset): Change type to uint64_t.
11755         (sect_offset_str): New function.
11756         * dwarf2read.c (create_addrmap_from_aranges): Use
11757         sect_offset_str.
11758         (error_check_comp_unit_head): Likewise.
11759         (create_debug_type_hash_table): Likewise.
11760         (read_cutu_die_from_dwo): Likewise.
11761         (init_cutu_and_read_dies): Likewise.
11762         (init_cutu_and_read_dies_no_follow): Likewise.
11763         (process_psymtab_comp_unit_reader): Likewise.
11764         (partial_die_parent_scope): Likewise.
11765         (peek_die_abbrev): Likewise.
11766         (process_queue): Likewise.
11767         (dwarf2_physname): Likewise.
11768         (read_namespace_alias): Likewise.
11769         (read_import_statement): Likewise.
11770         (create_dwo_cu_reader): Likewise.
11771         (create_cus_hash_table): Likewise.
11772         (lookup_dwo_cutu): Likewise.
11773         (inherit_abstract_dies): Likewise.
11774         (read_func_scope): Likewise.
11775         (read_call_site_scope): Likewise.
11776         (dwarf2_add_member_fn): Likewise.
11777         (read_common_block): Likewise.
11778         (read_module_type): Likewise.
11779         (read_typedef): Likewise.
11780         (read_subrange_type): Likewise.
11781         (load_partial_dies): Likewise.
11782         (read_partial_die): Likewise.
11783         (find_partial_die): Likewise.
11784         (read_str_index): Likewise.
11785         (dwarf2_string_attr): Likewise.
11786         (build_error_marker_type): Likewise.
11787         (lookup_die_type): Likewise.
11788         (dump_die_shallow): Likewise.
11789         (follow_die_ref): Likewise.
11790         (dwarf2_fetch_die_loc_sect_off): Likewise.
11791         (dwarf2_fetch_constant_bytes): Likewise.
11792         (follow_die_sig): Likewise.
11793         (get_signatured_type): Likewise.
11794         (get_DW_AT_signature_type): Likewise.
11795         (dwarf2_find_containing_comp_unit): Likewise.
11796         (set_die_type): Likewise.
11797
11798 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11799
11800         * arch/aarch64.c: Include "common-defs.h".
11801         * arch/amd64.c: Likewise.
11802         * arch/i386.c: Likewise.
11803
11804 2018-02-21  Tom Tromey  <tom@tromey.com>
11805
11806         * value.h: (extract_field_op): Update.
11807         * eval.c (extract_field_op): Return a const char *.
11808         * expression.h (parse_expression_for_completion): Update.
11809         * completer.c (complete_expression): Update.
11810         (add_struct_fields): Make fieldname const.
11811         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11812         (mark_completion_tag, parse_exp_in_context_1): Update.
11813         (parse_expression_for_completion): Change "name" to
11814         unique_xmalloc_ptr*.
11815
11816 2018-02-21  Tom Tromey  <tom@tromey.com>
11817
11818         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11819
11820 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11821
11822         * avr-tdep.c (avr_read_pc): Change parameter type to
11823         readable_regcache.
11824         * gdbarch.sh (read_pc): Likewise.
11825         * gdbarch.c: Re-generated.
11826         * gdbarch.h: Re-generated.
11827         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11828         readable_regcache.
11829         * ia64-tdep.c (ia64_read_pc): Likewise.
11830         * mips-tdep.c (mips_read_pc): Likewise.
11831         * spu-tdep.c (spu_read_pc): Likewise.
11832
11833 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11834
11835         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11836         * regcache-dump.c: New file.
11837         * regcache.c: Move register_dump to regcache-dump.c.
11838         (maintenance_print_registers): Likewise.
11839         (maintenance_print_raw_registers): Likewise.
11840         (maintenance_print_cooked_registers): Likewise.
11841         (maintenance_print_register_groups): Likewise.
11842         (maintenance_print_remote_registers): Likewise.
11843         (_initialize_regcache): Likewise.
11844         * regcache.h (register_dump): Moved from regcache.c.
11845
11846 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11847
11848         * regcache.c (regcache::regcache): Update.
11849         (regcache::invalidate): Move it to detached_regcache::invalidate.
11850         (get_thread_arch_aspace_regcache): Update.
11851         (regcache::raw_update): Update.
11852         (regcache::cooked_read): Remove some code.
11853         (regcache::cooked_read_value): Likewise.
11854         (regcache::raw_write): Remove assert on m_readonly_p.
11855         (regcache::raw_supply_integer): Move it to
11856         detached_regcache::raw_supply_integer.
11857         (regcache::raw_supply_zeroed): Likewise.
11858         * regcache.h (detached_regcache) <raw_supply_integer>: New
11859         declaration.
11860         <raw_supply_zeroed, invalidate>: Likewise.
11861         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11862         <invalidate>: Likewise.
11863         <m_readonly_p>: Removed.
11864
11865 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11866
11867         * infcmd.c (get_return_value): Let stop_regs point to
11868         get_current_regcache.
11869         * regcache.c (regcache::regcache): Remove.
11870         (register_dump_reg_buffer): New class.
11871         (regcache_print): Adjust.
11872         * regcache.h (regcache): Remove constructors.
11873
11874 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11875
11876         * regcache.c (class register_dump): New class.
11877         (register_dump_regcache, register_dump_none): New class.
11878         (register_dump_remote, register_dump_groups): New class.
11879         (regcache_print): Update.
11880         * regcache.h (regcache_dump_what): Move it to regcache.c.
11881         (regcache) <dump>: Remove.
11882
11883 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11884
11885         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11886          reg_buffer_rw *.
11887         (jit_unwind_reg_set_impl): Call raw_supply.
11888         (jit_frame_sniffer): Use reg_buffer_rw.
11889         * record-full.c (record_full_core_regbuf): Change its type.
11890         (record_full_core_open_1): Use reg_buffer_rw.
11891         (record_full_close): Likewise.
11892         (record_full_core_fetch_registers): Use regcache->raw_supply.
11893         (record_full_core_store_registers): Likewise.
11894         * regcache.c (regcache::get_register_status): Move it to
11895         reg_buffer.
11896         (regcache_raw_set_cached_value): Remove.
11897         (regcache::raw_set_cached_value): Remove.
11898         (regcache::raw_write): Call raw_supply.
11899         (regcache::raw_supply): Move it to reg_buffer_rw.
11900         * regcache.h (regcache_raw_set_cached_value): Remove.
11901         (reg_buffer_rw): New class.
11902
11903 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11904
11905         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11906         readonly_detached_regcache.
11907         (dummy_frame_prev_register): Use regcache->cooked_read.
11908         * frame.c (frame_save_as_regcache): Change return type.
11909         (frame_pop): Update.
11910         * frame.h (frame_save_as_regcache): Update declaration.
11911         * inferior.h (get_infcall_suspend_state_regcache): Update
11912         declaration.
11913         * infrun.c (infcall_suspend_state) <registers>: use
11914         readonly_detached_regcache.
11915         (save_infcall_suspend_state): Don't use regcache_dup.
11916         (get_infcall_suspend_state_regcache): Change return type.
11917         * linux-fork.c (struct fork_info) <savedregs>: Change to
11918         readonly_detached_regcache.
11919         <pc>: New field.
11920         (fork_save_infrun_state): Don't use regcache_dup.
11921         (info_checkpoints_command): Adjust.
11922         * mi/mi-main.c (register_changed_p): Update declaration.
11923         (mi_cmd_data_list_changed_registers): Use
11924         readonly_detached_regcache.
11925         (register_changed_p): Change parameter type to
11926         readonly_detached_regcache.
11927         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11928         readonly_detached_regcache.
11929         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11930         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11931         New.
11932         (regcache::save): Move it to reg_buffer.
11933         (regcache::restore): Change parameter type.
11934         (regcache_dup): Remove.
11935         * regcache.h (reg_buffer) <save>: New method.
11936         (readonly_detached_regcache): New class.
11937         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11938         readonly_detached_regcache.
11939         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11940
11941 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11942
11943         * frame.c (frame_save_as_regcache): Use regcache method save.
11944         (frame_pop): Use regcache method restore.
11945         * infrun.c (restore_infcall_suspend_state): Likewise.
11946         * linux-fork.c (fork_load_infrun_state): Likewise.
11947         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11948         save.
11949         * regcache.c (regcache_save): Remove.
11950         (regcache::restore): More asserts.
11951         (regcache_cpy): Remove.
11952         * regcache.h (regcache_save): Remove the declaration.
11953         (regcache::restore): Move from private to public.
11954         Remove the friend declaration of regcache_cpy.
11955         (regcache_cpy): Remove declaration.
11956
11957 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11958
11959         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11960         parameter type to 'readable_regcache *'.
11961         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11962         * arm-tdep.c (arm_neon_quad_read): Likewise.
11963         (arm_pseudo_read): Likewise.
11964         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11965         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11966         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11967         * gdbarch.c: Re-generated.
11968         * gdbarch.h: Re-generated.
11969         * gdbarch.sh (pseudo_register_read): Change parameter type to
11970         'readable_regcache *'.
11971         (pseudo_register_read_value): Likewise.
11972         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11973         (h8300_pseudo_register_read): Likewise.
11974         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11975         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11976         (i386_pseudo_register_read_into_value): Likewise.
11977         (i386_pseudo_register_read_value): Likewise.
11978         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11979         declaration.
11980         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11981         * m32c-tdep.c (m32c_raw_read): Likewise.
11982         (m32c_read_flg): Likewise.
11983         (m32c_banked_register): Likewise.
11984         (m32c_banked_read): Likewise.
11985         (m32c_sb_read): Likewise.
11986         (m32c_part_read): Likewise.
11987         (m32c_cat_read): Likewise.
11988         (m32c_r3r2r1r0_read): Likewise.
11989         (m32c_pseudo_register_read): Likewise.
11990         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11991         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11992         (mep_pseudo_cr64_read): Likewise.
11993         (mep_pseudo_register_read): Likewise.
11994         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11995         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11996         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11997         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11998         (regcache::cooked_read): Likewise.
11999         (regcache::cooked_read_value): Likewise.
12000         (regcache_cooked_read_signed):
12001         (regcache::cooked_read): Likewise.
12002         * regcache.h (readable_regcache): New class.
12003         (regcache): Inherit readable_regcache.  Move some methods to
12004         readable_regcache.
12005         * rl78-tdep.c (rl78_pseudo_register_read): Change
12006         parameter type to 'readable_regcache *'.
12007         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12008         (e500_pseudo_register_read): Change parameter type to
12009         'readable_regcache *'.
12010         (dfp_pseudo_register_read): Likewise.
12011         (vsx_pseudo_register_read): Likewise.
12012         (efpr_pseudo_register_read): Likewise.
12013         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12014         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12015         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12016         (sh64_pseudo_register_read): Likewise.
12017         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12018         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12019         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12020         (spu_pseudo_register_read): Likewise.
12021         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12022         (xtensa_pseudo_register_read): Likewise.
12023
12024 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12025
12026         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12027         (regcache::arch): Move it to reg_buffer::arch.
12028         (regcache::register_buffer): Likewise.
12029         (regcache::assert_regnum): Likewise.
12030         (regcache::num_raw_registers): Likewise.
12031         * regcache.h (reg_buffer): New class.
12032         (regcache): Inherit reg_buffer.
12033
12034 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12035
12036         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12037         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12038
12039 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12040
12041         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12042
12043 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12044
12045         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12046         (SFILES): Remove common/*.c files.
12047         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12048         * common/common.host: Add common reference.
12049         * configure.ac: Likewise.
12050         * configure: Regenerate.
12051
12052 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12053
12054         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12055         (block_initialize_namespace): Use new.
12056         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12057         (dwarf2_free_objfile): Use delete.
12058         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12059         (copy_type_recursive): Use new.
12060         * gdb_obstack.h (allocate_on_obstack): New.
12061
12062 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12063
12064         PR gdb/22849
12065         * inferior.c (exit_inferior_1): Reset inf->control.
12066
12067 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12068
12069         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12070         declaration.
12071
12072 2018-02-14  Pedro Alves  <palves@redhat.com>
12073
12074         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12075         frame_cleanup_after_sniffer on exception.
12076
12077 2018-02-14  Tom Tromey  <tom@tromey.com>
12078
12079         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12080         const.
12081         (solib_bfd_open): Make pathname const.
12082         * solib.c (solib_bfd_open): Make pathname const.
12083         * solib-spu.c (spu_bfd_fopen): Make name const.
12084         (spu_bfd_open): Make pathname const.
12085         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12086         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12087
12088 2018-02-14  Tom Tromey  <tom@tromey.com>
12089
12090         * symfile.c (symfile_bfd_open): Update.
12091         * source.h (openp, source_full_path_of, find_and_open_source):
12092         Change argument type to unique_xmalloc_ptr.
12093         * source.c (openp): Take a unique_xmalloc_ptr.
12094         (source_full_path_of, find_and_open_source): Likewise.
12095         (open_source_file, symtab_to_fullname): Update.
12096         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12097         unique_xmalloc_ptr.
12098         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12099         (exec_file_find): Update.
12100         * psymtab.c (psymtab_to_fullname): Update.
12101         * nto-tdep.h (nto_find_and_open_solib): Update.
12102         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12103         unique_xmalloc_ptr.
12104         * exec.c (exec_file_attach): Update.
12105         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12106         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12107
12108 2018-02-14  Tom Tromey  <tom@tromey.com>
12109
12110         * solib.c: Include source.h.
12111         * nto-tdep.c: Include source.h.
12112         * mi/mi-cmd-env.c: Include source.h.
12113         * infcmd.c: Include source.h.
12114         * exec.c: Include source.h.
12115         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12116         (add_path, directory_switch, source_path, init_source_path): Move
12117         declarations...
12118         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12119         (add_path, directory_switch, source_path, init_source_path):
12120         ...here.
12121
12122 2018-02-14  Tom Tromey  <tom@tromey.com>
12123
12124         * solist.h (exec_file_find, solib_find): Return
12125         unique_xmalloc_ptr.
12126         (solib_bfd_fopen): Take a const char *.
12127         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12128         (exec_file_find, solib_find): Likewise.
12129         (solib_bfd_fopen): Do not take ownership of "pathname".
12130         (solib_bfd_open): Use unique_xmalloc_ptr.
12131         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12132         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12133         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12134         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12135
12136 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12137
12138         * ada-lang.c (name_match_type_from_name): Remove reference to
12139         ada_name_for_lookup in function's documentation.
12140         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12141
12142 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12143
12144         * defs.h (enum openp_flags): New enum.
12145         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12146         Move to enum openp_flags.
12147         (openp_flags): New enum flags.
12148         (openp): Change parameter type to openp_flags.
12149         * source.c (openp): Change parameter type to openp_flags.
12150         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12151         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12152
12153 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12154
12155         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12156         per-command.
12157
12158 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12159
12160         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12161         into...
12162         (class dwarf2_queue_guard): ...the destructor of this new class.
12163         (dw2_do_instantiate_symtab): Create instance of the new class
12164         dwarf2_queue_guard, remove cleanup.
12165
12166 2018-02-09  Tom Tromey  <tom@tromey.com>
12167
12168         * source.c (find_source_lines): Don't reference past the end of
12169         the vector.
12170
12171 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12172
12173         * remote.c (remote_btrace_maybe_reopen): Change error message.
12174         * btrace.c (btrace_enable): Likewise.
12175         (parse_xml_btrace): Likewise.
12176         (parse_xml_btrace_conf): Likewise.
12177
12178 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12179
12180         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12181         (linux_enable_pt, linux_enable_bts): Call
12182         diagnose_perf_event_open_fail.
12183
12184 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12185
12186         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12187         Remove parameter and change return type.  Update callers.  Move it.
12188         (linux_enable_bts, linux_enable_pt): Improve error message.
12189         (linux_enable_pt): Remove zero buffer size check.
12190         (linux_enable_btrace): Improve error messages.  Remove NULL return
12191         check.
12192
12193 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12194
12195         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12196         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12197         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12198         (linux_supports_pt, linux_supports_btrace): Remove.
12199         (linux_enable_bts): Call cpu_supports_bts.
12200         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12201         * remote.c (remote_supports_btrace): Remove.
12202         (init_remote_ops): Remove remote_supports_btrace.
12203         * target-delegates.c: Regenerated.
12204         * target.c (target_supports_btrace): Remove.
12205         * target.h (target_ops) <to_supports_btrace>: Remove
12206         (target_supports_btrace): Remove.
12207         * x86-linux-nat.c (x86_linux_create_target): Remove
12208         linux_supports_btrace.
12209
12210 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12211
12212         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12213         btrace failed.
12214         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12215         exception and use message in own exception.
12216
12217 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12218
12219         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12220         (perf_event_pt_event_type): Use gdb_file_up.
12221         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12222         scoped_fd, and scoped_mmap.
12223
12224 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12225
12226         * common/scoped_mmap.h: New.
12227         * unittests/scoped_mmap-selftest.c: New.
12228         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12229         unittests/scoped_mmap-selftest.c.
12230
12231 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12232
12233         * common/scoped_fd.h: New.
12234         * unittests/scoped_fd-selftest.c: New.
12235         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12236         unittests/scoped_fd-selftest.c.
12237
12238 2018-02-09  Tom Tromey  <tom@tromey.com>
12239
12240         * auto-load.c (auto_load_section_scripts): Use
12241         gdb::unique_xmalloc_ptr.
12242
12243 2018-02-09  Tom Tromey  <tom@tromey.com>
12244
12245         * auto-load.c (execute_script_contents): Use std::string.
12246
12247 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12248
12249         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12250         Python function, rather than a new command.
12251
12252 2018-02-08  Tom Tromey  <tom@tromey.com>
12253
12254         * solib.c (solib_find_1): Use std::string.
12255         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12256
12257 2018-02-08  Tom Tromey  <tom@tromey.com>
12258
12259         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12260
12261 2018-02-08  Tom Tromey  <tom@tromey.com>
12262
12263         * source.c (find_source_lines): Use gdb::def_vector.
12264
12265 2018-02-08  Tom Tromey  <tom@tromey.com>
12266
12267         * macrocmd.c (struct temporary_macro_definition): New.
12268         (macro_define_command): Use temporary_macro_definition.  Remove
12269         cleanups.
12270         (free_macro_definition_ptr): Remove.
12271
12272 2018-02-08  Tom Tromey  <tom@tromey.com>
12273
12274         * macroexp.c (maybe_expand): Use std::string.
12275
12276 2018-02-08  Tom Tromey  <tom@tromey.com>
12277
12278         * macroexp.c (struct macro_buffer): Add initializers for some
12279         members.
12280         (init_buffer, init_shared_buffer, free_buffer)
12281         (free_buffer_return_text): Remove.
12282         (macro_buffer): New constructors.
12283         (~macro_buffer): New destructor.
12284         (macro_buffer::set_shared): New method.
12285         (macro_buffer::resize_buffer, macro_buffer::appendc)
12286         (macro_buffer::appendmem): Now methods, not free functions.
12287         (set_token, append_tokens_without_splicing, stringify)
12288         (macro_stringify): Update.
12289         (gather_arguments): Change return type.  Remove argc_p argument,
12290         add args_ptr argument.  Use std::vector.
12291         (substitute_args): Remove argc argument.  Accept std::vector.
12292         (expand): Update.  Use std::vector.
12293         (scan, macro_expand, macro_expand_next): Update.
12294
12295 2018-02-08  Tom Tromey  <tom@tromey.com>
12296
12297         * symtab.c (default_collect_symbol_completion_matches_break_on):
12298         Use unique_xmalloc_ptr.
12299         * macroscope.h: (sal_macro_scope, user_macro_scope)
12300         (default_macro_scope): Return unique_xmalloc_ptr.
12301         * macroscope.c (sal_macro_scope, user_macro_scope)
12302         (default_macro_scope): Return unique_xmalloc_ptr.
12303         * macroexp.h (macro_expand, macro_expand_once): Return
12304         unique_xmalloc_ptr.
12305         * macroexp.c (macro_expand, macro_expand_once): Return
12306         unique_xmalloc_ptr.
12307         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12308         (info_macro_command, info_macros_command): Use
12309         unique_xmalloc_ptr.
12310         * compile/compile-c-support.c (write_macro_definitions): Use
12311         unique_xmalloc_ptr.
12312         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12313
12314 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12315
12316         * value.c (value_static_field): Assign field type instead of
12317         containing type when returning an optimized out value.
12318
12319 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12320
12321         * ft32-tdep.c (ft32_read_pc): Remove.
12322         (ft32_write_pc): Remove.
12323         (ft32_gdbarch_init): Update.
12324         * m32r-tdep.c (m32r_read_pc): Remove.
12325         (m32r_gdbarch_init): Update.
12326         * mep-tdep.c (mep_read_pc): Remove.
12327         (mep_gdbarch_init): Update.
12328         * microblaze-tdep.c (microblaze_write_pc): Remove.
12329         (microblaze_gdbarch_init): Update.
12330         * mn10300-tdep.c (mn10300_read_pc): Remove.
12331         (mn10300_write_pc): Remove.
12332         (mn10300_gdbarch_init): Update.
12333         * moxie-tdep.c (moxie_read_pc): Remove.
12334         (moxie_write_pc): Remove.
12335         (moxie_gdbarch_init): Update.
12336
12337 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12338
12339         * expprint.c (print_subexp_standard): Handle
12340         OP_F77_UNDETERMINED_ARGLIST.
12341         (dump_subexp_body_standard): Likewise.
12342
12343 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12344
12345         * target-descriptions.c (tdesc_element_visitor) Add empty
12346         implementations.
12347         (tdesc_type): Move make_gdb_type from here.
12348         (tdesc_type_builtin): Likewise.
12349         (tdesc_type_vector): Likewise.
12350         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12351         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12352         (make_gdb_type_union): Likewise.
12353         (make_gdb_type_flags): Likewise.
12354         (make_gdb_type_enum): Likewise.
12355         (make_gdb_type): New function.
12356         (tdesc_register_type): Use static make_gdb_type.
12357
12358 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12359
12360         * infcmd.c (default_print_one_register_info): Align natural-format
12361         column values consistently one under another.
12362         (pad_to_column): New function.
12363
12364 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12365
12366         * dwarf2read.c (dwarf2_physname): Move commment.
12367
12368 2018-02-01  Leszek Swirski  <leszeks@google.com>
12369
12370         * varobj.c (varobj_formatted_print_options): Allow recursive
12371         pretty printing if pretty printing is enabled.
12372
12373 2018-02-01  Leszek Swirski  <leszeks@google.com>
12374
12375         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12376         names after a structop as a filename.
12377
12378 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12379
12380         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12381         (arm_record_coproc_data_proc): Likewise.
12382
12383 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12384
12385         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12386
12387 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12388
12389         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12390         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12391
12392 2018-01-31  Pedro Alves  <palves@redhat.com>
12393
12394         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12395         * inflow.c (child_terminal_save_inferior): Wrap reference to
12396         tcgetpgrp in HAVE_TERMIOS_H.
12397         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12398         _WIN32.
12399         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12400         always iterate over all inferiors.
12401         (gdbsim_cntrl_c): Adjust.
12402         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12403
12404 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12405
12406         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12407         index type is objfile-owned if the element type is as well.
12408
12409 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12410
12411         GDB 8.1 released.
12412
12413 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12414
12415         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12416         "features/s390x-linux64.c".
12417         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12418         s390_linux32 and s390x_linux64.
12419         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12420         default tdesc.
12421         * s390-tdep.c: Include "features/s390-linux32.c" and
12422         "features/s390x-linux64.c".
12423         (s390_tdesc_valid): Add check for tdesc_has_registers.
12424         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12425         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12426         tdesc_s390x_linux64.
12427         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12428         tdesc_s390x_linux64 to...
12429         * s390-tdep.h: ...here.
12430
12431 2018-01-30  Pedro Alves  <palves@redhat.com>
12432
12433         PR gdb/13211
12434         * config.in, configure: Regenerate.
12435         * configure.ac: Check for getpgid.
12436         * go32-nat.c (go32_pass_ctrlc): New.
12437         (go32_target): Install it.
12438         * inf-child.c (inf_child_target): Install
12439         child_terminal_save_inferior, child_pass_ctrlc and
12440         child_interrupt.
12441         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12442         (inf_ptrace_target): No longer install it.
12443         * infcmd.c (interrupt_target_1): Adjust.
12444         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12445         (child_interrupt): Declare.
12446         (inferior::terminal_state): New.
12447         * inflow.c (struct terminal_info): Update comments.
12448         (inferior_process_group): Delete.
12449         (terminal_is_ours): Delete.
12450         (gdb_tty_state): New.
12451         (child_terminal_init): Adjust.
12452         (is_gdb_terminal, sharing_input_terminal_1)
12453         (sharing_input_terminal): New functions.
12454         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12455         Set the process's actual process group in the foreground if
12456         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12457         mark terminal as the inferior's if not sharing GDB's terminal.
12458         Don't check attach_flag.
12459         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12460         pass down a target_terminal_state.
12461         (child_terminal_save_inferior): New, factored out from ...
12462         (child_terminal_ours_1): ... this.  Handle
12463         target_terminal_state::is_ours_for_output.
12464         (child_interrupt, child_pass_ctrlc): New.
12465         (inflow_inferior_exit): Clear the inferior's terminal_state.
12466         (copy_terminal_info): Copy the inferior's terminal state.
12467         (_initialize_inflow): Remove reference to terminal_is_ours.
12468         * inflow.h (inferior_process_group): Delete.
12469         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12470         * procfs.c (procfs_target): Don't install procfs_interrupt.
12471         (procfs_interrupt): Delete.
12472         * remote.c (remote_serial_quit_handler): Adjust.
12473         (remote_interrupt): Remove ptid parameter.  Adjust.
12474         * target-delegates.c: Regenerate.
12475         * target.c: Include "terminal.h".
12476         (target_terminal::terminal_state): Rename to ...
12477         (target_terminal::m_terminal_state): ... this.
12478         (target_terminal::init): Adjust.
12479         (target_terminal::inferior): Adjust to per-inferior
12480         terminal_state.
12481         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12482         (target_terminal::ours, target_terminal::ours_for_output): Use
12483         target_terminal_is_ours_kind.
12484         (target_interrupt): Remove ptid parameter.  Adjust.
12485         (default_target_pass_ctrlc): Adjust.
12486         * target.h (target_ops::to_terminal_save_inferior): New field.
12487         (target_ops::to_interrupt): Remove ptid_t parameter.
12488         (target_interrupt): Remove ptid_t parameter.  Update comment.
12489         (target_pass_ctrlc): Update comment.
12490         * target/target.h (target_terminal_state): New scoped enum,
12491         factored out of ...
12492         (target_terminal::terminal_state): ... here.
12493         (target_terminal::inferior): Update comments.
12494         (target_terminal::restore_inferior): New.
12495         (target_terminal::is_inferior, target_terminal::is_ours)
12496         (target_terminal::is_ours_for_output): Adjust.
12497         (target_terminal::scoped_restore_terminal_state): Adjust to
12498         rename, and call restore_inferior() instead of inferior().
12499         (target_terminal::scoped_restore_terminal_state::m_state): Change
12500         type.
12501         (target_terminal::terminal_state): Rename to ...
12502         (target_terminal::m_terminal_state): ... this and change type.
12503
12504 2018-01-30  Pedro Alves  <palves@redhat.com>
12505
12506         * linux-nat.c (wait_for_signal): New function.
12507         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12508         directly.
12509         (async_terminal_is_ours)
12510         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12511         (linux_nat_add_target): Don't override
12512         to_terminal_inferior/to_terminal_ours.
12513
12514 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12515
12516         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12517
12518 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12519
12520         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12521         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12522         dwarf2_per_objfile_free here.
12523         (dwarf2_per_objfile_free): Remove.
12524         (_initialize_dwarf2_read): Don't register
12525         dwarf2_per_objfile_free as a registry cleanup.
12526
12527 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12528
12529         Avoid compilation errors in MinGW native builds
12530
12531         The error is triggered by including python-internal.h, and the
12532         error message is:
12533
12534              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12535                       from build-gnulib/import/math.h:27,
12536                       from d:/usr/Python26/include/pyport.h:235,
12537                       from d:/usr/Python26/include/Python.h:58,
12538                       from python/python-internal.h:94,
12539                       from python/py-arch.c:24:
12540              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12541         using ::hypot;
12542                 ^~~~~
12543
12544         This happens because Python headers define 'hypot' to expand t
12545         '_hypot' in the Windows builds.
12546         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12547         'hypoth'.  This avoids a compilation error.
12548
12549 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12550
12551         * MAINTAINERS (Write After Approval): Fix ordering.
12552
12553 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12554
12555         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12556
12557 2018-01-26  Alan Modra  <amodra@gmail.com>
12558
12559         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12560         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12561         Remove nop.  Make const.  Comment.
12562         (powerpc32_plt_stub_so_2): New.
12563         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12564         Correct count.  Update uses.
12565         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12566         Move common code reading PLT entry word.  Correct
12567         powerpc32_plt_stub PLT address calculation.
12568         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12569         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12570         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12571         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12572         (ppc64_standard_linkage8): Likewise.
12573         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12574         Correct insns description.
12575         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12576
12577 2018-01-24  Pedro Alves  <palves@redhat.com>
12578
12579         GCC PR libstdc++/83906
12580         * gdbtypes.c (operator==(const dynamic_prop &,
12581         const dynamic_prop &)): New.
12582         (operator==(const range_bounds &, const range_bounds &)): New.
12583         (check_types_equal): Use them instead of memcmp.
12584         * gdbtypes.h (operator==(const dynamic_prop &,
12585         const dynamic_prop &)): Declare.
12586         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12587         (operator==(const range_bounds &, const range_bounds &)): Declare.
12588         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12589
12590 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12591
12592         * s390-linux-tdep.c (s390_record_address_mask)
12593         (s390_record_calc_disp_common, s390_record_calc_disp)
12594         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12595         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12596         (s390_process_record): Move to s390-tdep.c.
12597         (s390_linux_init_abi_any): Adjust.
12598         * s390-tdep.c (s390_record_address_mask)
12599         (s390_record_calc_disp_common, s390_record_calc_disp)
12600         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12601         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12602         (s390_process_record): Moved from s390-linux-tdep.c
12603         (s390_gdbarch_init): Adjust.
12604
12605 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12606
12607         * s390-linux-nat.c (s390-tdep.h): New include.
12608         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12609         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12610         (ALLDEPFILES): Add s390-tdep.c.
12611         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12612         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12613         * s390-tdep.h: ...this.  New file.
12614         * s390-linux-tdep.c (s390-tdep.h): New include.
12615         (_initialize_s390_tdep): Rename to...
12616         (_initialize_s390_linux_tdep): ...this and adjust.
12617         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12618         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12619         s390-tdep.h.
12620         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12621         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12622         (s390_is_partial_instruction, s390_software_single_step)
12623         (is_non_branch_ril, s390_displaced_step_copy_insn)
12624         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12625         (s390_prologue_data, s390_addr, s390_store, s390_load)
12626         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12627         (s390_register_call_saved, s390_guess_tracepoint_registers)
12628         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12629         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12630         (s390_pseudo_register_name, s390_pseudo_register_type)
12631         (s390_pseudo_register_read, s390_pseudo_register_write)
12632         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12633         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12634         (s390_addr_bits_remove, s390_address_class_type_flags)
12635         (s390_address_class_type_flags_to_name)
12636         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12637         (s390_function_arg_float, s390_function_arg_vector)
12638         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12639         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12640         (s390_frame_align, s390_register_return_value, s390_return_value)
12641         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12642         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12643         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12644         (s390_trad_frame_prev_register, s390_unwind_cache)
12645         (s390_prologue_frame_unwind_cache)
12646         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12647         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12648         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12649         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12650         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12651         (s390_frame_base_address, s390_local_base_address)
12652         (s390_frame_base, s390_gcc_target_options)
12653         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12654         (s390_validate_reg_range, s390_tdesc_valid)
12655         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12656         * s390-tdep.c: ...this.  New file.
12657
12658 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12659
12660         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12661         (s390_process_record, s390_gdbarch_tdep_alloc)
12662         (s390_linux_init_abi_any): Use/set new hook.
12663
12664 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12665
12666         * s390-linux-tdep.c (osabi.h): New include.
12667         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12668         (s390_linux_init_abi_any): New functions.
12669         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12670
12671 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12672
12673         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12674         tdesc_has_registers check
12675
12676 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12677
12678         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12679         (s390_validate_reg_range): New macro.
12680         (s390_gdbarch_init): Adjust.
12681
12682 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12683
12684         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12685         (s390_gdbarch_tdep_alloc): Adjust.
12686         (s390_gdbarch_init): Adjust.
12687
12688 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12689
12690         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12691         <have_tdb>: Change type to bool.
12692         (s390_gdbarch_tdep_alloc): Adjust.
12693         (s390_gdbarch_init): Adjust.
12694
12695 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12696
12697         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12698         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12699         (s390_gdbarch_tdep_alloc): New function.
12700         (s390_gdbarch_init): Allocate tdep at start and use its fields
12701         instead of separate variables.
12702
12703 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12704
12705         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12706         when looking for cached gdbarch and add comment for remaining.
12707
12708 2018-01-22  Pedro Alves  <palves@redhat.com>
12709             Sergio Durigan Junior  <sergiodj@redhat.com>
12710
12711         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12712         case.
12713
12714 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12715
12716         * MAINTAINERS: Update my company e-mail address.
12717
12718 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12719
12720         * regcache.c (cooked_write_test): New function.
12721         (_initialize_regcache): Register the test.
12722
12723 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12724
12725         * ia64-tdep.c (ia64_pseudo_register_read): Call
12726         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12727         * m32c-tdep.c (m32c_cat_read): Likewise.
12728         (m32c_r3r2r1r0_read): Likewise.
12729         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12730         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12731
12732 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12733
12734         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12735         method raw_read instead of regcache_raw_read.
12736         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12737         * arm-tdep.c (arm_neon_quad_read): Likewise.
12738         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12739         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12740         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12741         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12742         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12743         (i386_pseudo_register_read_into_value): Likewise.
12744         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12745         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12746         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12747         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12748         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12749         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12750         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12751         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12752         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12753
12754 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12755
12756         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12757         * configure.tgt: Remove target mt.
12758         * mt-tdep.c: Remove.
12759         * regcache.c (cooked_read_test): Remove the check for mt.
12760
12761 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12762
12763         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12764         instead of gdbarch_pseudo_register_read_value.
12765
12766 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12767
12768         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12769         language is Ada.
12770
12771 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12772
12773         * linespec.c (create_sals_line_offset): Remove code that preserved
12774         the symtab_and_line's line number.
12775
12776 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12777
12778         * varobj.c (varobj_create): Don't set valid_block when creating a
12779         floating varobj.
12780
12781 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12782
12783         * varobj.c (varobj_create): Remove out of date comment.
12784
12785 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12786
12787         PR mi/20395
12788         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12789         updating innermost block.
12790         * parse.c (innermost_block_tracker::update): Take extra type
12791         parameter, and check types match before updating innermost block.
12792         (write_dollar_variable): Update innermost block for registers.
12793         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12794         (innermost_block_tracker::innermost_block_tracker): Initialise
12795         m_types member.
12796         (innermost_block_tracker::reset): Take type parameter.
12797         (innermost_block_tracker::update): Take type parameter, and pass
12798         type through as needed.
12799         (innermost_block_tracker::m_types): New member.
12800         * varobj.c (varobj_create): Pass type when reseting innermost
12801         block.
12802
12803 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12804
12805         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12806         * ada-lang.c (resolve_subexp): Likewise.
12807         * breakpoint.c (set_breakpoint_condition) Likewise.
12808         (watch_command_1) Likewise.
12809         * c-exp.y (variable): Likewise.
12810         * d-exp.y (PrimaryExpression): Likewise.
12811         * f-exp.y (variable): Likewise.
12812         * go-exp.y (variable): Likewise.
12813         * m2-exp.y (variable): Likewise.
12814         * objfiles.c (objfile::~objfile): Likewise.
12815         * p-exp.y (variable): Likewise.
12816         * parse.c (innermost_block): Change type.
12817         * parser-defs.h (class innermost_block_tracker): New.
12818         (innermost_block): Change to innermost_block_tracker.
12819         * printcmd.c (display_command): Switch to innermost_block API.
12820         (do_one_display): Likewise.
12821         * rust-exp.y (do_one_display): Likewise.
12822         * symfile.c (clear_symtab_users): Likewise.
12823         * varobj.c (varobj_create): Switch to innermost_block API, replace
12824         use of innermost_block with block stored on varobj object.
12825
12826 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12827
12828         * expression.h (innermost_block): Remove declaration.
12829         * varobj.c: Add 'parser-defs.h' include.
12830
12831 2018-01-19  Tom Tromey  <tom@tromey.com>
12832
12833         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12834         symbols in the static and global blocks.
12835
12836 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12837
12838         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12839         gdb_ptrace.h, and move including gdb_wait.h ...
12840         * nat/linux-ptrace.h: ... to here.
12841
12842 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12843
12844         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12845         inf_ptrace_detach_success.
12846         (inf_ptrace_detach_success): Add inferior parameter, use it
12847         instead of inferior_ptid, pass it to detach_inferior.
12848         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12849         parameter.
12850         * inferior.c (detach_inferior): Add overload that takes an
12851         inferior object.
12852         * inferior.h (detach_inferior): Likewise.
12853         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12854         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12855         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12856
12857 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12858
12859         * target.h (struct target_ops) <to_detach>: Add inferior
12860         parameter.
12861         (target_detach): Likewise.
12862         * target.c (dispose_inferior): Pass inferior down.
12863         (target_detach): Pass inferior down.  Assert that it is equal to
12864         the current inferior.
12865         * aix-thread.c (aix_thread_detach): Pass inferior down.
12866         * corefile.c (core_file_command): Pass current_inferior() down.
12867         * corelow.c (core_detach): Add inferior parameter.
12868         * darwin-nat.c (darwin_detach): Likewise.
12869         * gnu-nat.c (gnu_detach): Likewise.
12870         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12871         * infcmd.c (detach_command): Pass current_inferior() down to
12872         target_detach.
12873         * infrun.c (follow_fork_inferior): Pass parent_inf to
12874         target_detach.
12875         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12876         target_detach.
12877         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12878         * linux-thread-db.c (thread_db_detach): Likewise.
12879         * nto-procfs.c (procfs_detach): Likewise.
12880         * procfs.c (procfs_detach): Likewise.
12881         * record.c (record_detach): Likewise.
12882         * record.h (struct inferior): Forward-declare.
12883         (record_detach): Add inferior parameter.
12884         * remote-sim.c (gdbsim_detach): Likewise.
12885         * remote.c (remote_detach_1): Likewise.
12886         (remote_detach): Likewise.
12887         (extended_remote_detach): Likewise.
12888         * sol-thread.c (sol_thread_detach): Likewise.
12889         * target-debug.h (target_debug_print_inferior_p): New macro.
12890         * target-delegates.c: Re-generate.
12891         * top.c (kill_or_detach): Pass inferior down to target_detach.
12892         * windows-nat.c (windows_detach): Add inferior parameter.
12893
12894 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12895
12896         * target.h (struct target_ops) <to_detach>: Remove args
12897         parameter.
12898         (target_detach): Likewise.
12899         * target.c (dispose_inferior): Adjust.
12900         (target_detach): Remove args parameter, adjust.
12901         * aix-thread.c (aix_thread_detach): Adjust.
12902         * corefile.c (core_file_command): Adjust.
12903         * corelow.c (core_detach): Adjust.
12904         * darwin-nat.c (darwin_detach): Adjust.
12905         * gnu-nat.c (gnu_detach): Adjust.
12906         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12907         * infcmd.c (detach_command): Adjust
12908         * infrun.c (follow_fork_inferior): Adjust.
12909         (handle_vfork_child_exec_or_exit): Adjust.
12910         * linux-fork.c (linux_fork_detach): Remove args parameter.
12911         * linux-fork.h (linux_fork_detach): Likewise.
12912         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12913         * linux-thread-db.c (thread_db_detach): Likewise.
12914         * nto-procfs.c (procfs_detach): Likewise.
12915         * procfs.c (procfs_detach): Likewise.
12916         (do_detach): Remove signo parameter.
12917         * record.c (record_detach): Remove args parameter.
12918         * record.h (record_detach): Likewise.
12919         * remote-sim.c (gdbsim_detach): Likewise.
12920         * remote.c (remote_detach_1): Likewise.
12921         (remote_detach): Likewise.
12922         (extended_remote_detach): Likewise.
12923         * sol-thread.c (sol_thread_detach): Likewise.
12924         * target-delegates.c: Re-generate.
12925         * top.c (struct qt_args) <args>: Remove field.
12926         (kill_or_detach): Don't pass args.
12927         (quit_force): Don't set args.
12928         * windows-nat.c (windows_detach): Remove args parameter.
12929
12930 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12931
12932         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12933         (arm_linux_init_abi): Install it.
12934
12935 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12936
12937         * osabi.c (gdb_osabi_names): Extend the regexp for
12938         arm-linux-gnueabihf.
12939
12940 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12941
12942         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12943         m_abbrevs.
12944         (abbrev_table::add_abbrev): Update.
12945         (abbrev_table::lookup_abbrev): Update.
12946
12947 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12948
12949         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12950
12951 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12952
12953         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12954         to "std::string".
12955
12956 2018-01-17  Tom Tromey  <tom@tromey.com>
12957
12958         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12959
12960 2018-01-17  Tom Tromey  <tom@tromey.com>
12961
12962         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12963         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12964         (create_array_type_with_stride): Update.
12965         * dwarf2read.c (set_die_type): Update.
12966
12967 2018-01-17  Tom Tromey  <tom@tromey.com>
12968
12969         * dwarf2read.c (delayed_method_info): Remove typedef.
12970         (dwarf2_cu::method_info): Now a std::vector.
12971         (add_to_method_list): Update.
12972         (free_delayed_list): Remove.
12973         (compute_delayed_physnames): Update.
12974         (process_full_comp_unit, process_full_type_unit): Clear the method
12975         list.  Remove cleanups.
12976         (psymtab_include_file_name): Add name_holder parameter.  Use
12977         unique_xmalloc_ptr.
12978         (dwarf_decode_lines): Update.
12979
12980 2018-01-17  Tom Tromey  <tom@tromey.com>
12981             Simon Marchi  <simon.marchi@ericsson.com>
12982
12983         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12984         (dwarf2_per_objfile::free_cached_comp_units)
12985         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12986         (init_cutu_and_read_dies_no_follow): Update.
12987         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12988         (dwarf2_cu::~dwarf2_cu): New.
12989         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12990         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12991
12992 2018-01-17  Tom Tromey  <tom@tromey.com>
12993             Simon Marchi  <simon.marchi@ericsson.com>
12994
12995         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12996         (struct die_reader_specs) <abbrev_table>: New member.
12997         (struct abbrev_table): Add constructor.
12998         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12999         <abbrev_obstack>: Now an auto_obstack.
13000         (abbrev_table_up): New typedef.
13001         (init_cu_die_reader): Add abbrev_table parameter.
13002         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13003         Add result_dwo_abbrev_table.
13004         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13005         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13006         Update.
13007         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13008         parameter.
13009         (skip_children): Update.
13010         (abbrev_table::alloc_abbrev): Rename from
13011         abbrev_table_alloc_abbrev.
13012         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13013         (abbrev_table::lookup_abbrev): Rename from
13014         abbrev_table_lookup_abbrev.
13015         (abbrev_table_read_table): Return abbrev_table_up.
13016         (abbrev_table_free, abbrev_table_free_cleanup)
13017         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13018         (load_partial_dies): Update.
13019
13020 2018-01-17  Tom Tromey  <tom@tromey.com>
13021
13022         * dwarf2read.c (dwarf2_compute_name): Update comment.
13023         (read_func_scope, read_variable): Update.
13024         (new_symbol): Remove.
13025         (new_symbol_full): Rename to new_symbol.
13026
13027 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13028
13029         PR gdb/16577
13030         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13031         a warning instead of throwing an error, set section size to 0 and return
13032         NULL.
13033         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13034
13035 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13036
13037         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13038         std::string.
13039         (linux_ptrace_attach_fail_reason_string): Likewise.
13040         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13041         Likewise.
13042         (linux_ptrace_attach_fail_reason_string): Likewise.
13043         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13044
13045 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13046
13047         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13048
13049 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13050
13051         PR gdb/21559
13052         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13053         checking for fs_base/gs_base fields in struct user_regs_struct.
13054         * configure: Regenerate.
13055
13056 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13057
13058         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13059         function.
13060         (aarch64_linux_init_abi): Install it to gdbarch hook
13061         gcc_target_options.
13062
13063 2018-01-15  Pedro Alves  <palves@redhat.com>
13064
13065         * common/signals-state-save-restore.c
13066         (save_original_signals_state): Fix typos.
13067
13068 2017-01-12  Tom Tromey  <tom@tromey.com>
13069             Sergio Durigan Junior  <sergiodj@redhat.com>
13070
13071         * Makefile.in (install-only): Install gdb-add-index.
13072
13073 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13074
13075         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13076
13077 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13078
13079         * infrun.c (keep_going_pass_signal): Clear step-over info when
13080         insert_breakpoints fails.
13081
13082 2018-01-11  Pedro Alves  <palves@redhat.com>
13083
13084         PR gdb/22583
13085         * infrun.c (resume): Rename to ...
13086         (resume_1): ... this.
13087         (resume): Reimplement as wrapper around resume_1.
13088
13089 2018-01-11  Pedro Alves  <palves@redhat.com>
13090
13091         PR remote/22597
13092         * remote.c (remote_parse_stop_reply): Default to the last-set
13093         general thread instead of to 'magic_null_ptid'.
13094
13095 2018-01-10  Pedro Alves  <palves@redhat.com>
13096
13097         * language.h (language_get_symbol_name_matcher): Rename ...
13098         (get_symbol_name_matcher): ... this.
13099         * language.c (language_get_symbol_name_matcher): Ditto.
13100         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13101         callers adjusted.
13102
13103 2018-01-10  Pedro Alves  <palves@redhat.com>
13104
13105         PR gdb/22670
13106         * dwarf2read.c
13107         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13108         Adjust to use language_get_symbol_name_matcher instead of
13109         language_defn::la_get_symbol_name_matcher.
13110         * language.c (language_get_symbol_name_matcher): If in Ada mode
13111         and the lookup name is a verbatim match, return Ada's matcher.
13112         * language.h (language_get_symbol_name_matcher): Adjust comment.
13113         (ada_lookup_name_info::verbatim_p):: New method.
13114
13115 2018-01-10  Pedro Alves  <palves@redhat.com>
13116
13117         PR gdb/22670
13118         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13119         minsym's language is language_auto or language_cplus, pass down
13120         language_ada instead.
13121         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13122
13123 2018-01-10  Pedro Alves  <palves@redhat.com>
13124
13125         PR gdb/22670
13126         * minsyms.c (linkage_name_str): New function.
13127         (iterate_over_minimal_symbols): Use it.
13128
13129 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13130
13131         * NEWS: Document that 'info proc' now works on FreeBSD.
13132
13133 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13134
13135         * configure.ac: Check for kinfo_getfile in libutil.
13136         * configure: Regenerate.
13137         * config.in: Regenerate.
13138         * fbsd-nat.c: Include "fbsd-tdep.h".
13139         (fbsd_fetch_cmdline): New.
13140         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13141         rather than calling error.
13142         (fbsd_info_proc): New.
13143         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13144         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13145         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13146
13147 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13148
13149         * fbsd-nat.c (struct free_deleter): Remove.
13150         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13151
13152 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13153
13154         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13155         NULL for an empty pathname.
13156
13157 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13158
13159         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13160         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13161         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13162         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13163         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13164         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13165         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13166         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13167         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13168         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13169         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13170         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13171         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13172         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13173         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13174
13175 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13176
13177         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13178         (gnu_xfer_auxv): New function.
13179         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13180         TARGET_OBJECT_AUXV.
13181
13182 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13183             Simon Marchi  <simon.marchi@ericsson.com>
13184
13185         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13186         common/selftest.c.
13187         (COMMON_OBS): Remove selftest.o.
13188         * configure.ac: Append selftest-arch.c and common/selftest.c to
13189         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13190         * configure: Re-generated.
13191         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13192         GDB_SELF_TEST.
13193         (maintenance_info_selftests): Likewise.
13194
13195 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13196
13197         * ada-valprint.c (val_print_packed_array_elements): Use
13198         proper number of elements when printing an array indexed
13199         by an enumeration type.
13200
13201 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13202
13203         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13204         (dw2_get_file_names_reader): Adjust.
13205         (lookup_dwo_signatured_type): Adjust.
13206         (lookup_dwp_signatured_type): Adjust.
13207         (lookup_signatured_type): Adjust.
13208         (create_type_unit_group): Adjust.
13209         (get_type_unit_group): Adjust.
13210         (process_psymtab_comp_unit_reader): Adjust.
13211         (build_type_psymtabs_reader): Adjust.
13212         (scan_partial_symbols): Adjust.
13213         (add_partial_symbol): Adjust.
13214         (add_partial_subprogram): Adjust.
13215         (peek_die_abbrev): Adjust.
13216         (fixup_go_packaging): Adjust.
13217         (process_imported_unit_die): Adjust.
13218         (dwarf2_compute_name): Adjust.
13219         (dwarf2_physname): Adjust.
13220         (read_import_statement): Adjust.
13221         (handle_DW_AT_stmt_list): Adjust.
13222         (read_file_scope): Adjust.
13223         (read_func_scope): Adjust.
13224         (read_lexical_block_scope): Adjust.
13225         (read_call_site_scope): Adjust.
13226         (read_variable): Adjust.
13227         (dwarf2_rnglists_process): Adjust.
13228         (dwarf2_ranges_process): Adjust.
13229         (dwarf2_ranges_read): Adjust.
13230         (dwarf2_get_pc_bounds): Adjust.
13231         (dwarf2_record_block_ranges): Adjust.
13232         (dwarf2_add_field): Adjust.
13233         (dwarf2_add_member_fn): Adjust.
13234         (read_structure_type): Adjust.
13235         (process_structure_scope): Adjust.
13236         (read_enumeration_type): Adjust.
13237         (read_array_type): Adjust.
13238         (mark_common_block_symbol_computed): Adjust.
13239         (read_common_block): Adjust.
13240         (read_namespace_type): Adjust.
13241         (read_namespace): Adjust.
13242         (read_module_type): Adjust.
13243         (read_tag_pointer_type): Adjust.
13244         (read_tag_ptr_to_member_type): Adjust.
13245         (read_tag_string_type): Adjust.
13246         (read_subroutine_type): Adjust.
13247         (read_typedef): Adjust.
13248         (read_base_type): Adjust.
13249         (attr_to_dynamic_prop): Adjust.
13250         (read_subrange_type): Adjust.
13251         (read_unspecified_type): Adjust.
13252         (dwarf2_read_abbrevs): Adjust.
13253         (load_partial_dies): Adjust.
13254         (read_partial_die): Adjust.
13255         (find_partial_die): Adjust.
13256         (guess_partial_die_structure_name): Adjust.
13257         (fixup_partial_die): Adjust.
13258         (read_attribute_value): Adjust.
13259         (read_addr_index): Adjust.
13260         (read_addr_index_from_leb128): Adjust.
13261         (read_str_index): Adjust.
13262         (dwarf2_string_attr): Adjust.
13263         (get_debug_line_section): Adjust.
13264         (dwarf_decode_line_header): Adjust.
13265         (lnp_state_machine::check_line_address): Adjust.
13266         (dwarf_decode_lines_1): Adjust.
13267         (dwarf_decode_lines): Adjust.
13268         (dwarf2_start_symtab): Adjust.
13269         (var_decode_location): Adjust.
13270         (new_symbol_full): Adjust.
13271         (dwarf2_const_value_data): Adjust.
13272         (dwarf2_const_value_attr): Adjust.
13273         (dwarf2_const_value): Adjust.
13274         (die_type): Adjust.
13275         (die_containing_type): Adjust.
13276         (build_error_marker_type): Adjust.
13277         (lookup_die_type): Adjust.
13278         (guess_full_die_structure_name): Adjust.
13279         (anonymous_struct_prefix): Adjust.
13280         (determine_prefix): Adjust.
13281         (dwarf2_name): Adjust.
13282         (follow_die_ref_or_sig): Adjust.
13283         (follow_die_offset): Adjust.
13284         (follow_die_ref): Adjust.
13285         (follow_die_sig_1): Adjust.
13286         (follow_die_sig): Adjust.
13287         (get_signatured_type): Adjust.
13288         (get_DW_AT_signature_type): Adjust.
13289         (decode_locdesc): Adjust.
13290         (dwarf_decode_macros): Adjust.
13291         (cu_debug_loc_section): Adjust.
13292         (fill_in_loclist_baton): Adjust.
13293         (dwarf2_symbol_mark_computed): Adjust.
13294         (init_one_comp_unit): Don't assign
13295         dwarf2_cu::dwarf2_per_objfile.
13296         (set_die_type): Adjust.
13297
13298 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13299
13300         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13301         <dwarf2_per_objfile>: New field.
13302         (dwarf2_per_objfile): Remove global.
13303         (get_dwarf2_per_objfile): New function.
13304         (set_dwarf2_per_objfile): New function.
13305         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13306         dwarf2_per_objfile.
13307         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13308         (read_abbrev_offset): Likewise.
13309         (read_indirect_string): Likewise.
13310         (read_indirect_line_string): Likewise.
13311         (read_indirect_string_at_offset): Likewise.
13312         (read_indirect_string_from_dwz): Likewise.
13313         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13314         dwarf2_per_objfile.
13315         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13316         (create_all_comp_units): Change objfile parameter to
13317         dwarf2_per_objfile.
13318         (create_all_type_units): Likewise.
13319         (process_queue): Add dwarf2_per_objfile parameter.
13320         (read_and_check_comp_unit_head): Likewise.
13321         (lookup_dwo_unit_in_dwp): Likewise.
13322         (get_dwp_file): Likewise.
13323         (process_cu_includes): Likewise.
13324         (struct free_dwo_file_cleanup_data): New struct.
13325         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13326         set_dwarf2_per_objfile.
13327         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13328         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13329         context, adjust calls.
13330         (dw2_instantiate_symtab): Likewise.
13331         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13332         (dw2_get_cu): Likewise.
13333         (create_cu_from_index_list): Change objfile parameter to
13334         dwarf2_per_objfile.
13335         (create_cus_from_index_list): Get dwarf2_per_objfile from
13336         context, adjust calls.
13337         (create_cus_from_index): Likewise.
13338         (create_signatured_type_table_from_index): Change objfile
13339         parameter to dwarf2_per_objfile.
13340         (create_signatured_type_table_from_debug_names): Change objfile
13341         parameter to dwarf2_per_objfile.
13342         (create_addrmap_from_index): Likewise.
13343         (create_addrmap_from_aranges): Likewise.
13344         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13345         (dw2_setup): Remove.
13346         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13347         context.
13348         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13349         get_dwarf2_per_objfile.
13350         (dw2_forget_cached_source_info): Likewise.
13351         (dw2_map_symtabs_matching_filename): Likewise.
13352         (struct dw2_symtab_iterator) <index>: Remove.
13353         <dwarf2_per_objfile>: New field.
13354         (dw2_symtab_iter_init): Replace index parameter with
13355         dwarf2_per_objfile.
13356         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13357         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13358         (dw2_print_stats): Likewise.
13359         (dw2_dump): Likewise.
13360         (dw2_expand_symtabs_for_function): Likewise.
13361         (dw2_expand_all_symtabs): Likewise.
13362         (dw2_expand_symtabs_with_fullname): Likewise.
13363         (dw2_expand_marked_cus): Replace index and objfile parameters
13364         with dwarf2_per_objfile.
13365         (dw_expand_symtabs_matching_file_matcher): Add
13366         dwarf2_per_objfile parameter and adjust calls.
13367         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13368         adjust calls.
13369         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13370         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13371         adjust calls.
13372         (create_cus_from_debug_names_list): Replace objfile parameter
13373         with dwarf2_per_objfile and adjust calls.
13374         (create_cus_from_debug_names): Likewise.
13375         (dwarf2_read_debug_names): Likewise.
13376         (mapped_debug_names::namei_to_name): Adjust call.
13377         (dw2_debug_names_iterator::next): Likewise.
13378         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13379         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13380         (dw2_debug_names_dump): Likewise.
13381         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13382         (dw2_debug_names_expand_symtabs_matching): Likewise.
13383         (dwarf2_initialize_objfile): Likewise.
13384         (dwarf2_build_psymtabs): Likewise.
13385         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13386         this_cu.
13387         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13388         (read_and_check_comp_unit_head): Likewise.
13389         (read_abbrev_offset): Likewise.
13390         (create_debug_type_hash_table): Likewise.
13391         (create_debug_types_hash_table): Likewise.
13392         (create_all_type_units): Replace objfile parameter with
13393         dwarf2_per_objfile.
13394         (add_type_unit): Add dwarf2_per_objfile parameter.
13395         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13396         with dwarf2_per_objfile.
13397         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13398         (lookup_dwp_signatured_type): Likewise.
13399         (lookup_signatured_type): Likewise.
13400         (read_cutu_die_from_dwo): Likewise.
13401         (init_tu_and_read_dwo_dies): Likewise.
13402         (init_cutu_and_read_dies): Likewise.
13403         (init_cutu_and_read_dies_no_follow): Likewise.
13404         (allocate_type_unit_groups_table): Add objfile parameter.
13405         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13406         (get_type_unit_group): Likewise.
13407         (process_psymtab_comp_unit): Update call.
13408         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13409         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13410         (print_tu_stats): Likewise.
13411         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13412         in void* parameter.
13413         (build_type_psymtabs): Change objfile parameter to
13414         dwarf2_per_objfile.
13415         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13416         passed in void* parameter.
13417         (process_skeletonless_type_units): Change objfile parameter to
13418         dwarf2_per_objfile.
13419         (set_partial_user): Likewise.
13420         (dwarf2_build_psymtabs_hard): Likewise.
13421         (read_comp_units_from_section): Likewise.
13422         (create_all_comp_units): Likewise.
13423         (scan_partial_symbols): Update calls.
13424         (add_partial_symbol): Likewise.
13425         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13426         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13427         (process_queue): Add dwarf2_per_objfile parameter.
13428         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13429         (compute_compunit_symtab_includes): Likewise.
13430         (process_cu_includes): Add dwarf2_per_objfile parameter.
13431         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13432         (process_full_type_unit): Likewise.
13433         (process_imported_unit_die): Update call.
13434         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13435         (read_file_scope): Likewise.
13436         (allocate_dwo_file_hash_table): Add objfile parameter.
13437         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13438         (create_cus_hash_table): Likewise.
13439         (create_dwp_hash_table): Likewise.
13440         (create_dwo_unit_in_dwp_v1): Likewise.
13441         (create_dwp_v2_section): Likewise.
13442         (create_dwo_unit_in_dwp_v2): Likewise.
13443         (lookup_dwo_unit_in_dwp): Likewise.
13444         (try_open_dwop_file): Likewise.
13445         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13446         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13447         cleanup to include a reference to dwarf2_per_objfile.
13448         (open_dwp_file): Add dwarf2_per_objfile parameter.
13449         (open_and_init_dwp_file): Likewise.
13450         (get_dwp_file): Likewise.
13451         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13452         (queue_and_load_all_dwo_tus): Update call.
13453         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13454         data.
13455         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13456         (dwarf2_ranges_process): Likewise.
13457         (dwarf2_get_pc_bounds): Likewise.
13458         (mark_common_block_symbol_computed): Likewise.
13459         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13460         (dwarf2_read_abbrevs): Update call.
13461         (read_partial_die): Use dwarf2_per_objfile from cu.
13462         (find_partial_die): Likewise.
13463         (fixup_partial_die): Likewise.
13464         (read_attribute_value): Likewise.
13465         (read_indirect_string_at_offset_from): Add objfile parameter.
13466         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13467         parameter.
13468         (read_indirect_string_from_dwz): Add objfile parameter.
13469         (read_indirect_string): Add objfile parameter.
13470         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13471         (read_addr_index): Use dwarf2_per_objfile from cu.
13472         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13473         call dw2_setup.
13474         (read_str_index): Use dwarf2_per_objfile from cu.
13475         (get_debug_line_section): Likewise.
13476         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13477         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13478         (new_symbol_full): Use dwarf2_per_objfile from cu.
13479         (build_error_marker_type): Likewise.
13480         (lookup_die_type): Likewise.
13481         (determine_prefix): Likewise.
13482         (follow_die_offset): Likewise.
13483         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13484         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13485         (dwarf2_fetch_die_type_sect_off): Likewise.
13486         (dwarf2_get_die_type): Likewise.
13487         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13488         (get_signatured_type): Likewise.
13489         (get_DW_AT_signature_type): Likewise.
13490         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13491         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13492         (cu_debug_loc_section): Likewise.
13493         (fill_in_loclist_baton): Likewise.
13494         (dwarf2_symbol_mark_computed): Likewise.
13495         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13496         dwarf2_per_objfile.
13497         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13498         parameter.
13499         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13500         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13501         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13502         (set_die_type): Use dwarf2_free_objfile from cu.
13503         (get_die_type_at_offset): Likewise.
13504         (dwarf2_per_objfile_free): Don't assign global variable.
13505         (debug_names) <constructor>: Add dwarf2_per_objfile
13506         parameter, update m_debugstrlookup construction.
13507         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13508         parameter.
13509         <m_dwarf2_per_objfile>: New field.
13510         <lookup>: Use m_dwarf2_per_objfile.
13511         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13512         (psyms_seen_size): Likewise.
13513         (write_gdbindex): Replace objfile parameter with
13514         dwarf2_per_objfile.
13515         (write_debug_names): Likewise.
13516         (write_psymtabs_to_index): Likewise.
13517         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13518         calls.
13519
13520 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13521
13522         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13523         <dwarf2_per_objfile>: New field.
13524         (struct dwarf2_per_cu_data) <objfile>: Remove.
13525         <dwarf2_per_objfile>: New field.
13526         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13527         of objfile.
13528         (create_signatured_type_table_from_index): Likewise.
13529         (create_debug_type_hash_table): Likewise.
13530         (fill_in_sig_entry_from_dwo_entry): Likewise.
13531         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13532         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13533         objfile.
13534         (create_partial_symtab): Access objfile through
13535         dwarf2_per_objfile.
13536         (process_psymtab_comp_unit_reader): Likewise.
13537         (read_comp_units_from_section): Likewise.
13538         (scan_partial_symbols): Likewise.
13539         (add_partial_symbol): Likewise.
13540         (add_partial_subprogram): Likewise.
13541         (peek_die_abbrev): Likewise.
13542         (fixup_go_packaging): Likewise.
13543         (process_full_comp_unit): Likewise.
13544         (process_full_type_unit): Likewise.
13545         (process_imported_unit_die): Likewise.
13546         (dwarf2_compute_name): Likewise.
13547         (dwarf2_physname): Likewise.
13548         (read_import_statement): Likewise.
13549         (create_cus_hash_table): Assign dwarf2_physname instead of
13550         objfile.
13551         (read_func_scope): Access objfile through dwarf2_per_objfile.
13552         (read_lexical_block_scope): Likewise.
13553         (read_call_site_scope): Likewise.
13554         (read_variable): Likewise.
13555         (dwarf2_rnglists_process): Likewise.
13556         (dwarf2_ranges_process): Likewise.
13557         (dwarf2_ranges_read): Likewise.
13558         (dwarf2_record_block_ranges): Likewise.
13559         (dwarf2_add_field): Likewise.
13560         (dwarf2_add_member_fn): Likewise.
13561         (read_structure_type): Likewise.
13562         (process_structure_scope): Likewise.
13563         (read_enumeration_type): Likewise.
13564         (read_array_type): Likewise.
13565         (read_common_block): Likewise.
13566         (read_namespace_type): Likewise.
13567         (read_namespace): Likewise.
13568         (read_module_type): Likewise.
13569         (read_tag_pointer_type): Likewise.
13570         (read_tag_ptr_to_member_type): Likewise.
13571         (read_tag_string_type): Likewise.
13572         (read_subroutine_type): Likewise.
13573         (read_typedef): Likewise.
13574         (read_base_type): Likewise.
13575         (attr_to_dynamic_prop): Likewise.
13576         (read_subrange_type): Likewise.
13577         (read_unspecified_type): Likewise.
13578         (load_partial_dies): Likewise.
13579         (read_partial_die): Likewise.
13580         (find_partial_die): Likewise.
13581         (guess_partial_die_structure_name): Likewise.
13582         (fixup_partial_die): Likewise.
13583         (read_attribute_value): Likewise.
13584         (read_addr_index_from_leb128): Likewise.
13585         (dwarf2_read_addr_index): Likewise.
13586         (dwarf2_string_attr): Likewise.
13587         (lnp_state_machine::check_line_address): Likewise.
13588         (dwarf_decode_lines_1): Likewise.
13589         (dwarf_decode_lines): Likewise.
13590         (dwarf2_start_symtab): Likewise.
13591         (var_decode_location): Likewise.
13592         (new_symbol_full): Likewise.
13593         (dwarf2_const_value_data): Likewise.
13594         (dwarf2_const_value_attr): Likewise.
13595         (dwarf2_const_value): Likewise.
13596         (die_type): Likewise.
13597         (die_containing_type): Likewise.
13598         (lookup_die_type): Likewise.
13599         (guess_full_die_structure_name): Likewise.
13600         (anonymous_struct_prefix): Likewise.
13601         (dwarf2_name): Likewise.
13602         (follow_die_ref_or_sig): Likewise.
13603         (follow_die_offset): Likewise.
13604         (follow_die_ref): Likewise.
13605         (dwarf2_fetch_die_loc_sect_off): Likewise.
13606         (dwarf2_fetch_constant_bytes): Likewise.
13607         (dwarf2_fetch_die_type_sect_off): Likewise.
13608         (dwarf2_get_die_type): Likewise.
13609         (follow_die_sig): Likewise.
13610         (decode_locdesc): Likewise.
13611         (dwarf2_per_cu_objfile): Likewise.
13612         (dwarf2_per_cu_text_offset): Likewise.
13613         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13614         objfile.
13615         (set_die_type): Access objfile through
13616         dwarf2_per_objfile.
13617
13618 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13619
13620         * valprint.c (converted_character_d): Remove typedef.
13621         (DEF_VEC_O (converted_character_d)): Remove.
13622         (count_next_character): Use std::vector.
13623         (print_converted_chars_to_obstack): Likewise.
13624         (generic_printstr): Likewise.
13625
13626 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13627
13628         * xml-support.h (struct gdb_xml_value): Add constructor.
13629         <value>: Change type to unique_xmalloc_ptr.
13630         (gdb_xml_value_s): Remove typedef.
13631         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13632         (gdb_xml_element_start_handler): Change parameter type to
13633         std::vector.
13634         (xml_find_attribute): Likewise.
13635         * xml-support.c (xml_find_attribute): Change parameter type to
13636         std::vector and adjust.
13637         (gdb_xml_values_cleanup): Remove.
13638         (gdb_xml_parser::start_element): Adjust to std::vector.
13639         (xinclude_start_include): Change paraeter type to std::vector
13640         and adjust.
13641         * btrace.c (check_xml_btrace_version): Likewise.
13642         (parse_xml_btrace_block): Likewise.
13643         (parse_xml_btrace_pt_config_cpu): Likewise.
13644         (parse_xml_btrace_pt): Likewise.
13645         (parse_xml_btrace_conf_bts): Likewise.
13646         (parse_xml_btrace_conf_pt): Likewise.
13647         * memory-map.c (memory_map_start_memory): Likewise.
13648         (memory_map_start_property): Likewise.
13649         * osdata.c (osdata_start_osdata): Likewise.
13650         (osdata_start_item): Likewise.
13651         (osdata_start_column): Likewise.
13652         * remote.c (start_thread): Likewise.
13653         * solib-aix.c (library_list_start_library): Likewise.
13654         (library_list_start_list): Likewise.
13655         * solib-svr4.c (library_list_start_library): Likewise.
13656         (svr4_library_list_start_list): Likewise.
13657         * solib-target.c (library_list_start_segment): Likewise.
13658         (library_list_start_section): Likewise.
13659         (library_list_start_library): Likewise.
13660         (library_list_start_list): Likewise.
13661         * tracepoint.c (traceframe_info_start_memory): Likewise.
13662         (traceframe_info_start_tvar): Likewise.
13663         * xml-syscall.c (syscall_start_syscall): Likewise.
13664         * xml-tdesc.c (tdesc_start_target): Likewise.
13665         (tdesc_start_feature): Likewise.
13666         (tdesc_start_reg): Likewise.
13667         (tdesc_start_union): Likewise.
13668         (tdesc_start_struct): Likewise.
13669         (tdesc_start_flags): Likewise.
13670         (tdesc_start_enum): Likewise.
13671         (tdesc_start_field): Likewise.
13672         (tdesc_start_enum_value): Likewise.
13673         (tdesc_start_vector): Likewise.
13674
13675 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13676
13677         * extension.h (struct xmethod_worker) <clone>: Remove.
13678         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13679         Remove.
13680         (python_xmethod_worker::clone): Remove.
13681         * valops.c (find_overload_match): Use std::move instead of
13682         clone.
13683
13684 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13685
13686         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13687         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13688         <free_xmethod_worker_data>: Remove.
13689         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13690         <get_xmethod_arg_types>: Remove.
13691         <get_xmethod_result_type>: Remove.
13692         <invoke_xmethod>: Remove.
13693         * extension.c (new_xmethod_worker): Remove.
13694         (clone_xmethod_worker): Remove.
13695         (get_matching_xmethod_workers): Return void, pass std::vector by
13696         pointer.
13697         (get_xmethod_arg_types): Rename to...
13698         (xmethod_worker::get_arg_types): ... this, and adjust.
13699         (get_xmethod_result_type): Rename to...
13700         (xmethod_worker::get_result_type): ... this, and adjust.
13701         (invoke_xmethod): Remove.
13702         (free_xmethod_worker): Remove.
13703         (free_xmethod_worker_vec): Remove.
13704         * extension.h (enum ext_lang_rc): Move here from
13705         extension-priv.h.
13706         (struct xmethod_worker): Add constructor and destructor.
13707         <data>: Remove.
13708         <value>: Remove.
13709         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13710         virtual pure methods.
13711         <get_arg_types, get_result_type>: New methods.
13712         (xmethod_worker_ptr): Remove typedef.
13713         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13714         (xmethod_worker_vec): Remove typedef.
13715         (xmethod_worker_up): New typedef.
13716         (invoke_xmethod): Remove.
13717         (clone_xmethod_worker): Remove.
13718         (free_xmethod_worker): Remove.
13719         (free_xmethod_worker_vec): Remove.
13720         (get_xmethod_arg_types): Remove.
13721         (get_xmethod_result_type): Remove.
13722         * valops.c (find_method_list): Use std::vector, don't use
13723         intermediate vector.
13724         (value_find_oload_method_list): Use std::vector.
13725         (find_overload_match): Use std::vector.
13726         (find_oload_champ): Use std::vector.
13727         * value.c (value_free): Use operator delete.
13728         (value_of_xmethod): Rename to...
13729         (value_from_xmethod): ... this.  Don't assign
13730         xmethod_worker::value, take rvalue-reference.
13731         (result_type_of_xmethod): Adjust.
13732         (call_xmethod): Adjust.
13733         * value.h: Include extension.h.
13734         (struct xmethod_worker): Don't forward-declare.
13735         (value_of_xmethod): Rename to...
13736         (value_from_xmethod): ... this, take rvalue-reference.
13737         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13738         (struct python_xmethod_worker): ... this, add constructor and
13739         destructor.
13740         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13741         (gdbpy_free_xmethod_worker_data): Rename to...
13742         (python_xmethod_worker::~python_xmethod_worker): ... this and
13743         adjust.
13744         (gdbpy_clone_xmethod_worker_data): Rename to...
13745         (python_xmethod_worker::clone): ... this and adjust.
13746         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13747         temporary vector.
13748         (gdbpy_get_xmethod_arg_types): Rename to...
13749         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13750         (gdbpy_get_xmethod_result_type): Rename to...
13751         (python_xmethod_worker::do_get_result_type): ... this and
13752         adjust.
13753         (gdbpy_invoke_xmethod): Rename to...
13754         (python_xmethod_worker::invoke): ... this and adjust.
13755         (new_python_xmethod_worker): Rename to...
13756         (python_xmethod_worker::python_xmethod_worker): ... this and
13757         adjust.
13758         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13759         Remove.
13760         (gdbpy_free_xmethod_worker_data): Remove.
13761         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13762         (gdbpy_get_xmethod_arg_types): Remove.
13763         (gdbpy_get_xmethod_result_type): Remove.
13764         (gdbpy_invoke_xmethod): Remove.
13765         * python/python.c (python_extension_ops): Remove obsolete
13766         callbacks.
13767
13768 2018-01-05  Pedro Alves  <palves@redhat.com>
13769
13770         PR gdb/18653
13771         * common/signals-state-save-restore.c
13772         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13773         find a custom handler preinstalled, instead of internal erroring.
13774         But only warn if !quiet.
13775         * common/signals-state-save-restore.h
13776         (save_original_signals_state): New parameter 'quiet'.
13777         * main.c (captured_main_1): Move save_original_signals_state call
13778         after option handling, and pass QUIET.
13779
13780 2018-01-05  Pedro Alves  <palves@redhat.com>
13781
13782         * spu-tdep.c (spu_catch_start): Pass
13783         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13784
13785 2018-01-05  Pedro Alves  <palves@redhat.com>
13786
13787         PR gdb/22670
13788         * ada-lang.c (literal_symbol_name_matcher): New function.
13789         (ada_get_symbol_name_matcher): Use it for
13790         symbol_name_match_type::SEARCH_NAME.
13791         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13792         it down instead of assuming symbol_name_match_type::FULL.
13793         * block.h (block_lookup_symbol): New parameter 'match_type'.
13794         * c-valprint.c (print_unpacked_pointer): Use
13795         lookup_symbol_search_name instead of lookup_symbol.
13796         * compile/compile-object-load.c (get_out_value_type): Pass down
13797         symbol_name_match_type::SEARCH_NAME.
13798         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13799         symbol_name_match_type::FULL.
13800         * cp-support.c (cp_get_symbol_name_matcher): Handle
13801         symbol_name_match_type::SEARCH_NAME.
13802         * infrun.c (insert_exception_resume_breakpoint): Use
13803         lookup_symbol_search_name.
13804         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13805         * psymtab.c (maintenance_check_psymtabs): Use
13806         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13807         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13808         SYMBOL_SEARCH_NAME.
13809         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13810         if symbol_name_match_type::SEARCH_NAME.
13811         (lookup_symbol_in_language): Pass down
13812         symbol_name_match_type::FULL.
13813         (lookup_symbol_search_name): New.
13814         (lookup_language_this): Pass down
13815         symbol_name_match_type::SEARCH_NAME.
13816         (lookup_symbol_aux, lookup_local_symbol): New parameter
13817         'match_type'.  Pass it down.
13818         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13819         (lookup_symbol_search_name): New declaration.
13820         (lookup_symbol_in_block): New 'match_type' parameter.
13821
13822 2018-01-05  Pedro Alves  <palves@redhat.com>
13823
13824         PR gdb/22670
13825         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13826         ada_lookup_symbol.
13827         (ada_lookup_symbol): Reimplement in terms of
13828         ada_lookup_symbol_list, bits factored out from
13829         ada_lookup_encoded_symbol.
13830
13831 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13832
13833         * ada-exp.y (write_object_renaming): When subscripting an array
13834         using a symbol as the index, pass the block in call to
13835         ada_lookup_encoded_symbol when looking that symbol up.
13836
13837 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13838
13839         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13840         TYPE_INDEX_TYPE.
13841
13842 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13843
13844         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13845         the case where VALUE_LVAL (val0) is not lval_memory.
13846
13847 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13848
13849         * ada-valprint.c (print_optional_low_bound): Handle
13850         character-indexed array printing like boolean-indexed array
13851         printing.
13852
13853 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13854
13855         * NEWS: Create a new section for the next release branch.
13856         Rename the section of the current branch, now that it has
13857         been cut.
13858
13859 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13860
13861         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13862         * version.in: Bump version to 8.1.50.DATE-git.
13863
13864 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13865
13866         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13867         Add field.
13868         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13869         Add field.
13870         (default_exception_support_info) <catch_handlers_sym>: Add field.
13871         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13872         (ada_exception_name_addr_1): Add "catch handlers" handling.
13873         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13874         Update all callers.
13875         (create_excep_cond_exprs) <ex>: Add parameter.
13876         (re_set_exception): Update create_excep_cond_exprs call.
13877         (print_it_exception, print_one_exception, print_mention_exception)
13878         (print_recreate_exception): Add "catch handler" handling.
13879         (allocate_location_catch_handlers, re_set_catch_handlers)
13880         (check_status_catch_handlers, print_it_catch_handlers)
13881         (print_one_catch_handlers, print_mention_catch_handlers)
13882         (print_recreate_catch_handlers): New function.
13883         (catch_handlers_breakpoint_ops): New variable.
13884         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13885         Add parameter.  Add "catch handler" handling.
13886         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13887         Add "catch handler" handling.
13888         (ada_exception_catchpoint_cond_string): Add "catch handler"
13889         handling.
13890         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13891         call.
13892         (catch_ada_handlers_command): New function.
13893         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13894         operations structure.
13895         (_initialize_ada_language): Add "catch handlers" command entry.
13896         * NEWS: Document "catch handlers" feature.
13897
13898 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13899
13900         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13901         account when creating the array type of the slice.
13902         (ada_value_slice): Likewise.
13903
13904 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13905
13906         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13907         New enum value.
13908         (create_array_type_with_stride): Add byte_stride_prop parameter.
13909         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13910         New parameter.  Update all callers in this file.
13911         (array_type_has_dynamic_stride): New function.
13912         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13913         of arrays with dynamic byte strides.
13914         * dwarf2read.c (read_array_type): Add support for dynamic
13915         DW_AT_byte_stride attributes.
13916
13917 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13918
13919         * dwarf2read.c (read_unspecified_type): Treat
13920         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13921
13922 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13923
13924         Update copyright year range in all GDB files.
13925
13926 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13927
13928         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13929         and gdb/testsuite/gdb.base/step-line.c.
13930
13931 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13932
13933         * copyright.py (main): Dump the contents of
13934         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13935         even if BY_HAND is empty.
13936
13937 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13938
13939         * top.c (print_gdb_version): Update Copyright year in version
13940         message.
13941
13942 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13943
13944         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13945
13946 For older changes see ChangeLog-2017.
13947 \f
13948 Local Variables:
13949 mode: change-log
13950 left-margin: 8
13951 fill-column: 74
13952 version-control: never
13953 coding: utf-8
13954 End: