Add a "context" argument to add_setshow_enum_cmd
[external/binutils.git] / gdb / ChangeLog
1 2018-12-28  Tom Tromey  <tom@tromey.com>
2
3         * command.h (add_setshow_enum_cmd): Add "context" argument.
4         * cli/cli-decode.c (add_setshow_enum_cmd): Add "context"
5         argument.  Call set_cmd_context.
6
7 2018-12-28  Tom Tromey  <tom@tromey.com>
8
9         * utils.c (filter_initialized): New global.
10         (wrap_buffer): Now a std::string.
11         (wrap_pointer): Remove.
12         (flush_wrap_buffer): New function.
13         (filtered_printing_initialized, set_width, wrap_here)
14         (fputs_maybe_filtered): Update.
15
16 2018-12-28  Eli Zaretskii  <eliz@gnu.org>
17
18         * coffread.c (coff_symtab_read): Don't record in minsyms symbols
19         that are unresolved.  This avoids triggering an internal error
20         when stepping outside of 'main' in MinGW programs.
21
22 2018-12-27  Tom Tromey  <tom@tromey.com>
23
24         * python/py-utils.c (gdbpy_handle_exception): Translate
25         PyExc_KeyboardInterrupt to quit.
26
27 2018-12-27  Tom Tromey  <tom@tromey.com>
28
29         * python/python-internal.h (gdbpy_print_stack_or_quit): Declare.
30         * python/py-unwind.c (pyuw_sniffer): Use
31         gdbpy_print_stack_or_quit.
32         * python/py-framefilter.c (throw_quit_or_print_exception):
33         Remove.
34         (gdbpy_apply_frame_filter): Use gdbpy_print_stack_or_quit.
35         * python/python.c (gdbpy_print_stack_or_quit): New function.
36
37 2018-12-27  Tom Tromey  <tom@tromey.com>
38
39         * python/py-value.c (convert_value_from_python): Use
40         gdbpy_convert_exception.
41         * python/py-param.c (parmpy_init): Use gdbpy_convert_exception.
42         * python/py-cmd.c (cmdpy_init): Use gdbpy_convert_exception.
43         * python/py-breakpoint.c (bppy_init): Use
44         gdbpy_convert_exception.
45
46 2018-12-27  Tom Tromey  <tom@tromey.com>
47
48         * configure.nat (NATDEPFILES): Use nat/ prefix.
49         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
50         (%.o: ${srcdir}/nat/%.c): Remove rule.
51         (INIT_FILES): Do not filter out NATDEPFILES.
52
53 2018-12-27  Tom Tromey  <tom@tromey.com>
54
55         * Makefile.in (INIT_FILES): Redefine.
56         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
57         set LANG or LC_ALL.
58
59 2018-12-27  Tom Tromey  <tom@tromey.com>
60
61         * Makefile.in (stamp-init): Remove gdbtypes special case.
62
63 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
64
65         * config/i386/nm-fbsd.h: Remove file.
66         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
67         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
68
69 2018-12-27  Tom Tromey  <tom@tromey.com>
70
71         * minsyms.h (class minimal_symbol_reader): Use
72         DISABLE_COPY_AND_ASSIGN.
73
74 2018-12-27  Tom Tromey  <tom@tromey.com>
75
76         * python/python.c (python_interactive_command): Use std::string.
77         (gdbpy_parameter): Likewise.
78         * python/py-utils.c (unicode_to_encoded_string): Update comment.
79         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
80         * python/py-record-btrace.c (recpy_bt_insn_data): Use
81         byte_vector.
82         * python/py-objfile.c (objfpy_get_build_id): Use
83         unique_xmalloc_ptr.
84         * python/py-inferior.c (infpy_read_memory): Use
85         unique_xmalloc_ptr.
86         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
87
88 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
89
90         * target.c (target_terminal::restore_inferior): Remove struct keyword.
91
92 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
93
94         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
95         * symfile.c (separate_debug_file_exists): Likewise.
96
97 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
98
99         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
100         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
101         names.
102         (typename_stoken): New function.
103
104 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
105
106         * c-exp.y (field_name): New %token, and new rule.
107         (exp): Replace uses of 'name' with 'field_name' where appropriate.
108
109 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
110
111         PR gdb/13368
112         * c-exp.y (typebase): Extend the comment.
113         (ident_tokens): Likewise.
114
115 2018-12-18  Tom Tromey  <tom@tromey.com>
116
117         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
118         address of sect_off.
119
120 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
121
122         GDB 8.2.1 released.
123
124 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
125
126         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
127         assigning locations.
128         (riscv_return_value): Take more care not to read/write outside of
129         argument buffer.  Cast return value between the declared type and
130         the abi type.
131
132 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
133
134         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
135         fflags, and frm registers.
136
137 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
138
139         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
140         (riscv_gdbarch_init): Register new function with gdbarch.
141         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
142
143 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
144
145         * minsyms.c (mst_str): New.
146         (minimal_symbol_reader::record_full): Add debug output.
147
148 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
149
150         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
151         equal PL_FLAG_SI.
152         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
153
154 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
155
156         PR gdb/23974
157         * target.c (target_read_stralloc): Check for empty vector.
158
159 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
160
161         * top.c (print_gdb_configuration): Print "--without-python"
162         if GDB was configured without Python.
163
164 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
165
166         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
167         a signed offset as a string.
168
169 2018-12-21  Dave Murphy  <davem@devkitpro.org>
170
171         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
172         initialise.
173         * probe.c (any_static_probe_ops): Ditto.
174         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
175         * stap-probe.c (stap_static_probe_ops): Ditto.
176         * tui/tui-hooks.c (tui_observers_token): Ditto.
177         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
178
179 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
180
181         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
182         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
183         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
184         (default_unwind_sp): Define new function.
185         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
186         (default_unwind_sp): Declare new function.
187         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
188         available.
189         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
190         * gdb/gdbarch.c: Regenerate.
191         * gdb/gdbarch.h: Regenerate.
192         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
193         unwind_sp.  Add additional header files to be included in
194         generated file.
195
196 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
197
198         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
199         sp clobbers.
200
201 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
202
203         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
204         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
205         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
206         'processing_has_namespace_info' from unsigned int to bool.  Update
207         comments.
208         (producer_is_icc_lt_14): Update return type.
209         (producer_is_gcc_lt_4_3): Likewise.
210         (producer_is_gxx_lt_4_6): Likewise.
211         (process_die): Write true instead of 1 into predicate fields.
212         (dwarf2_start_symtab): Likewise.
213         (var_decode_location): Likewise.
214         (dwarf2_mark_helper): Likewise.
215         (dwarf2_mark): Likewise.
216         (dwarf2_clear_marks): Write false instead of 0 into predicate
217         field.
218         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
219         0.
220
221 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
222
223         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
224         asm/sigcontext.h.
225
226 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
227
228         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
229         warning trailing new line.
230
231 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
232
233         * nat/linux-ptrace.c (kill_child): New function.
234         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
235         Add a call to kill_child in case of early return after fork.
236         (linux_check_ptrace_features): Use kill_child instead of local code.
237         (linux_test_for_tracefork): Likewise.
238
239 2018-12-14  Tom Tromey  <tom@tromey.com>
240
241         * Makefile.in: Remove "alloca" comment.
242         (INFOFILES): Remove.
243         (local-maintainer-clean): Don't use INFOFILES.
244
245 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
246
247         * syscalls/update-freebsd.sh: New file.
248         * syscalls/freebsd.xml: Regenerate.
249
250 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
251
252         * NEWS: Add entry documenting system call aliases.
253         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
254         to get_syscalls_by_name.
255         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
256         * gdbarch.h: Regenerate.
257         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
258         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
259         from get_syscall_by_name.  Now accepts a pointer to a vector of
260         integers and returns a bool.
261         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
262         (syscall_create_syscall_desc): Add alias parameter and pass it to
263         syscall_desc constructor.
264         (syscall_start_syscall): Handle alias attribute.
265         (syscall_attr): Add alias attribute.
266         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
267         Now accepts a pointer to a vector of integers and returns a
268         bool.  Add syscalls whose alias or name matches the requested
269         name.
270         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
271         accepts a pointer to a vector of integers and returns a bool.
272         * xml-syscall.h (get_syscalls_by_name): Likewise.
273
274 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
275
276         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
277         to get_syscalls_by_group.
278         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
279         false.
280         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
281         numbers to an existing vector of integers and return a bool.
282         (get_syscalls_by_group): Accept pointer to vector of integers
283         and change return type to bool.
284         * xml-syscall.h (get_syscalls_by_group): Likewise.
285
286 2018-12-13  Jim Wilson  <jimw@sifive.com>
287
288         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
289         comment for SD field, and correct xlen calculation.  For MISA, add
290         comment for MXL field, add call to register_size, and correct base
291         calculation.
292
293 2018-12-13  Stafford Horne  <shorne@gmail.com>
294
295         * NEWS(New targets): Add or1k*-*-linux*.
296
297 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
298
299         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
300         declare on one line to fix ARI warning.
301
302 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
303
304         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
305         (infcall_suspend_state::registers): New.
306         (infcall_suspend_state::restore): New.
307         (infcall_suspend_state::thread_suspend): Rename to...
308         (infcall_suspend_state::m_thread_suspend): ...this.
309         (infcall_suspend_state::registers): Rename to...
310         (infcall_suspend_state::m_registers): ...this.
311         (infcall_suspend_state::siginfo_gdbarch): Rename to...
312         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
313         (infcall_suspend_state::siginfo_data): Rename to...
314         (infcall_suspend_state::m_siginfo_data): ...this.
315         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
316         constructor.
317         (restore_infcall_suspend_state): Rewrite to use
318         infcall_suspend_state::restore method.
319         (get_infcall_suspend_state_regcache): Use
320         infcall_suspend_state::registers method.
321
322 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
323
324         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
325         arguments are passed in integer registers.
326         (riscv_call_arg_complex_float): Likewise.
327
328 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
329
330         * nat/linux-osdata.c (common_getter): New function.
331         (struct osdata_type): Change getter to take_snapshot.
332         Add LONGEST len_avail and struct buffer buffer.
333         Change all elements in the initializer.
334         Add an element for the list of types.
335         (linux_xfer_osdata_info_os_types): New function.
336         (linux_common_xfer_osdata): Use common_getter for the list of types.
337         Replace getter call by common_getter.
338         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
339         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
340         (linux_xfer_osdata_fds): Likewise.
341         (linux_xfer_osdata_modules): Likewise.
342         (linux_xfer_osdata_msg): Likewise.
343         (linux_xfer_osdata_processes): Likewise.
344         (linux_xfer_osdata_processgroups): Likewise.
345         (linux_xfer_osdata_sem): Likewise.
346         (linux_xfer_osdata_shm): Likewise.
347         (linux_xfer_osdata_isockets): Likewise.
348         (linux_xfer_osdata_threads): Likewise.
349
350 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
351
352         * nat/linux-osdata.c: Removed various trailing spaces.
353
354 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
355
356         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
357         leading whitespace before #include line.
358
359 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
360             Дилян Палаузов  <dilyan.palauzov@aegee.org>
361
362         PR gdb/23950
363         * configure.ac: Search for tgetent in libtinfow.
364         * configure: Re-generate.
365
366 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
367
368         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
369         (thread_db_err_str): Forward declare.
370         (delete_thread_db_info): Call td_ta_delete_p if available.
371         (try_thread_db_load_1): Acquire td_ta_delete address.
372         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
373
374 2018-12-08  Pedro Alves  <palves@redhat.com>
375
376         * source.c (forward_search_command): Rename to ...
377         (search_command_helper): ... this.  Add 'forward' parameter.
378         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
379         buffer.  Handle backward searches too.
380         (forward_search_command, reverse_search_command): Reimplement by
381         calling search_command_helper.
382
383 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
384
385         * .dir-locals.el: Copy most of the settings from c-mode over to
386         c++-mode.
387
388 2018-12-08  Stafford Horne  <shorne@gmail.com>
389
390         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
391         * configure.tgt: Add or1k*-*-linux*.
392         * or1k-linux-tdep.c: New file.
393         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
394
395 2018-12-07  Pedro Alves  <palves@redhat.com>
396
397         * dwarf2read.c (get_gdb_index_contents_from_section): Use
398         gdb::make_array_view.
399
400 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
401
402         * language.c (_initialize_language): Fix leak by assigning
403         a static string to language.  Same for range and case_sensitive,
404         even if no leak is detected for these variables.
405
406 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
407
408         * configure: Re-generate.
409         * configure.ac: Use separate sed expressions to escape variables
410         in auto-load directories.
411
412 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
413
414         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
415         (riscv_find_default_target_description): Use new function to
416         extract feature from gdbarch_info.
417         (riscv_gdbarch_init): Add error checks for xlen and flen between
418         target description and bfd headers.  Be smarter about when we
419         think the hardware floating point abi should be used.
420
421 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
422
423         * nat/aarch64-linux-hw-point.c
424         (aarch64_linux_any_set_debug_regs_state): New function.
425         * nat/aarch64-linux-hw-point.h
426         (aarch64_linux_any_set_debug_regs_state): New declaration.
427         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
428         BPs or WPs are set.
429
430 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
431
432         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
433         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
434
435 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
436             Simon Marchi  <simon.marchi@ericsson.com>
437
438         * linespec.c (symtab_vector_up): Remove.
439         (symtabs_from_filename): Change return type to std::vector.
440         (collect_symtabs_from_filename): Likewise.
441         (create_sals_line_offset): Assign return value of
442         collect_symtabs_from_filename to *ls->file_symtabs.
443         (convert_explicit_location_to_linespec): Remove call to release.
444         (parse_linespec): Likewise.
445         (symtab_collector) <symtab_collector>: Remove initialization of
446         m_symtabs.
447         <release_symtabs>: Change return type to std::vector<symtab *>.
448         <operator ()>: Adjust.
449
450 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
451
452         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
453         defined.
454         (union sigval32, struct siginfo32, fbsd_siginfo_size)
455         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
456         of KERN_PROC_AUXV and PT_LWPINFO.
457         (fbsd_nat_target::xfer_partial): Define method unconditionally.
458         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
459         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
460         Make TARGET_OBJECT_FREEBSD_VMMAP and
461         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
462         and KERN_PROC_PS_STRINGS.
463         * fbsd-nat.h: Include <sys/proc.h>.
464         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
465
466 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
467
468         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
469         header files.
470         (riscv_linux_nat_target::read_description): New method.
471
472 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
473
474         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
475         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
476         (riscv_tdesc_cache): New global.
477         (riscv_create_target_description): Look in the cache before
478         creating a new target description.
479
480 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
481
482         * arch/riscv.h (riscv_gdb_features::operator==): New.
483         (riscv_gdb_features::operator!=): New.
484         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
485         operator.
486
487 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
488
489         * arch/riscv.h (riscv_create_target_description): Make return type
490         const.
491         * arch/riscv.c (riscv_create_target_description): Likewise.
492         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
493
494 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
495             Keith Seitz  <keiths@redhat.com>
496             Tom Tromey  <tom@tromey.com>
497             Sergio Durigan Junior  <sergiodj@redhat.com>
498
499         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
500         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
501         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
502         inside the CU.
503
504 2018-11-30  Pedro Alves  <palves@redhat.com>
505
506         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
507         <stratum>: New override.
508         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
509         <stratum>: New override.
510         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
511         <stratum>: New override.
512         * exec.c (exec_target) <exec_target>: Delete.
513         <stratum>: New override.
514         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
515         stratum method instead of the to_stratum field.
516         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
517         <stratum>: New override.
518         (thread_db_target::thread_db_target): Delete.
519         * make-target-delegates (print_class): Don't print a ctor
520         declaration.  Print a stratum method override declaration.
521         * process-stratum-target.h (process_stratum_target)
522         <process_stratum_target>: Delete.
523         <stratum>: New override.
524         * ravenscar-thread.c (ravenscar_thread_target)
525         <ravenscar_thread_target>: Delete.
526         <stratum>: New override.
527         * record-btrace.c (record_btrace_target)
528         <record_btrace_target>: Delete.
529         <stratum>: New override.
530         * record-full.c (record_full_base_target)
531         <record_full_base_target>: Delete.
532         <stratum>: New override.
533         * record.c (record_disconnect, record_detach)
534         (record_mourn_inferior, record_kill): Adjust to use the stratum
535         method instead of the to_stratum field.
536         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
537         * sol-thread.c (sol_thread_target)
538         <sol_thread_target>: Delete.
539         <stratum>: New override.
540         * spu-multiarch.c (spu_multiarch_target)
541         <spu_multiarch_target>: Delete.
542         <stratum>: New override.
543         * target-delegates.c: Regenerate.
544         * target.c (target_stack::push, target_stack::unpush)
545         (pop_all_targets_above, pop_all_targets_at_and_above)
546         (info_target_command, target_require_runnable)
547         (target_stack::find_beneath): Adjust to use the stratum method
548         instead of the to_stratum field.
549         (dummy_target::dummy_target): Delete.
550         (dummy_target::stratum): New.
551         (debug_target::debug_target): Delete.
552         (debug_target::stratum): New.
553         (maintenance_print_target_stack): Adjust to use the stratum method
554         instead of the to_stratum field.
555         * target.h (struct target_ops) <stratum>: New method.
556         <to_stratum>: Delete.
557         <is_pushed>: Adjust to use the stratum method
558         instead of the to_stratum field.
559
560 2018-11-30  Pedro Alves  <palves@redhat.com>
561
562         * corelow.c (core_target) <has_all_memory, has_execution>: New
563         overrides.
564         * inf-child.c (inf_child_target::has_all_memory)
565         (inf_child_target::has_memory, inf_child_target::has_stack)
566         (inf_child_target::has_registers)
567         (inf_child_target::has_execution): Delete.
568         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
569         has_stack, has_registers, has_execution>: Delete.
570         * process-stratum-target.c
571         (process_stratum_target::has_all_memory)
572         (process_stratum_target::has_memory)
573         (process_stratum_target::has_stack)
574         (process_stratum_target::has_registers)
575         (process_stratum_target::has_execution): New.
576         * process-stratum-target.h (process_stratum_target)
577         <has_all_memory, has_memory, has_stack, has_registers,
578         has_execution>: New method overrides.
579         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
580         has_memory, has_stack, has_registers, has_execution>: Delete.
581         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
582         has_execution>: Delete.
583         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
584         has_registers, has_execution>: Delete.
585         * target.c (default_child_has_all_memory)
586         (default_child_has_memory, default_child_has_stack)
587         (default_child_has_registers, default_child_has_execution):
588         Delete.
589         * target.h (default_child_has_all_memory)
590         (default_child_has_memory, default_child_has_stack)
591         (default_child_has_registers, default_child_has_execution):
592         Delete.
593         * tracefile.h (tracefile_target) <has_execution>: New override.
594
595 2018-11-30  Pedro Alves  <palves@redhat.com>
596
597         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
598         * bsd-kvm.c: Include "process-stratum-target.h".
599         (bsd_kvm_target): Now inherits from process_stratum_target.
600         (bsd_kvm_target::bsd_kvm_target): Default it.
601         * corelow.c: Include "process-stratum-target.h".
602         (core_target): Now inherits from process_stratum_target.
603         (core_target::core_target): Don't set to_stratum here.
604         * inf-child.c (inf_child_target::inf_child_target): Delete.
605         * inf-child.h: Include "process-stratum-target.h".
606         (inf_child_target): Inherit from process_stratum_target.
607         (inf_child_target) <inf_child_target>: Default it.
608         <can_async_p, supports_non_stop, supports_disable_randomization>:
609         Delete overrides.
610         * process-stratum-target.c: New file.
611         * process-stratum-target.h: New file.
612         * remote-sim.c: Include "process-stratum-target.h".
613         (gdbsim_target): Inherit from process_stratum_target.
614         <gdbsim_target>: Default it.
615         * remote.c: Include "process-stratum-target.h".
616         (remote_target): Inherit from process_stratum_target.
617         <remote_target>: Default it.
618         * target.c (default_thread_address_space)
619         (default_thread_architecture): Delete.
620         * target.h (target_ops) <thread_architecture>: Now returns NULL by
621         default.
622         <thread_address_space>: Ditto.
623         * test-target.h: Include "process-stratum-target.h" instead of
624         "target.h".
625         (test_target_ops): Inherit from process_stratum_target.
626         <test_target_ops>: Default it.
627         * tracefile.c (tracefile_target::tracefile_target): Delete.
628         * tracefile.h: Include "process-stratum-target.h".
629         (tracefile_target): Inherit from process_stratum_target.
630         <tracefile_target>: Default it.
631         * target-delegates.c: Regenerate.
632
633 2018-11-30  Pedro Alves  <palves@redhat.com>
634
635         * Makefile.in (COMMON_SFILES): Add test-target.c.
636         * gdbarch-selftests.c: Include "test-target.h".
637         * regcache.c: Include "test-target.h".
638         * target.c (test_target_info, test_target_ops::info): Move to ...
639         * test-target.c: ... this new file.
640         * target.h (test_target_ops): Move to ...
641         * test-target.h: ... this new file.
642
643 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
644
645         * source.c (forward_search_command): Fix leak by using
646         xrealloc even for the first allocation in the loop, as buf
647         is static.
648
649 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
650
651         PR gdb/23093
652         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
653         (fbsd_gdb_signal_to_target): New.
654         (fbsd_init_abi): Install gdbarch "signal_from_target" and
655         "signal_to_target" methods.
656
657 2018-11-29  Tom Tromey  <tom@tromey.com>
658
659         * valarith.c (value_x_unop): Don't set argvec[3].
660
661 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
662
663         PR gdb/23917
664         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
665         semicolon.
666
667 2018-11-26  Pedro Alves  <palves@redhat.com>
668
669         * procfs.c (procfs_notice_thread): Replace uses of
670         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
671         * sol-thread.c (sol_thread_target::wait)
672         (sol_update_thread_list_callback): Likewise.
673
674 2018-11-25  Tom Tromey  <tom@tromey.com>
675
676         * ui-out.c (ui_out::field_fmt): Remove comment.
677         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
678         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
679
680 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
681
682         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
683         leak in open_source_file' has been partially undone by '2179fbc36d23
684         Return scoped_fd from open_source_file'. Re-add the transfer of
685         current s->fullname to the unique_xmalloc_ptr fullname given
686         to find_and_open_source.
687
688 2018-11-23  Pedro Alves  <palves@redhat.com>
689
690         * gdbthread.h (enum thread_state): Move comments here.
691         (is_running, is_stopped, is_exited): Remove declarations.
692
693 2018-11-22  Pedro Alves  <palves@redhat.com>
694
695         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
696         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
697         ALL_NON_EXITED_THREADS with all_non_exited_threads.
698         (print_one_breakpoint_location): Replace ALL_INFERIORS with
699         all_inferiors.
700         * bsd-kvm.c: Include inferior.h.
701         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
702         with all_non_exited_threads.
703         * common/filtered-iterator.h: New.
704         * common/safe-iterator.h: New.
705         * corelow.c (core_target_open): Don't call init_thread_list here.
706         * darwin-nat.c (thread_info_from_private_thread_info): Replace
707         ALL_THREADS with all_threads.
708         * fbsd-nat.c (fbsd_nat_target::resume): Replace
709         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
710         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
711         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
712         * fork-child.c (postfork_hook): Don't call init_thread_list here.
713         * gdbarch-selftests.c (register_to_value_test): Adjust.
714         * gdbthread.h: Don't include "inferior.h" here.
715         (struct inferior): Forward declare.
716         (enum step_over_calls_kind): Moved here from inferior.h.
717         (thread_info::deletable): Definition moved to thread.c.
718         (find_thread_ptid (inferior *, ptid_t)): Declare.
719         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
720         Include "thread-iter.h".
721         (all_threads, all_non_exited_threads, all_threads_safe): New.
722         (any_thread_p): Declare.
723         (thread_list): Delete.
724         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
725         all_non_exited_threads.
726         (proceed_after_attach_callback): Delete.
727         (proceed_after_attach): Take an inferior pointer instead of an
728         integer PID.  Adjust to use range-for.
729         (attach_post_wait): Pass down inferior pointer instead of pid.
730         Use range-for instead of ALL_NON_EXITED_THREADS.
731         (detach_command): Remove init_thread_list call.
732         * inferior-iter.h: New.
733         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
734         (delete_thread_of_inferior): Delete.
735         (delete_inferior, exit_inferior_1): Use range-for with
736         inf->threads_safe() instead of iterate_over_threads.
737         (inferior_appeared): Call init_thread_list here.
738         (discard_all_inferiors): Use all_non_exited_inferiors.
739         (find_inferior_id, find_inferior_pid): Use all_inferiors.
740         (iterate_over_inferiors): Use all_inferiors_safe.
741         (have_inferiors, number_of_live_inferiors): Use
742         all_non_exited_inferiors.
743         (number_of_inferiors): Use all_inferiors and std::distance.
744         (print_inferior): Use all_inferiors.
745         * inferior.h: Include gdbthread.h.
746         (enum step_over_calls_kind): Moved to gdbthread.h.
747         (struct inferior) <thread_list>: New field.
748         <threads, non_exited_threads, threads_safe>: New methods.
749         (ALL_INFERIORS): Delete.
750         Include "inferior-iter.h".
751         (ALL_NON_EXITED_INFERIORS): Delete.
752         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
753         functions.
754         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
755         ALL_NON_EXITED_THREADS with all_non_exited_threads.
756         * infrun.c (follow_exec): Use all_threads_safe.
757         (clear_proceed_status, proceed): Use all_non_exited_threads.
758         (init_wait_for_inferior): Don't clear inline frame state here.
759         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
760         all_threads instead of ALL_NON_EXITED_THREADS.
761         (random_pending_event_thread): Use all_non_exited_threads instead
762         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
763         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
764         instead of ALL_NON_EXITED_THREADS.
765         (handle_no_resumed): Use all_non_exited_threads instead of
766         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
767         ALL_INFERIORS.
768         (restart_threads, switch_back_to_stepped_thread): Use
769         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
770         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
771         all_inferiors.
772         (kill_unfollowed_fork_children): Use inf->non_exited_threads
773         instead of ALL_NON_EXITED_THREADS.
774         * linux-tdep.c (linux_make_corefile_notes): Use
775         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
776         * linux-thread-db.c (thread_db_target::update_thread_list):
777         Replace ALL_INFERIORS with all_inferiors.
778         (thread_db_target::thread_handle_to_thread_info): Use
779         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
780         * mi/mi-interp.c (multiple_inferiors_p): New.
781         (mi_on_resume_1): Simplify using all_non_exited_threads and
782         multiple_inferiors_p.
783         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
784         instead of ALL_NON_EXITED_THREADS.
785         * nto-procfs.c (nto_procfs_target::open): Don't call
786         init_thread_list here.
787         * record-btrace.c (record_btrace_target_open)
788         (record_btrace_target::stop_recording)
789         (record_btrace_target::close)
790         (record_btrace_target::record_is_replaying)
791         (record_btrace_target::resume, record_btrace_target::wait)
792         (record_btrace_target::record_stop_replaying): Use
793         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
794         * record-full.c (record_full_wait_1): Use all_non_exited_threads
795         instead of ALL_NON_EXITED_THREADS.
796         * regcache.c (cooked_read_test): Remove reference to global
797         thread_list.
798         * remote-sim.c (gdbsim_target::create_inferior): Don't call
799         init_thread_list here.
800         * remote.c (remote_target::update_thread_list): Use
801         all_threads_safe instead of ALL_NON_EXITED_THREADS.
802         (remote_target::process_initial_stop_replies): Replace
803         ALL_INFERIORS with all_non_exited_inferiors and use
804         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
805         (remote_target::open_1): Don't call init_thread_list here.
806         (remote_target::append_pending_thread_resumptions)
807         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
808         instead of ALL_NON_EXITED_THREADS.
809         (remote_target::commit_resume)
810         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
811         with all_non_exited_inferiors and use all_non_exited_threads
812         instead of ALL_NON_EXITED_THREADS.
813         (remote_target::kill_new_fork_children): Use
814         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
815         init_thread_list and init_wait_for_inferior calls.
816         (remote_target::remote_btrace_maybe_reopen)
817         (remote_target::thread_handle_to_thread_info): Use
818         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
819         * target.c (target_terminal::restore_inferior)
820         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
821         all_non_exited_inferiors.
822         * thread-iter.c: New file.
823         * thread-iter.h: New file.
824         * thread.c: Include "inline-frame.h".
825         (thread_list): Delete.
826         (clear_thread_inferior_resources): Call clear_inline_frame_state.
827         (init_thread_list): Use all_threads_safe instead of
828         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
829         (new_thread): Adjust to per-inferior thread lists.
830         (add_thread_silent): Pass inferior to find_thread_ptid.
831         (thread_info::deletable): New, moved from the header.
832         (delete_thread_1): Adjust to per-inferior thread lists.
833         (find_thread_global_id): Use inf->threads().
834         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
835         find_thread_ptid.
836         (find_thread_ptid(inferior*, ptid_t)): New overload.
837         (iterate_over_threads): Use all_threads_safe.
838         (any_thread_p): New.
839         (thread_count): Use all_threads and std::distance.
840         (live_threads_count): Use all_non_exited_threads and
841         std::distance.
842         (valid_global_thread_id): Use all_threads.
843         (in_thread_list): Use find_thread_ptid.
844         (first_thread_of_inferior): Adjust to per-inferior thread lists.
845         (any_thread_of_inferior, any_live_thread_of_inferior): Use
846         inf->non_exited_threads().
847         (prune_threads, delete_exited_threads): Use all_threads_safe.
848         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
849         (set_resumed, set_running): Use all_non_exited_threads.
850         (is_thread_state, is_stopped, is_exited, is_running)
851         (is_executing): Delete.
852         (set_executing, set_stop_requested, finish_thread_state): Use
853         all_non_exited_threads.
854         (print_thread_info_1): Use all_inferiors and all_threads.
855         (thread_apply_all_command): Use all_non_exited_threads.
856         (thread_find_command): Use all_threads.
857         (update_threads_executing): Use all_non_exited_threads.
858         * tid-parse.c (parse_thread_id): Use inf->threads.
859         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
860
861 2018-11-22  Pedro Alves  <palves@redhat.com>
862
863         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
864         switch to it before calling into try_open_exec_file.
865
866 2018-11-22  Pedro Alves  <palves@redhat.com>
867
868         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
869         inferior_thread instead of find_thread_ptid, and only when
870         inferior_ptid is not null_ptid.
871         * inferior.c (add_inferior): Don't include target_pid_to_str
872         output when the inferior is not started.
873         * python/py-inferior.c (python_on_normal_stop): Don't use
874         find_thread_ptid.
875         (tui_on_user_selected_context_changed): Use inferior_thread
876         instead of find_thread_ptid, and only when inferior_ptid is not
877         null_ptid.
878
879 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
880
881         PR python/23714
882         * gdb/python/python.c (execute_gdb_command): Call
883         prevent_dont_repeat earlier to avoid affecting dont_repeat.
884
885 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
886
887         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
888         (HFILES_NO_SRCDIR): Add arch/riscv.h.
889         * arch/riscv.c: New file.
890         * arch/riscv.h: New file.
891         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
892         this list, and add arch/riscv.o.
893         * features/Makefile: Add riscv features.
894         * features/riscv/32bit-cpu.c: New file.
895         * features/riscv/32bit-cpu.xml: New file.
896         * features/riscv/32bit-csr.c: New file.
897         * features/riscv/32bit-csr.xml: New file.
898         * features/riscv/32bit-fpu.c: New file.
899         * features/riscv/32bit-fpu.xml: New file.
900         * features/riscv/64bit-cpu.c: New file.
901         * features/riscv/64bit-cpu.xml: New file.
902         * features/riscv/64bit-csr.c: New file.
903         * features/riscv/64bit-csr.xml: New file.
904         * features/riscv/64bit-fpu.c: New file.
905         * features/riscv/64bit-fpu.xml: New file.
906         * features/riscv/rebuild-csr-xml.sh: New file.
907         * riscv-tdep.c: Add 'arch/riscv.h' include.
908         (riscv_gdb_reg_names): Delete.
909         (csr_reggroup): New global.
910         (struct riscv_register_alias): Delete.
911         (struct riscv_register_feature): New structure.
912         (riscv_register_aliases): Delete.
913         (riscv_xreg_feature): New global.
914         (riscv_freg_feature): New global.
915         (riscv_virtual_feature): New global.
916         (riscv_csr_feature): New global.
917         (riscv_create_csr_aliases): New function.
918         (riscv_read_misa_reg): Delete.
919         (riscv_has_feature): Delete.
920         (riscv_isa_xlen): Simplify, just return cached xlen.
921         (riscv_isa_flen): Simplify, just return cached flen.
922         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
923         (riscv_register_name): Update to make use of tdesc_register_name.
924         Look up xreg and freg names in the new globals riscv_xreg_feature
925         and riscv_freg_feature.  Don't supply csr aliases here.
926         (riscv_fpreg_q_type): Delete.
927         (riscv_register_type): Use tdesc_register_type in almost all
928         cases, override the returned type in a few specific cases only.
929         (riscv_print_one_register_info): Handle errors reading registers.
930         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
931         registers that are otherwise unknown to GDB.  Also check the
932         csr_reggroup.
933         (riscv_print_registers_info): Remove assert about upper register
934         number, and use gdbarch_register_reggroup_p instead of
935         short-cutting.
936         (riscv_find_default_target_description): New function.
937         (riscv_check_tdesc_feature): New function.
938         (riscv_add_reggroups): New function.
939         (riscv_setup_register_aliases): New function.
940         (riscv_init_reggroups): New function.
941         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
942         setup register groups.  Register new riscv debug variable.
943         * riscv-tdep.h: Add 'arch/riscv.h' include.
944         (struct gdbarch_tdep): Remove abi union, and add
945         riscv_gdbarch_features field.  Remove cached quad floating point
946         type, and provide initialisation for double type field.
947         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
948         the list of targets using the feature based target descriptions.
949         * NEWS: Mention target description support.
950
951 2018-11-21  Pedro Alves  <palves@redhat.com>
952
953         * valops.c (find_method_list, value_find_oload_method_list)
954         (find_overload_match, find_oload_champ): Rename parameters and
955         locals.
956
957 2018-11-21  Pedro Alves  <palves@redhat.com>
958
959         * valops.c (find_method_list): Replace pointer and length
960         parameters with an gdb::array_view.  Adjust.
961         (value_find_oload_method_list): Likewise.
962         (find_overload_match): Use gdb::array_view for methods list.
963         Adjust to find_oload_champ interface change.
964         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
965         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
966
967 2018-11-21  Pedro Alves  <palves@redhat.com>
968
969         * gdbtypes.c (compare_badness): Change type of parameters to const
970         reference.  Adjust to badness_vector being a std::vector now.
971         (rank_function): Adjust to badness_vector being a std::vector now.
972         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
973         (LENGTH_MATCH): Delete.
974         (compare_badness): Change type of parameters to const reference.
975         (rank_function): Return a badness_vector by value now.
976         (find_overload_match): Adjust to badness_vector being a
977         std::vector now.  Remove cleanups.
978         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
979         badness_vector pointer.
980         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
981         a badness_vector pointer.  Adjust to badness_vector being a
982         std::vector now.  Remove cleanups.
983         (find_oload_champ): 'oload_champ_bv' parameter now
984         a badness_vector pointer.  Adjust to badness_vector being a
985         std::vector now.  Remove cleanups.
986
987 2018-11-21  Pedro Alves  <palves@redhat.com>
988
989         * cp-support.c (sym_return_val_size, sym_return_val_index)
990         (sym_return_val): Delete.
991         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
992         add to the vector.
993         (make_symbol_overload_list): Adjust to return a std::vector
994         instead of maintaining a global open coded vector.
995         (make_symbol_overload_list_block): Add std::vector parameter.
996         (make_symbol_overload_list_block): Rename to ...
997         (add_symbol_overload_list_block): ... this and add std::vector
998         parameter.
999         (make_symbol_overload_list_namespace): Rename to ...
1000         (add_symbol_overload_list_namespace): ... this and add std::vector
1001         parameter.
1002         (make_symbol_overload_list_adl_namespace): Rename to ...
1003         (add_symbol_overload_list_adl_namespace): ... this and add
1004         std::vector parameter.
1005         (make_symbol_overload_list_adl): Delete.
1006         (add_symbol_overload_list_adl): New.
1007         (make_symbol_overload_list_using): Rename to ...
1008         (add_symbol_overload_list_using): ... this and add std::vector
1009         parameter.
1010         (make_symbol_overload_list_qualified): Rename to ...
1011         (add_symbol_overload_list_qualified): ... this and add std::vector
1012         parameter.
1013         * cp-support.h: Include "common/array-view.h" and <vector>.
1014         (make_symbol_overload_list): Change return type to std::vector.
1015         (make_symbol_overload_list_adl): Delete declaration.
1016         (add_symbol_overload_list_adl): New declaration.
1017         * valops.c (find_overload_match): Local 'oload_syms' now a
1018         std::vector.
1019         (find_oload_champ_namespace): 'oload_syms' parameter now a
1020         std::vector pointer.
1021         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
1022         std::vector pointer.  Adjust to new make_symbol_overload_list
1023         interface.
1024
1025 2018-11-21  Pedro Alves  <palves@redhat.com>
1026
1027         * common/array-view.h (array_view::splice(size_type, size_t)): New.
1028         (array_view::splice(size_type)): New.
1029         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
1030         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
1031         std::vector.
1032         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1033         * extension.h: Include "common/array-view.h".
1034         (xmethod_worker::invoke): Adjust to use gdb::array_view.
1035         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
1036         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
1037         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
1038         (xmethod_worker::do_get_result_type): Adjust to use
1039         gdb::array_view.
1040         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
1041         * gdbtypes.h: Include "common/array-view.h".
1042         (rank_function): Adjust to use gdb::array_view.
1043         * python/py-xmethods.c (python_xmethod_worker::invoke)
1044         (python_xmethod_worker::do_get_arg_types)
1045         (python_xmethod_worker::do_get_result_type)
1046         (python_xmethod_worker::invoke): Adjust to new interfaces.
1047         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1048         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1049         * valops.c (find_overload_match, find_oload_champ_namespace)
1050         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1051         gdb:array_view and the new xmethod_worker interfaces.
1052         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1053         gdb::array_view.
1054         * value.h (find_overload_match, result_type_of_xmethod)
1055         (call_xmethod): Adjust to use gdb::array_view.
1056         * unittests/array-view-selftests.c: Add slicing tests.
1057
1058 2018-11-21  Pedro Alves  <palves@redhat.com>
1059
1060         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1061         * common/array-view.h (make_array_view): New.
1062         * compile/compile-object-run.c (compile_object_run): Adjust to
1063         pass an array_view.
1064         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1065         * eval.c (eval_call): Adjust to pass an array_view.
1066         (evaluate_subexp_standard): Adjust to pass an array_view.
1067         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1068         * guile/scm-value.c (gdbscm_value_call): Likewise.
1069         * infcall.c (push_dummy_code): Replace pointer + size parameters
1070         with an array_view parameter.
1071         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1072         adjust.
1073         * infcall.h: Include "common/array-view.h".
1074         (call_function_by_hand, call_function_by_hand_dummy): Replace
1075         pointer + size parameters with an array_view parameter.
1076         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1077         * linux-tdep.c (linux_infcall_mmap): Likewise.
1078         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1079         (value_nsstring, print_object_command): Likewise.
1080         * python/py-value.c (valpy_call): Likewise.
1081         * rust-lang.c (rust_evaluate_funcall): Likewise.
1082         * spu-tdep.c (flush_ea_cache): Likewise.
1083         * valarith.c (value_x_binop, value_x_unop): Likewise.
1084         * valops.c (value_allocate_space_in_inferior): Likewise.
1085         * unittests/array-view-selftests.c (run_tests): Add
1086         gdb::make_array_view test.
1087
1088 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1089
1090         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1091         than a fixed size buffer.
1092
1093 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1094
1095         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1096         and remove insertion of extra spaces in GDB's output.
1097         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1098         Layout field into a temporary buffer, and then output it as a
1099         string field.
1100
1101 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1102
1103         * NEWS: Document the language choice done by
1104         'info [types|functions|variables]|rbreak'.
1105
1106 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1107
1108         * symtab.c (treg_matches_sym_type_name): Use
1109         scoped_switch_to_sym_language_if_auto instead of local logic.
1110         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1111         to switch to SYM language when language mode is auto.
1112
1113 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1114
1115         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1116
1117 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1118
1119         * symtab.c (search_symbols): Properly check absence of type regexp
1120         before entering the loop scanning the minimal symbols.
1121
1122 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1123
1124         * s12z-tdep.c (s12z_extract_return_value): New function.
1125         (inv_reg_perm) New array.
1126         (s12z_return_value): Populate readbuf if non-null.
1127
1128 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1129
1130         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1131         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1132         to MinGW fixed by Gnulib.
1133         (O_NOINHERIT): Define if not defined.
1134
1135 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1136
1137         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1138
1139 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1140
1141         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1142
1143 2018-11-19  Tom Tromey  <tom@tromey.com>
1144
1145         * source.c (get_filename_and_charpos): Return void.
1146
1147 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1148
1149         * skip.c (_initialize_step_skip): Fix "info skip" help.
1150
1151 2018-11-16  Tom Tromey  <tom@tromey.com>
1152
1153         PR rust/23625:
1154         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1155
1156 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1157
1158         * infrun.c (displaced_step_inferior_states): Change type to
1159         std::forward_list.
1160         (get_displaced_stepping_state): Adjust.
1161         (displaced_step_in_progress_any_inferior): Adjust.
1162         (add_displaced_stepping_state): Adjust.
1163         (remove_displaced_stepping_state): Adjust.
1164
1165 2018-11-18  Tom Tromey  <tom@tromey.com>
1166
1167         PR build/23814:
1168         * target-delegates.c: Rebuild.
1169         * ia64-linux-nat.c (class ia64_linux_nat_target)
1170         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1171         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1172         "self" argument.
1173         (ia64_linux_nat_target::low_new_thread): Rename.
1174         (class ia64_linux_nat_target) <read_description>: Don't declare.
1175         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1176         bool.
1177
1178 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1179
1180         PR gdb/22736:
1181         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1182         lang_struct_return code.
1183
1184 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1185
1186         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1187         return_method.
1188         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1189         * amd64-tdep.c (amd64_push_arguments): Likewise.
1190         (amd64_push_dummy_call): Likewise.
1191         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1192         * arc-tdep.c (arc_push_dummy_call): Likewise.
1193         * arm-tdep.c (arm_push_dummy_call): Likewise.
1194         * avr-tdep.c (avr_push_dummy_call): Likewise.
1195         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1196         * cris-tdep.c (cris_push_dummy_call): Likewise.
1197         * csky-tdep.c (csky_push_dummy_call): Likewise.
1198         * frv-tdep.c (frv_push_dummy_call): Likewise.
1199         * gdbarch.c: Regenerate.
1200         * gdbarch.h: Regenerate.
1201         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1202         return_method.
1203         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1204         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1205         (hppa64_push_dummy_call): Likewise.
1206         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1207         * i386-tdep.c (i386_push_dummy_call): Likewise.
1208         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1209         * infcall.c (call_function_by_hand_dummy): Likewise.
1210         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1211         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1212         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1213         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1214         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1215         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1216         * mep-tdep.c (mep_push_dummy_call): Likewise.
1217         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1218         (mips_n32n64_push_dummy_call): Likewise.
1219         (mips_o32_push_dummy_call): Likewise.
1220         (mips_o64_push_dummy_call): Likewise.
1221         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1222         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1223         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1224         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1225         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1226         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1227         (ppc64_sysv_abi_push_dummy_call): Likewise.
1228         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1229         (ppc64_sysv_abi_push_dummy_call): Likewise.
1230         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1231         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1232         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1233         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1234         * rx-tdep.c (rx_push_dummy_call): Likewise.
1235         * s390-tdep.c (s390_push_dummy_call): Likewise.
1236         * score-tdep.c (score_push_dummy_call): Likewise.
1237         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1238         (sh_push_dummy_call_nofpu): Likewise.
1239         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1240         (sparc32_push_dummy_call): Likewise.
1241         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1242         (sparc64_push_dummy_call): Likewise.
1243         * spu-tdep.c (spu_push_dummy_call): Likewise.
1244         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1245         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1246         * v850-tdep.c (v850_push_dummy_call): Likewise.
1247         * vax-tdep.c (vax_push_dummy_call): Likewise.
1248         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1249         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1250
1251 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1252
1253         * gdbarch.sh (enum function_call_return_method): Add enum.
1254         * gdbarch.h: Regenerate.
1255         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1256
1257 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1258
1259         * unittests/copy_bitwise-selftests.c: New file.
1260         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1261         (selftests::copy_bitwise_tests): Delete, moving this code to
1262         unittests/copy_bitwise-selftests.c instead.
1263         (_initialize_utils): Do not register copy_bitwise tests.
1264         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1265         unittests/copy_bitwise-selftests.c.
1266
1267 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1268
1269         * ada-lang.c (move_bits): Delete. Update all callers to use
1270         copy_bitwise instead.
1271         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1272         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1273         Move from here to utils.c.
1274         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1275         selftests.
1276         * utils.h (copy_bitwise): Add declaration.
1277         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1278         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1279         Moved here from dwarf2loc.c.
1280         (_initialize_utils): Register copy_bitwise selftests.
1281
1282 2018-11-14  Jim Wilson  <jimw@sifive.com>
1283
1284         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1285         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1286         then increment next_regnum if odd.
1287         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1288         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1289         function type.  Pass new arg to riscv_arg_location based on function
1290         type.
1291         (riscv_return_value): Pass new arg to riscv_arg_location.
1292
1293         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1294         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1295         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1296
1297         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1298         setting len.  New local align, set to max of arg align and xlen,
1299         and pass to first riscv_assign_stack_location call.
1300
1301 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1302
1303         * skip.c (complete_skip_number): New function.
1304         (_initialize_step_skip): Add completers to some skip commands.
1305
1306 2018-11-09  Tom Tromey  <tom@tromey.com>
1307
1308         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1309         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1310         <guesses>: Now a std::vector.
1311         (remote_g_packet_data_init, register_remote_g_packet_guess):
1312         Update.
1313         (remote_read_description_p): Update.  Return bool.
1314         (remote_target::read_description): Update.
1315         (struct remote_g_packet_guess): Add constructor.
1316
1317 2018-11-09  Tom Tromey  <tom@tromey.com>
1318
1319         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1320         move assignment operator.
1321         * psymtab.c (psymtab_to_fullname): Update.
1322         * source.h (open_source_file): Return scoped_fd.
1323         (find_and_open_source): Likewise.
1324         * source.c (open_source_file): Return scoped_fd.
1325         (get_filename_and_charpos): Update.
1326         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1327         (forward_search_command): Likewise.
1328         (reverse_search_command): Likewise.
1329         (find_and_open_source): Return scoped_fd.
1330         * tui/tui-source.c (tui_set_source_content): Update.  Use
1331         gdb_file_up.
1332
1333 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1334
1335         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1336         overflow.
1337
1338 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1339
1340         * configure: Regenerate.
1341
1342 2018-11-09  Tom de Vries  <tdevries@suse.de>
1343
1344         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1345         unconditionally, to set the language of the symbol.  Manage freeing
1346         returned pointer using gdb::unique_xmalloc_ptr.
1347
1348 2018-11-08  Tom Tromey  <tom@tromey.com>
1349
1350         * record.c (require_record_target): Upper-case "<TAB>".
1351
1352 2018-11-08  Tom Tromey  <tom@tromey.com>
1353
1354         * python/lib/gdb/command/pretty_printers.py
1355         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1356
1357 2018-11-08  Tom Tromey  <tom@tromey.com>
1358
1359         PR gdb/23555:
1360         PR gdb/23838:
1361         * target.h (target_supports_terminal_ours): Return bool.
1362         * target.c (target_supports_terminal_ours): Handle case where
1363         current_top_target returns nullptr.  Return bool.
1364
1365 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1366
1367         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1368         return the correct count for potential HFAs.
1369
1370 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1371
1372         * i387-tdep.c (i387_supply_xsave): Split handling of
1373         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1374         (i387_collect_xsave): Likewise.
1375
1376 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1377
1378         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1379         (riscv_frame_this_id): Catch errors thrown while building the
1380         frame cache, leave the frame id as the default, which is the outer
1381         frame id.
1382
1383 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1384
1385         * ada-lang.c (read_atcb): Only set task_info->called_task if
1386         task_info->state == Entry_Caller_Sleep.
1387         (print_ada_task_info): Do not check task_info->state before
1388         checking task_info->called_task.
1389         (info_task): Likewise.
1390
1391 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1392
1393         * ada-tasks.c (read_atcb): Clear task_info before computing
1394         the value of each of its fields.
1395
1396 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1397
1398         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1399         NULL before dereferencing it.
1400
1401 2018-11-06  Tom de Vries  <tdevries@suse.de>
1402
1403         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1404         program headers.
1405
1406 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1407
1408         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1409         so that it applies to uclinux as well.
1410
1411 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1412
1413         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1414         when on AAPCS.
1415
1416 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1417
1418         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1419         RISCV_CSR_SSTATUS_REGNUM.
1420
1421 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1422
1423         * source.c (open_source_file): Fix leak by transferring the
1424         current s->fullname to the unique_xmalloc_ptr fullname given
1425         to find_and_open_source.
1426
1427 2018-11-04  Tom Tromey  <tom@tromey.com>
1428
1429         * varobj.c (install_default_visualizer): Update.
1430         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1431         Return gdbpy_ref.
1432         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1433         (find_pretty_printer_from_progspace)
1434         (find_pretty_printer_from_gdb, find_pretty_printer)
1435         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1436         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1437         Update.
1438
1439 2018-11-04  Tom Tromey  <tom@tromey.com>
1440
1441         * python/python.c (gdbpy_parameter_value): Update.
1442         * python/python-internal.h (python_string_to_unicode)
1443         (python_string_to_target_python_string)
1444         (host_string_to_python_string): Return gdbpy_ref.
1445         * python/py-utils.c (python_string_to_unicode)
1446         (unicode_to_encoded_python_string)
1447         (unicode_to_target_python_string)
1448         (python_string_to_target_string)
1449         (python_string_to_target_python_string): Return gdbpy_ref.
1450         (python_string_to_host_string): Update.
1451         (host_string_to_python_string): Return gdbpy_ref.
1452         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1453         (stpy_fullname): Update.
1454         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1455         Update.
1456         * python/py-prettyprint.c (print_string_repr): Update.
1457         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1458         (objfpy_get_build_id): Update.
1459         * python/py-breakpoint.c (bppy_get_location)
1460         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1461         Update.
1462
1463 2018-11-04  Tom Tromey  <tom@tromey.com>
1464
1465         * python/python-internal.h (gdb_py_object_from_longest)
1466         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1467         * python/py-value.c (valpy_int): Update.
1468         * python/py-utils.c (gdb_py_object_from_longest): Return
1469         gdbpy_ref.
1470         (gdb_py_object_from_ulongest): Likewise.
1471         * python/py-type.c (typy_get_alignof): Update.
1472         * python/py-linetable.c (ltpy_get_all_source_lines)
1473         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1474         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1475
1476 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1477
1478         * ada-lang.c (_initialize_ada_language): Fix typo.
1479
1480 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1481
1482         * language.c (type): Remove.
1483         (_initialize_language): Remove assignment to type.
1484
1485 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1486
1487         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1488         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1489         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1490         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1491         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1492         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1493         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1494         and aarch64-ravenscar-thread.o.
1495         * NEWS: Add entry documenting Ravenscar tasking support
1496         on AArch64 ELF.
1497
1498 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1499
1500         * symtab.c (info_functions_command): Initialize quiet flag.
1501         * stack.c (info_args_command): Likewise.
1502
1503 2018-11-01  Jim Wilson  <jimw@sifive.com>
1504
1505         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1506         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1507         debugging messages.
1508
1509 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1510
1511         * ada-lang.c (ada_watch_location_expression): New function.
1512         (ada_language_defn): Set la_watch_location_expression to
1513         ada_watch_location_expression.
1514
1515 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1516
1517         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1518
1519 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1520
1521         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1522         shifting.
1523
1524 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1525             Joel Brobecker  <brobecker@adacore.com>
1526
1527         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1528         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1529         * arm-pikeos-tdep.c: New file.
1530         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1531         embedded system.
1532         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1533
1534 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1535
1536         * common/pathstuff.c (get_standard_temp_dir): New.
1537         * common/pathstuff.h (get_standard_temp_dir): New.
1538         * config.in: Re-generate.
1539         * configure: Re-generate.
1540         * configure.ac: Don't check for mkdtemp.
1541         * gnulib/aclocal-m4-deps.mk: Re-generate.
1542         * gnulib/aclocal.m4: Re-generate.
1543         * gnulib/config.in: Re-generate.
1544         * gnulib/configure: Re-generate.
1545         * gnulib/import/Makefile.am: Re-generate.
1546         * gnulib/import/Makefile.in: Re-generate.
1547         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1548         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1549         * gnulib/import/m4/mkdtemp.m4: New file.
1550         * gnulib/import/mkdtemp.c: New file.
1551         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1552         Add mkdtemp module.
1553         * unittests/mkdir-recursive-selftests.c (test): Use
1554         get_standard_temp_dir.
1555         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1556         ifdef.
1557         * compile/compile.c (get_compile_file_tempdir): Likewise.
1558
1559 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1560
1561         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1562         (SIG_FRAME_LR_OFFSET64): New define.
1563         (SIG_FRAME_FP_OFFSET64): New define.
1564         (aix_sighandle_frame_cache): New Function.
1565         (aix_sighandle_frame_this_id): New Function.
1566         (aix_sighandle_frame_prev_register): New Function.
1567         (aix_sighandle_frame_sniffer): New Function.
1568         (aix_sighandle_frame_unwind): New global variable.
1569         (rs6000_aix_init_osabi): Install new frame unwinder.
1570
1571 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1572
1573         PR gdb/23835
1574         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1575         already defined.
1576
1577 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1578
1579         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1580
1581 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1582
1583         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1584         (producer_is_icc): New function.
1585         (check_producer): Set producer_is_icc field on dwarf2_cu.
1586         (dwarf2_init_integer_type): New function.
1587         (read_base_type): Call dwarf2_init_integer_type instead of
1588         init_integer_type in all cases.
1589         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1590         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1591         LEN is greater than 0.
1592
1593 2018-10-30  Tom Tromey  <tom@tromey.com>
1594
1595         * main.c (captured_main_1): Check return value of bfd_init.
1596
1597 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1598
1599         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1600         Adjust comments.
1601
1602 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1603
1604         * procfs.c: Include common/pathstuff.h.
1605
1606 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1607
1608         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1609         Add missing braces.  No functional change.
1610
1611 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1612
1613         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1614         to report a bad option and fix indentation.
1615         * demangle.c (demangle_command): Use report_unrecognized_option_error
1616         to report a bad option and correctly report the bad option.
1617
1618 2018-10-27  Tom Tromey  <tom@tromey.com>
1619
1620         PR cli/23364:
1621         * darwin-nat.c (copied_shell): New global.
1622         (may_have_sip): Rename from should_disable_startup_with_shell.
1623         (copy_shell_to_cache, maybe_cache_shell): New functions.
1624         (darwin_nat_target::create_inferior): Update.  Use
1625         copied_shell.
1626
1627 2018-10-27  Tom Tromey  <tom@tromey.com>
1628
1629         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1630         (run_tests): Call test_to_file.
1631         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1632         temporary files.
1633         * common/scoped_fd.h (scoped_fd::to_file): New method.
1634
1635 2018-10-27  Tom Tromey  <tom@tromey.com>
1636
1637         * unittests/scoped_mmap-selftests.c (test_normal): Use
1638         gdb_mkostemp_cloexec.
1639         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1640         Use gdb_mkostemp_cloexec.
1641         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1642         gnulib/config.in, gnulib/configure,
1643         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1644         gnulib/import/m4/gnulib-cache.m4,
1645         gnulib/import/m4/gnulib-comp.m4: Update.
1646         * gnulib/import/m4/mkostemp.m4: New file.
1647         * gnulib/import/m4/mkstemp.m4: Remove.
1648         * gnulib/import/mkostemp.c: New file.
1649         * gnulib/import/mkstemp.m4: Remove.
1650         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1651         mkstemp, add mkostemp.  Apply new patch.
1652         * gnulib/import/stdlib.in.h: Apply patch.
1653         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1654         New file.
1655         * dwarf-index-write.c (write_psymtabs_to_index): Use
1656         gdb_mkostemp_cloexec.
1657         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1658
1659 2018-10-27  Tom Tromey  <tom@tromey.com>
1660
1661         * unittests/mkdir-recursive-selftests.c: New file.
1662         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1663         unittests/mkdir-recursive-selftests.c.
1664         * dwarf-index-cache.c (mkdir_recursive): Move to
1665         common/filestuff.c.
1666         (index_cache::store): Check return value of mkdir_recursive.
1667         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1668         (_initialize_index_cache): Don't register test.
1669         * common/filestuff.h (mkdir_recursive): Declare.
1670         * common/filestuff.c (mkdir_recursive): Move from
1671         dwarf-index-cache.c.  Return bool.
1672
1673 2018-10-27  Tom Tromey  <tom@tromey.com>
1674
1675         * dwarf-index-write.c (write_psymtabs_to_index): Move
1676         make_temp_filename to common/pathstuff.c.
1677         * common/pathstuff.h (make_temp_filename): Declare.
1678         * common/pathstuff.c (make_temp_filename): New function, moved
1679         from dwarf-index-write.c.
1680
1681 2018-10-27  Tom Tromey  <tom@tromey.com>
1682
1683         * procfs.c (procfs_target::create_inferior): Use get_shell.
1684         * cli/cli-cmds.c (shell_escape): Use get_shell.
1685         * windows-nat.c (windows_nat_target::create_inferior): Use
1686         get_shell.
1687         * common/pathstuff.c (get_shell): New function.
1688         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1689         (fork_inferior): Use get_shell.
1690         * common/pathstuff.h (get_shell): Declare.
1691
1692 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1693
1694         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1695
1696 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1697
1698         * stack.c (print_variable_and_value_data): Add preg and treg.
1699         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1700         and update callers.
1701         (print_frame_arg_vars): Likewise.
1702         (prepare_reg): New function.
1703         (info_locals_command): Extract info print args and use them.
1704         (info_args_command): Likewise.
1705         (_initialize_stack): Modify on-line help.
1706         * symtab.c (treg_matches_sym_type_name): New function.
1707         (search_symbols): New arg t_regexp.
1708         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1709         (info_variables_command): Extract info print args and use them.
1710         (info_functions_command): Likewise.
1711         (info_types_command): Update call to symtab_symbol_info.
1712         (_initialize_symtab): Modify on-line help.
1713         * symtab.h (treg_matches_sym_type_name): New function.
1714         (search_symbols): New t_regexp arg.
1715
1716 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1717
1718         * cli-utils.c (extract_arg_maybe_quoted): New function.
1719         (extract_info_print_args): New function.
1720         (info_print_args_help): New function.
1721         (report_unrecognized_option_error): New function.
1722         * cli-utils.h (extract_arg_maybe_quoted): New function.
1723         (extract_info_print_args): New function.
1724         (info_print_args_help): New function.
1725         (report_unrecognized_option_error): New function.
1726
1727 2018-10-26  Tom Tromey  <tom@tromey.com>
1728
1729         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1730         (compute_compunit_symtab_includes): Update.
1731         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1732         (compunit_symtab_ptr): Likewise.
1733
1734 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1735
1736         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1737         default_print_auxv_entry for specific tag values.
1738
1739 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1740
1741         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1742
1743 2018-10-26  Jim Wilson  <jimw@sifive.com>
1744
1745         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1746         (riscv_linux_sigframe_init): Declare.
1747         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1748         (riscv_linux_sigframe): New.
1749         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1750         (riscv_linux_sigframe_init): Define.
1751         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1752
1753         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1754         (riscv_isa_flen): Likewise.  Drop static.
1755         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1756         (riscv_isa_flen): Likewise.  Declare.
1757
1758 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1759             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1760
1761         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1762         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1763         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1764         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1765         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1766         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1767         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1768         Define.
1769         (struct ppc_linux_features) <htm>: New field.
1770         (ppc_linux_no_features): Add initializer for htm field.
1771         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1772         new tdescs.
1773         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1774         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1775         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1776         Define if not already defined.
1777         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1778         and rs6000/powerpc-isa207-htm-vsx64l.
1779         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1780         rs6000/powerpc-isa207-htm-vsx64l.xml.
1781         * features/rs6000/power-htm-spr.xml: New file.
1782         * features/rs6000/power-htm-core.xml: New file.
1783         * features/rs6000/power64-htm-core.xml: New file.
1784         * features/rs6000/power-htm-fpu.xml: New file.
1785         * features/rs6000/power-htm-altivec.xml: New file.
1786         * features/rs6000/power-htm-vsx.xml: New file.
1787         * features/rs6000/power-htm-ppr.xml: New file.
1788         * features/rs6000/power-htm-dscr.xml: New file.
1789         * features/rs6000/power-htm-tar.xml: New file.
1790         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1791         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1792         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1793         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1794         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1795         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1796         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1797         fetch_regset with HTM regsets.
1798         (store_register, store_ppc_registers): Call store_regset with HTM
1799         regsets.
1800         (ppc_linux_nat_target::read_description): Set htm field in the
1801         features struct if needed.
1802         * ppc-linux-tdep.c: Include
1803         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1804         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1805         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1806         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1807         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1808         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1809         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1810         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1811         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1812         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1813         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1814         (ppc32_linux_ctarregset): New globals.
1815         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1816         (ppc_linux_collect_core_cpgrregset): New function.
1817         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1818         regsets.
1819         (ppc_linux_core_read_description): Check if the tm spr section is
1820         present and set htm in the features struct.
1821         (_initialize_ppc_linux_tdep): Call
1822         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1823         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1824         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1825         Declare.
1826         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1827         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1828         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1829         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1830         New fields.
1831         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1832         Likewise.
1833         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1834         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1835         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1836         New enum fields.
1837         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1838         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1839         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1840         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1841         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1842         <PPC_CTAR_REGNUM>: Likewise.
1843         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1844         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1845         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1846         (IS_CEFP_PSEUDOREG): Define.
1847         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1848         registers.  Return names for the checkpointed DFP, VSX, and EFP
1849         pseudo registers.
1850         (rs6000_pseudo_register_type): Remove initial assert and raise an
1851         internal error in the else clause instead.  Return types for the
1852         checkpointed DFP, VSX, and EFP pseudo registers.
1853         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1854         checkpointed DFP pseudo registers.
1855         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1856         checkpointed VSX pseudo registers.
1857         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1858         from efpr_pseudo_register_read and
1859         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1860         registers.
1861         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1862         Handle checkpointed DFP, VSX, and EFP registers.
1863         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1864         (efp_ax_pseudo_register_collect): New functions.
1865         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1866         register logic to new functions.  Handle checkpointed DFP, VSX,
1867         and EFP pseudo registers.
1868         (rs6000_gdbarch_init): Look for and validate the htm features.
1869         Include checkpointed DFP, VSX and EFP pseudo-registers.
1870         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1871         HTM registers.
1872
1873 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1874
1875         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1876         without altivec or fpu.
1877
1878 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1879             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1880
1881         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1882         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1883         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1884         Define if not already defined.
1885         * features/rs6000/power-ebb.xml: New file.
1886         * features/rs6000/power-linux-pmu.xml: New file.
1887         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1888         features.
1889         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1890         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1891         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1892         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1893         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1894         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1895         fetch_regset with ebb and pmu regsets.
1896         (store_register, store_ppc_registers): Call store_regset with ebb
1897         and pmu regsets.
1898         (ppc_linux_nat_target::read_description): Set isa207 field in the
1899         features struct if ebb and pmu are avaiable.
1900         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1901         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1902         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1903         and pmu regsets.
1904         (ppc_linux_core_read_description): Check if the pmu section is
1905         present and set isa207 in the features struct.
1906         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1907         (ppc32_linux_pmuregset): Declare.
1908         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1909         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1910         <ppc_sier_regnum>: New field.
1911         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1912         New enum values.
1913         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1914         values.
1915         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1916         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1917         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1918         ebb and pmu features.
1919
1920 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1921             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1922
1923         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1924         (tdesc_powerpc_isa207_vsx64l): Declare.
1925         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1926         (struct ppc_linux_features) <isa207>: New field.
1927         (ppc_linux_no_features): Add initializer for isa207 field.
1928         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1929         new tdescs.
1930         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1931         (NT_PPC_TAR): Define if not already defined.
1932         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1933         rs6000/powerpc-isa207-vsx64l.
1934         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1935         rs6000/powerpc-isa207-vsx64l.xml.
1936         * features/rs6000/power-tar.xml: New file.
1937         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1938         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1939         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1940         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1941         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1942         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1943         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1944         fetch_regset with the TAR regset.
1945         (store_register, store_ppc_registers): Call store_regset with the
1946         TAR regset.
1947         (ppc_linux_nat_target::read_description): Set isa207 field in the
1948         features struct if needed.
1949         * ppc-linux-tdep.c: Include
1950         features/rs6000/powerpc-isa207-vsx32l.c and
1951         features/rs6000/powerpc-isa207-vsx64l.c.
1952         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1953         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1954         regset.
1955         (ppc_linux_core_read_description): Check if the tar section is
1956         present and set isa207 in the features struct.
1957         (_initialize_ppc_linux_tdep): Call
1958         initialize_tdesc_powerpc_isa207_vsx32l and
1959         initialize_tdesc_powerpc_isa207_vsx64l.
1960         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1961         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1962         (enum) <PPC_TAR_REGNUM>: New enum value.
1963         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1964         feature.
1965         (ppc_process_record_op31): Record changes to TAR.
1966
1967 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1968             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1969
1970         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1971         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1972         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1973         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1974         (struct ppc_linux_features) <ppr_dscr>: New field.
1975         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1976         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1977         new tdescs.
1978         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1979         Define if not already defined.
1980         * features/Makefile (WHICH): Add
1981         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1982         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1983         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1984         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1985         * features/rs6000/power-dscr.xml: New file.
1986         * features/rs6000/power-ppr.xml: New file.
1987         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1988         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1989         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1990         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1991         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1992         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1993         * ppc-linux-nat.c: Include <sys/uio.h>.
1994         (fetch_regset, store_regset, check_regset): New functions.
1995         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1996         DSCR and PPR regsets.
1997         (store_register, store_ppc_registers): Call store_regset with
1998         DSCR and PPR regsets.
1999         (ppc_linux_get_hwcap2): New function.
2000         (ppc_linux_nat_target::read_description): Call
2001         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
2002         features struct if needed.
2003         * ppc-linux-tdep.c: Include
2004         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
2005         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
2006         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
2007         (ppc32_linux_dscrregset): New globals.
2008         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
2009         and dscr regsets.
2010         (ppc_linux_core_read_description): Check if the ppr and dscr
2011         sections are present and set ppr_dscr in the features struct.
2012         (_initialize_ppc_linux_tdep): Call
2013         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
2014         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
2015         * ppc-linux-tdep.h (ppc32_linux_pprregset)
2016         (ppc32_linux_dscrregset): Declare.
2017         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
2018         <ppc_dscr_regnum>: New field.
2019         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
2020         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
2021         and dscr features.
2022         (ppc_process_record_op31): Record changes to PPR and DSCR.
2023
2024 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2025
2026         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
2027         second initializer line for the have_* variables.  Initialize
2028         have_fpu to 0 instead of 1.
2029
2030 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2031
2032         * arch/ppc-linux-common.c (ppc_linux_match_description):
2033         Parenthesize tdesc assignements and indent them properly.
2034
2035 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2036
2037         * ppc-linux-nat.c (fetch_register): Change if statement to else
2038         if.
2039         (store_register): Likewise.
2040
2041 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2042
2043         * rs6000-tdep.c: Remove reggroups.h include.
2044         (rs6000_pseudo_register_reggroup_p): Remove.
2045         (rs6000_gdbarch_init): Remove call to
2046         set_tdesc_pseudo_register_reggroup_p.
2047
2048 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2049
2050         * reggroups.c (default_register_reggroup_p): Return true for
2051         decfloat registers and float_reggroup.
2052
2053 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2054
2055         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2056         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2057         ppc_linux_collect_vrregset by regcache_collect_regset.
2058
2059 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2060
2061         * linux-tdep.c (linux_collect_regset_section_cb): Use
2062         std::vector<gdb_byte> instead of char * and malloc for buf.
2063         Remove xfree.
2064
2065 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2066
2067         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2068         symtab_start instead of always using language_unknown.
2069
2070 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2071
2072         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2073         READ_P parameter, catch and ignore register access errors from
2074         either the old or new MISA location.
2075         (riscv_has_feature): Update call to riscv_read_misa_reg.
2076
2077 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2078
2079         * python/py-function.c (convert_values_to_python): Return
2080         gdbpy_ref<>.  Add header comment.
2081         (fnpy_call): Adjust.
2082
2083 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2084
2085         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2086         (cmdpy_completer_handle_brkchars): Adjust.
2087         (cmdpy_completer): Adjust.
2088
2089 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2090
2091         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2092         Pass correct regnum to raw_supply_zeroed.
2093
2094 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2095
2096         * regcache.c (cooked_read_test): Add CSKY to the list of
2097         architectures with a save_reggroup
2098
2099 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2100
2101         PR gdb/23368
2102         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2103         transfer terminal state from old new new inferior.
2104         * terminal.h (swap_terminal_info): New function.
2105         * inflow.c (swap_terminal_info): New function.
2106
2107 2018-10-23  Tom Tromey  <tom@tromey.com>
2108
2109         * record-btrace.c (get_thread_current_frame_id): Rename from
2110         get_thread_current_frame.  Return a frame_id.
2111         (record_btrace_start_replaying): Update.
2112
2113 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2114
2115         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2116         for CSRs.
2117
2118 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2119
2120         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2121         have_nonsteppable_watchpoint attribute to 1.
2122
2123 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2124
2125         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2126         register names.
2127         (struct register_alias): Rename to...
2128         (struct riscv_register_alias): ...this, and update comment.
2129         (riscv_register_aliases): Update type, and alias names.  Remove
2130         CSR names from this list.
2131         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2132         register names.  Add an extra assertion.
2133         (riscv_is_regnum_a_named_csr): New function.
2134         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2135
2136 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2137
2138         * configure.tgt: Add configuration for s12z.
2139         * s12z-tdep.c:  New file.
2140         * NEWS: Mention new target.
2141
2142 2018-10-22  Jim Wilson  <jimw@sifive.com>
2143
2144         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2145         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2146
2147         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2148         (riscv_register_type): Use them.
2149         (riscv_print_one_register_info): Handle union of floats same as float.
2150         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2151         riscv_fpreg_q_type fields.
2152
2153 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2154
2155         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2156         * gdbarch.h: Re-generate.
2157         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2158         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2159         * eval.c (evaluate_subexp_standard): Likewise.
2160         * findvar.c (value_of_register): Likewise.
2161         (value_of_register_lazy): Likewise.
2162         (address_from_register): Likewise.
2163         * frame.c (get_frame_register_bytes): Likewise.
2164         * gdbarch-selftests.c (register_to_value_test): Likewise.
2165         * h8300-tdep.c (h8300_register_type): Likewise.
2166         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2167         (i386_svr4_reg_to_regnum): Likewise.
2168         * infcmd.c (default_print_registers_info): Likewise.
2169         (registers_info): Likewise.
2170         (print_vector_info): Likewise.
2171         (default_print_float_info): Likewise.
2172         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2173         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2174         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2175         (mi_cmd_data_list_changed_registers): Likewise.
2176         (mi_cmd_data_list_register_values): Likewise.
2177         (mi_cmd_data_write_register_values): Likewise.
2178         (mi_cmd_trace_frame_collected): Likewise.
2179         * mips-tdep.c (print_gp_register_row): Likewise.
2180         (mips_print_registers_info): Likewise.
2181         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2182         * regcache.c (init_regcache_descr): Likewise.
2183         (register_size): Likewise.
2184         (register_dump::dump): Likewise.
2185         (cooked_read_test): Likewise.
2186         (cooked_write_test): Likewise.
2187         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2188         (rs6000_gdbarch_init): Likewise.
2189         * stabsread.c (stab_reg_to_regnum): Likewise.
2190         * stack.c (info_frame_command): Likewise.
2191         * target-descriptions.c (tdesc_register_name): Likewise.
2192         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2193         * tui/tui-regs.c (tui_show_register_group): Likewise.
2194         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2195         (user_reg_map_regnum_to_name): Likewise.
2196         (value_of_user_reg): Likewise.
2197         (maintenance_print_user_registers): Likewise.
2198         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2199         (xtensa_register_name): Likewise.
2200         (xtensa_register_type): Likewise.
2201         (xtensa_reg_to_regnum): Likewise.
2202         (xtensa_pseudo_register_read): Likewise.
2203         (xtensa_pseudo_register_write): Likewise.
2204
2205 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2206
2207         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2208         correctly-sized buffer with raw_read.
2209         (amd64_pseudo_register_write): Use correctly-sized buffer for
2210         raw_read/raw_write.
2211
2212 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2213
2214         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2215         in add_prefix_cmd of set print type.
2216
2217 2018-10-19  Tom Tromey  <tom@tromey.com>
2218
2219         PR tui/18388:
2220         * NEWS: Mention tabset deprecation.
2221         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2222         (update_tab_width): New function.
2223         (tui_set_tab_width, tui_show_tab_width): New functions.
2224         (tui_set_tab_width_command): Use update_tab_width.
2225         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2226         Add new "set tui tab-width" command.
2227         * tui/tui-source.c (tui_set_source_content): Update.
2228         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2229         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2230         Don't declare.
2231         (tui_tab_width): Declare.
2232         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2233         (tui_set_default_tab_len): Remove.
2234
2235 2018-10-19  Tom Tromey  <tom@tromey.com>
2236
2237         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2238         (key_is_backspace, tui_getc): Don't declare.
2239         * tui/tui-io.c (key_is_start_sequence): Now static.
2240         (key_is_end_sequence, key_is_backspace): Remove.
2241         (tui_getc): Now static.
2242
2243 2018-10-19  Tom Tromey  <tom@tromey.com>
2244
2245         * symfile.c (reread_symbols): Clear "static_links".
2246
2247 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2248
2249         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2250         define.
2251         (aarch64_linux_sigframe_init): Extra boundary checks.
2252
2253 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2254
2255         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2256         the possibly non-existent tdesc type 'vec128', but the type of raw
2257         register v16 instead.
2258
2259 2018-10-19  Gary Benson <gbenson@redhat.com>
2260
2261         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2262
2263 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2264
2265         PR cli/23785
2266         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2267         NULL.
2268
2269 2018-10-17  Paul Koning  <paul_koning@dell.com>
2270
2271         * charset.c (convert_between_encodings): Fix unsigned overflow.
2272
2273 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2274
2275         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2276         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2277         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2278         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2279         New functions.
2280         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2281         and fbsd_info_proc_mappings_header.
2282         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2283         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2284         New.
2285
2286 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2287
2288         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2289         Solaris Maintainer.
2290
2291 2018-10-15  Tom Tromey  <tom@tromey.com>
2292
2293         * tui/tui.c (strcat_to_buf): Remove casts.
2294         * tui/tui-winsource.c (tui_show_source_line)
2295         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2296         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2297         * tui/tui-windata.c (tui_first_data_item_displayed)
2298         (tui_delete_data_content_windows, tui_erase_data_content)
2299         (tui_display_all_data, tui_display_data_from)
2300         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2301         * tui/tui-win.c (tui_set_win_height)
2302         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2303         casts.
2304         * tui/tui-win.c (tui_resize_all): Remove casts.
2305         (tui_scroll_backward_command, tui_set_focus)
2306         (tui_set_tab_width_command): Likewise.
2307         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2308         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2309         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2310         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2311         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2312         Remove casts.
2313
2314 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2315
2316         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2317         AArch64/ARM maintainer.
2318
2319 2018-10-11  Gary Benson <gbenson@redhat.com>
2320
2321         * interps.h (interp::m_name): Make private and mutable.
2322         * interps.c (interp::~interp): Free m_name.
2323
2324 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2325             Simon Marchi <simark@simark.ca>
2326
2327         * README (`configure' options): Add documentation for new
2328         "--enable-unit-tests" option.
2329         * acinclude.m4: Include "selftest.m4".
2330         * configure: Regenerate.
2331         * configure.ac: Use "GDB_AC_SELFTEST".
2332         * maint.c (maintenance_selftest): Update message informing
2333         that selftests have been disabled.
2334         (maintenance_info_selftests): Likewise.
2335         * selftest.m4: New file.
2336
2337 2018-10-10  Gary Benson <gbenson@redhat.com>
2338
2339         * remote.c (remote_target::remote_send_printf): Add
2340         missing va_end found by Coverity.
2341
2342 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2343
2344         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2345
2346 2018-10-09  Tom Tromey  <tom@tromey.com>
2347
2348         * configure: Rebuild.
2349         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2350         * NEWS: Update --enable-ubsan documentation.
2351
2352 2018-10-09  Gary Benson <gbenson@redhat.com>
2353
2354         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2355         found by Coverity.
2356
2357 2018-10-08  Tom Tromey  <tom@tromey.com>
2358
2359         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2360         variable.
2361         (riscv_fbsd_init_abi): Likewise.
2362
2363 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2364         * valops.c (value_struct_elt_for_reference): Rename local variable
2365         to work around the shadowing a previous local warning.
2366
2367 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2368
2369         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2370         * NEWS: Mention new FreeBSD/riscv native configuration.
2371         * configure.host: Add riscv*-*-freebsd*.
2372         * configure.nat: Likewise.
2373         * riscv-fbsd-nat.c: New file.
2374
2375 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2376
2377         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2378         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2379         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2380         * NEWS: Mention new FreeBSD/riscv target.
2381         * configure.tgt: Add riscv*-*-freebsd*.
2382         * riscv-fbsd-tdep.c: New file.
2383         * riscv-fbsd-tdep.h: New file.
2384
2385 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2386
2387         * regcache.h (struct regcache_map_entry): Note that this type can
2388         be used with traditional frame caches.
2389         * trad-frame.c (trad_frame_set_reg_regmap): New.
2390         * trad-frame.h (trad_frame_set_reg_regmap): New.
2391
2392 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2393
2394         PR c++/16841
2395         * valops.c (get_virtual_base_offset): New function.
2396         (value_struct_elt_for_reference): Use it to get virtual base offset
2397         and add it in calculating class member address.
2398
2399 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2400
2401         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2402         (check_producer): Check if the producer is codewarrior.
2403         (producer_is_codewarrior): New function.
2404         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2405         produced by codewarrior.
2406         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2407
2408 2018-10-06  Tom Tromey  <tom@tromey.com>
2409
2410         PR python/19399:
2411         * python/py-inferior.c: Add "architecture" entry.
2412         (infpy_architecture): New function.
2413
2414 2018-10-06  Tom Tromey  <tom@tromey.com>
2415
2416         PR python/21765:
2417         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2418         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2419         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2420         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2421
2422 2018-10-06  Tom Tromey  <tom@tromey.com>
2423
2424         PR build/17077:
2425         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2426         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2427         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2428         #include.
2429
2430 2018-10-06  Tom Tromey  <tom@tromey.com>
2431
2432         * python/py-breakpoint.c (bppy_get_location): Handle a
2433         bp_breakpoint without a location.
2434
2435 2018-10-06  Tom Tromey  <tom@tromey.com>
2436
2437         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2438         (_RegEx): Reformat help text.
2439         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2440         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2441         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2442         text.
2443         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2444         (EnableXMethod, DisableXMethod): Remove help indentation.
2445         Capitalize meta-syntactic variables.
2446         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2447         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2448         Capitalize meta-syntactic variables.
2449         * python/lib/gdb/command/explore.py (ExploreCommand)
2450         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2451         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2452         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2453         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2454         Remove help indentation.
2455         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2456         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2457         (DisableFrameFilter, SetFrameFilterPriority)
2458         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2459
2460 2018-10-06  Tom Tromey  <tom@tromey.com>
2461
2462         PR tui/28819:
2463         * tui/tui-io.c (gdb_wgetch): New function.
2464         (tui_mld_getc, tui_getc): Use it.
2465
2466 2018-10-05  Tom Tromey  <tom@tromey.com>
2467
2468         * sol-thread.c (sol_thread_target::wait): Rename inner
2469         "save_ptid".
2470
2471 2018-10-04  Tom Tromey  <tom@tromey.com>
2472
2473         * configure: Rebuild.
2474         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2475
2476 2018-10-04  Tom Tromey  <tom@tromey.com>
2477
2478         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2479         declaration of "block".
2480
2481 2018-10-04  Tom Tromey  <tom@tromey.com>
2482
2483         * common/filestuff.c (fdwalk): Remove inner declaration of
2484         "result".
2485
2486 2018-10-04  Tom Tromey  <tom@tromey.com>
2487
2488         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2489         "structs_addr" and hoist declaration.
2490
2491 2018-10-04  Tom Tromey  <tom@tromey.com>
2492
2493         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2494         variable "size".
2495
2496 2018-10-04  Tom Tromey  <tom@tromey.com>
2497
2498         * mdebugread.c (parse_partial_symbols): Use std::string.
2499
2500 2018-10-04  Tom Tromey  <tom@tromey.com>
2501
2502         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2503         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2504         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2505         header.
2506         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2507         more inner scope.
2508         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2509         * varobj.c (varobj_update): Rename inner "newobj",
2510         "type_changed".
2511         * valprint.c (generic_emit_char): Rename inner "buf".
2512         * valops.c (find_overload_match): Rename inner "temp".
2513         (value_struct_elt_for_reference): Declare "v" in more inner
2514         scope.
2515         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2516         * unittests/array-view-selftests.c (run_tests): Rename inner
2517         "vec".
2518         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2519         header.
2520         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2521         "tsv" in more inner scope.
2522         (print_one_static_tracepoint_marker): Rename inner
2523         "tuple_emitter".
2524         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2525         (tic6x_push_dummy_call): Don't redeclare "addr".
2526         * target-float.c: Declare "dto" lower.
2527         * symtab.c (lookup_local_symbol): Rename inner "sym".
2528         (find_pc_sect_line): Rename inner "pc".
2529         * stack.c (print_frame): Don't redeclare "gdbarch".
2530         (return_command): Rename inner "gdbarch".
2531         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2532         "sp".
2533         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2534         header.
2535         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2536         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2537         scope.
2538         * remote.c (remote_target::update_thread_list): Don't redeclare
2539         "tp".
2540         (remote_target::process_initial_stop_replies): Rename inner
2541         "thread".
2542         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2543         (remote_target::wait_as): Don't redeclare "stop_reply".
2544         (remote_target::get_thread_local_address): Rename inner
2545         "result".
2546         (remote_target::get_tib_address): Likewise.
2547
2548         * regcache.c (cooked_read_test): Rename "regnum".
2549         * record-btrace.c (cmd_record_btrace_start): Rename inner
2550         "exception".
2551         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2552         loop header.
2553         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2554         header.
2555         (ppu2spu_sniffer): Rename inner "buf".
2556         * parse.c (operator_check_standard): Rename inner "type",
2557         "objfile".
2558         * p-valprint.c (pascal_val_print): Introduce new scope for
2559         "low_bound", "high_bound".
2560         * p-exp.y (yylex): Declare "i" in loop header.
2561         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2562         Lower declaration of "s".
2563         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2564         header.
2565         (nios2_push_dummy_call): Rename "len".
2566         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2567         "buf".
2568         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2569         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2570         (linux_xfer_osdata_modules): Likewise.
2571         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2572         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2573         (mips_o64_push_dummy_call): Likewise.
2574         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2575         "op".
2576         * mi/mi-main.c (list_available_thread_groups): Rename inner
2577         "tuple_emitter".
2578         (mi_cmd_data_read_memory): Rename inner "opts".
2579         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2580         "tuple_emitter".
2581         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2582         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2583         more inner scope.
2584         (parse_partial_symbols): Rename inner "pst", "p", "name"
2585         * main.c (captured_main_1): Rename inner "i"s.
2586         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2587         "oso2".
2588         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2589         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2590         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2591         (handle_signal_stop): Rename inner "gdbarch".
2592         (handle_command): Declare "signum" in loop header.
2593         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2594         "status".
2595         (examine_prologue): Rename inner "sol" and "sof".
2596         (ia64_extract_return_value): Rename inner "val".  Declare another
2597         "val" in a more inner scope.
2598         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2599         inner scope.
2600         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2601         "except".
2602         * findvar.c (default_read_var_value): Don't redeclare "addr".
2603         * f-exp.y (yylex): Declare "i" in loop header.
2604         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2605         Rename inner "type", "expect_type".
2606         (evaluate_subexp_for_sizeof): Rename inner "pc".
2607         * elfread.c (elf_symfile_read): Rename inner "abfd".
2608         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2609         "bytes_read".
2610         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2611         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2612         (dwarf_decode_line_header): Rename inner "lh".
2613         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2614         "offset".  Declare "i" in loop header.
2615         (disassemble_dwarf_expression): Rename inner "addr_size".
2616         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2617         inner "result".
2618         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2619         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2620         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2621         "inner_list_emitter".
2622         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2623         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2624         declaration in a block.
2625         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2626         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2627         "obstack_final_size".
2628         * cp-support.c (inspect_type): Declare "i" in loop header.
2629         * compile/compile.c (compile_instance::insert_symbol_error):
2630         Rename inner "e".
2631         * common/agent.c (agent_run_command): Remove inner "ret"
2632         declaration.
2633         * coffread.c (coff_symfile_read): Rename inner "name".
2634         (coff_symfile_read): Rename inner "abfd".
2635         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2636         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2637         "high".
2638         * c-exp.y (lex_one_token): Move "len" declaration lower.
2639         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2640         "gdbarch".
2641         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2642         "b".
2643         (watch_command_1): Declare "mark" later.
2644         (clear_command): Don't shadow "a" or "b".
2645         (delete_command): Rename inner "b".
2646         (delete_trace_command): Likewise.
2647         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2648         "op".
2649         (arm_gdbarch_init): Remove inner "e_flags".
2650         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2651         "offset" in inner blocks.
2652
2653 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2654
2655         * dwarf-index-write.c (file_write): Don't write if the vector is
2656         empty.
2657
2658 2018-10-05  Tom de Vries  <tdevries@suse.de>
2659
2660         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2661         PyArg_ParseTuple call.
2662
2663 2018-10-05  Tom de Vries  <tdevries@suse.de>
2664
2665         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2666         PyArg_ParseTuple call.
2667
2668 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2669
2670         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2671         to avoid exceeding 80 characters per line limit.
2672
2673 2018-10-04  Tom Tromey  <tom@tromey.com>
2674
2675         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2676         (reread_symbols): Update.
2677         * complaints.h (clear_complaints): Remove argument.
2678         * complaints.c (enum complaint_series): Remove.
2679         (series): Remove global.
2680         (complaint_internal): Update.
2681         (clear_complaints): Remove argument.
2682
2683 2018-10-04  Tom Tromey  <tom@tromey.com>
2684
2685         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2686         debugging symbols" message if there is a separate debug objfile.
2687
2688 2018-10-04  Tom Tromey  <tom@tromey.com>
2689
2690         PR cli/19551:
2691         * symfile.c (symbol_file_add_with_addrs): Update output.
2692         * psymtab.c (require_partial_symbols): Update output.
2693
2694 2018-10-04  Tom Tromey  <tom@tromey.com>
2695
2696         PR cli/22234:
2697         * complaints.c: Emit \n.
2698
2699 2018-10-04  Tom Tromey  <tom@tromey.com>
2700
2701         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2702         (separate_debug_file_exists, find_separate_debug_file)
2703         (add_symbol_file_command, reread_symbols, allocate_symtab)
2704         (allocate_compunit_symtab): Use filtered printing, not
2705         unfiltered.
2706         * psymtab.c (require_partial_symbols, dump_psymtab)
2707         (allocate_psymtab): Use filtered printing, not unfiltered.
2708
2709 2018-10-04  Tom Tromey  <tom@tromey.com>
2710
2711         * complaints.c (complaint_internal): Correctly check complaint
2712         count.
2713
2714 2018-10-04  Tom Tromey  <tom@tromey.com>
2715
2716         * complaints.h (struct complaints): Remove declaration.
2717         * complaints.c (clear_complaints): Remove an unused variable.
2718
2719 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2720
2721         * MAINTAINERS (Write After Approval): Add self.
2722
2723 2018-10-03  Tom Tromey  <tom@tromey.com>
2724
2725         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2726         "buffer_contents".
2727         * coffread.c (coff_symtab_read): Initialize "newobj".
2728
2729 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2730
2731         * dwarf2read.c (read_func_scope): Remove struct keyword in
2732         range-based for.
2733
2734 2018-10-03  Tom Tromey  <tom@tromey.com>
2735
2736         * README: Mention --enable-ubsan.
2737         * NEWS: Mention --enable-ubsan.
2738         * acinclude.m4: Include sanitize.m4.
2739         * configure: Rebuild.
2740         * configure.ac: Call AM_GDB_UBSAN.
2741         * sanitize.m4: New file.
2742
2743 2018-10-03  Tom Tromey  <tom@tromey.com>
2744
2745         * expression.h (enum exp_opcode): Use uint8_t as base type.
2746         * expprint.c (op_name): Handle invalid opcodes.
2747
2748 2018-10-03  Tom Tromey  <tom@tromey.com>
2749
2750         * parse.c (prefixify_expression): Add assert.
2751         (parse_exp_in_context_1): Throw exception if the expression is
2752         empty.
2753
2754 2018-10-03  Tom Tromey  <tom@tromey.com>
2755
2756         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2757
2758 2018-10-03  Tom Tromey  <tom@tromey.com>
2759
2760         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2761
2762 2018-10-03  Tom Tromey  <tom@tromey.com>
2763
2764         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2765         unsigned.
2766
2767 2018-10-03  Tom Tromey  <tom@tromey.com>
2768
2769         * findvar.c (extract_integer): Do work in an unsigned type.
2770
2771 2018-10-03  Tom Tromey  <tom@tromey.com>
2772
2773         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2774         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2775         base type.
2776         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2777         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2778         type.
2779         * c-lang.h (enum c_string_type_values): Use unsigned as base
2780         type.
2781         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2782
2783 2018-10-03  Tom Tromey  <tom@tromey.com>
2784
2785         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2786         <~dwarf2_frame_state_reg_info>: Update.
2787         <dwarf2_frame_state_reg_info>: Update.
2788         <alloc_regs>: Add assertion.  Update.
2789         <reg>: Now a std::vector.
2790         <num_regs>: Remove.
2791         <swap>: Update.
2792         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2793         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2794
2795 2018-10-03  Tom Tromey  <tom@tromey.com>
2796
2797         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2798
2799 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2800
2801         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2802
2803 2018-10-02  Tom Tromey  <tom@tromey.com>
2804
2805         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2806
2807 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2808
2809         * NEWS: Mention changed commands.
2810         * ser-uds.c: New file.
2811         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2812         * configure: Regenerate.
2813         * Makefile.in: Add new file.
2814         * serial.c (serial_open): Check if filename is a socket
2815         and lookup the appropriate interface accordingly.
2816
2817 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2818
2819         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2820         define.
2821         (AARCH64_EXTRA_MAGIC): Likewise.
2822         (AARCH64_FPSIMD_MAGIC): Likewise.
2823         (AARCH64_SVE_MAGIC): Likewise.
2824         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2825         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2826         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2827         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2828         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2829         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2830         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2831         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2832         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2833         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2834         (read_aarch64_ctx): Add function.
2835         (aarch64_linux_sigframe_init): Detect FP registers.
2836
2837 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2838
2839         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2840         (AARCH64_D0_REGNUM): Likewise.
2841         (AARCH64_S0_REGNUM): Likewise.
2842         (AARCH64_H0_REGNUM): Likewise.
2843         (AARCH64_B0_REGNUM): Likewise.
2844         (AARCH64_SVE_V0_REGNUM): Likewise.
2845         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2846         (AARCH64_D0_REGNUM): Likewise.
2847         (AARCH64_S0_REGNUM): Likewise.
2848         (AARCH64_H0_REGNUM): Likewise.
2849         (AARCH64_B0_REGNUM): Likewise.
2850         (AARCH64_SVE_V0_REGNUM): Likewise.
2851
2852 2018-10-01  Gary Benson <gbenson@redhat.com>
2853
2854         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2855         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2856         prfpregset_t instead of gdb_prfpregset_t.
2857         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2858         * configure, config.in: Rebuild.
2859
2860 2018-10-01  Gary Benson <gbenson@redhat.com>
2861
2862         * common/gdb_proc_service.h: New file, factored out from...
2863         * gdb_proc_service.h: Moved common code to the above file.
2864         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2865
2866 2018-10-01  Gary Benson <gbenson@redhat.com>
2867
2868         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2869         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2870
2871 2018-10-01  Gary Benson <gbenson@redhat.com>
2872
2873         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2874         (AC_CHECK_HEADERS): Check for linux/elf.h.
2875         * configure, config.in: Rebuild.
2876         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2877         doesn't define elf_fpregset_t.
2878
2879 2018-10-01  Gary Benson <gbenson@redhat.com>
2880
2881         * gdb_proc_service.h: Whitespace change.
2882
2883 2018-10-01  Tom Tromey  <tom@tromey.com>
2884
2885         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2886         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2887         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2888
2889 2018-10-01  Tom Tromey  <tom@tromey.com>
2890
2891         * README: Minor change.
2892
2893 2018-09-30  Pedro Alves  <palves@redhat.com>
2894
2895         * darwin-nat-info.c (darwin_debug_regions_recurse)
2896         (info_mach_exceptions_command): Remove unused local variables.
2897         * darwin-nat.c (darwin_decode_notify_message)
2898         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2899         (darwin_stop_inferior, darwin_setup_exceptions)
2900         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2901         (darwin_nat_target::attach, darwin_nat_target::detach)
2902         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2903         local variables.
2904         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2905         variables.
2906
2907 2018-09-29  Tom Tromey  <tom@tromey.com>
2908
2909         * README: Remove some leftover text.
2910
2911 2018-09-29  Tom Tromey  <tom@tromey.com>
2912
2913         * PROBLEMS: Rewrite.
2914         * README: Update.
2915
2916 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2917
2918         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2919         case with explicit breakpoint kind.
2920         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2921         'additional_info' and related logic.
2922         (riscv_debug_breakpoints): New variable.
2923         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2924         instruction to determine the breakpoint kind.
2925         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2926         flag.  Update description of 'set/show riscv
2927         use-compressed-breakpoints' flag.
2928
2929 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2930
2931         (NEWS): Mention changes to frame related commands.
2932         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2933         (add_prefix_cmd_suppress_notification): New function.
2934         (add_com_suppress_notification): Call
2935         add_cmd_suppress_notification.
2936         * command.h (add_cmd_suppress_notification): Declare.
2937         (add_prefix_cmd_suppress_notification): Declare.
2938         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2939         (parse_frame_specification): Moved from stack.c, with
2940         simplification to handle a single argument.
2941         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2942         switch to the selected frame.  Add a header comment.
2943         * stack.c: Remove 'safe-ctype.h' include.
2944         (find_frame_for_function): Add declaration.
2945         (find_frame_for_address): New function.
2946         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2947         (frame_selection_by_function_completer): New function.
2948         (info_frame_command): Rename to...
2949         (info_frame_command_core): ...this, and update parameter types.
2950         (select_frame_command): Rename to...
2951         (select_frame_command_core): ...this, and update parameter types.
2952         (frame_command): Rename to...
2953         (frame_command_core): ...this, and update parameter types.
2954         (class frame_command_helper): New class to wrap implementations of
2955         frame related sub-commands.
2956         (frame_apply_cmd_list): New static global.
2957         (frame_cmd_list): Make static.
2958         (select_frame_cmd_list): New global for sub-commands.
2959         (info_frame_cmd_list): New global for sub-commands.
2960         (_initialize_stack): Register sub-commands for 'frame',
2961         'select-frame', and 'info frame'.  Update 'frame apply' commands
2962         to use frame_apply_cmd_list.  Move function local static
2963         frame_apply_list to file static frame_apply_cmd_list for
2964         consistency.
2965         * stack.h (select_frame_command): Delete declarationn.
2966         (select_frame_for_mi): Declare new function.
2967
2968 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2969
2970         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2971         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2972         and NOP.
2973
2974 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2975
2976         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2977
2978 2018-09-26  Tom Tromey  <tom@tromey.com>
2979
2980         * valops.c (auto_abandon): Remove dead code.
2981
2982 2018-09-26  Tom Tromey  <tom@tromey.com>
2983
2984         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2985
2986 2018-09-24  Tom Tromey  <tom@tromey.com>
2987
2988         * common/pathstuff.c (get_standard_cache_dir): Make
2989         "xdg_cache_home" and "home" const.
2990         * top.c (init_history): Make "tmpenv" const.
2991         * main.c (get_init_files): Make "homedir" const.
2992
2993 2018-09-23  Tom Tromey  <tom@tromey.com>
2994
2995         PR python/18852:
2996         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2997
2998 2018-09-23  Tom Tromey  <tom@tromey.com>
2999
3000         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
3001         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
3002         * python/python-internal.h (gdbpy_handle_exception): Declare.
3003         * python/py-utils.c (gdbpy_handle_exception): New function.
3004
3005 2018-09-23  Tom Tromey  <tom@tromey.com>
3006
3007         PR python/17284:
3008         * python/py-type.c (typy_template_argument): Check for negative
3009         argument number.
3010
3011 2018-09-23  Tom Tromey  <tom@tromey.com>
3012
3013         PR python/14062:
3014         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
3015
3016 2018-09-23  Tom Tromey  <tom@tromey.com>
3017
3018         PR python/18170:
3019         * python/py-value.c (valpy_int): Allow conversion from pointer
3020         type.
3021
3022 2018-09-23  Tom Tromey  <tom@tromey.com>
3023
3024         PR python/20126:
3025         * python/py-value.c (valpy_int): Respect type sign.
3026
3027 2018-09-23  Tom Tromey  <tom@tromey.com>
3028
3029         PR python/18352;
3030         * python/py-value.c (valpy_float): Allow conversions from int or
3031         char.
3032         (valpy_int, valpy_long): Allow conversions from float.
3033
3034 2018-09-23  Tom Tromey  <tom@tromey.com>
3035
3036         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
3037         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
3038
3039 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3040
3041         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
3042         __sighndlr.
3043         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
3044
3045 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3046
3047         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3048         target_terminal::ours().
3049
3050 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3051
3052         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3053         of vl to ULONGEST.
3054
3055 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3056
3057         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3058         redundant condition.
3059
3060 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3061
3062         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3063
3064         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3065         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3066         * sol-thread.c (ps_pdmodel): Don't guard definition.
3067
3068         * procfs.c: Fix formatting.
3069
3070         * procfs.c (sysset_t_alloc): Remove.
3071         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3072         (procfs_debug_inferior): Likewise.
3073         (procfs_set_exec_trap): Likewise.
3074         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3075         (proc_set_traced_sysexit): Likewise.
3076
3077         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3078         (dead_procinfo): Likewise.
3079         (proc_warn): Likewise.
3080         (proc_error): Likewise.
3081         (proc_get_LDT_entry): Likewise.
3082         (do_attach): Likewise.
3083         (procfs_target::pid_to_str): Likewise.
3084         (iterate_over_mappings): Likewise.
3085
3086         * procfs.c (create_procinfo): Fix ARI warning.
3087         (proc_get_status): Likewise.
3088         (proc_stop_process): Likewise.
3089         (proc_run_process): Likewise.
3090         (proc_kill): Likewise.
3091         (proc_get_LDT_entry): Likewise.
3092         (procfs_find_LDT_entry): Likewise.
3093         (proc_update_threads): Likewise.
3094         (proc_iterate_over_threads): Likewise.
3095         (do_attach): Likewise.
3096         (procfs_xfer_memory): Likewise.
3097         (invalidate_cache): Likewise.
3098         (procfs_target::resume): Likewise.
3099         (procfs_init_inferior): Likewise.
3100         (procfs_set_exec_trap): Likewise.
3101         (procfs_target::thread_alive): Likewise.
3102         (procfs_target::pid_to_exec_file): Likewise.
3103         (iterate_over_mappings): Likewise.
3104         (procfs_target::make_corefile_notes): Likewise.
3105         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3106
3107         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3108         (procfs_find_LDT_entry): Likewise.
3109         * sol-thread.c (ps_lgetLDT): Likewise.
3110
3111 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3112
3113         PR tdep/17903
3114         * procfs.c (procfs_target): Declare pid_to_exec_file.
3115         (procfs_target::pid_to_exec_file): New.
3116
3117 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3118
3119         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3120         renaming.
3121         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3122         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3123
3124 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3125
3126         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3127         (supply_fpregset, fill_fpregset): Move ...
3128         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3129         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3130         Remove references to ioctl-based procfs.
3131         Include <sys/reg.h>.
3132         Remove PR_MODEL_NATIVE guards.
3133         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3134         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3135
3136 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3137
3138         PR gdb/20981:
3139         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3140         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3141         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3142
3143 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3144
3145         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3146         (fbsd_print_sockaddr_in6): Likewise.
3147
3148 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3149             Chris January  <chris.january@arm.com>
3150
3151         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3152         (evaluate_subexp_standard): Return a dummy type when
3153         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3154         OP_F77_UNDETERMINED_ARGLIST case.
3155         * expression.h (enum noside): Update comment.
3156
3157 2018-09-19  George Vasick <george.vasick@oracle.com>
3158
3159         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3160
3161 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3162             April Chin <april.chin@oracle.com>
3163             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3164
3165         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3166         uint_t lwpid_t.
3167         (create_procinfo): Print pids in /proc without leading zeros.
3168
3169 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3170
3171         * nios2-tdep.c (nios2_gcc_target_options): New.
3172         (nios2_gdb_arch_init): Install new hook.
3173
3174 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3175
3176         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3177         New file.
3178         * update-gnulib.sh: Apply patch.
3179         * configure: Re-generate.
3180
3181 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3182
3183         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3184         description.  Make "info proc" command descriptions more
3185         consistent.
3186
3187 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3188
3189         * NEWS: Mention 'info proc files' command.
3190
3191 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3192
3193         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3194         descriptors for IP_FILES and IP_ALL.
3195
3196 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3197
3198         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3199         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3200         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3201         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3202         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3203         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3204         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3205         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3206         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3207         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3208         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3209         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3210         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3211         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3212         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3213         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3214         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3215         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3216         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3217         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3218         (struct fbsd_sockaddr_un): New types.
3219         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3220         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3221         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3222         (fbsd_core_info_proc_files): New functions.
3223         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3224         IP_ALL.
3225         * fbsd-tdep.h (fbsd_info_proc_files_header)
3226         (fbsd_info_proc_files_entry): New.
3227
3228 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3229
3230         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3231         * infcmd.c (info_proc_cmd_files): New function.
3232         (_initialize_infcmd): Register 'info proc files' command.
3233
3234 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3235
3236         * gnulib/aclocal-m4-deps.mk: Re-generate.
3237         * gnulib/aclocal.m4: Re-generate.
3238         * gnulib/config.in: Re-generate.
3239         * gnulib/configure: Re-generate.
3240         * gnulib/import/Makefile.am: Re-generate.
3241         * gnulib/import/Makefile.in: Re-generate.
3242         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3243         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3244         * gnulib/import/arpa_inet.in.h: New file.
3245         * gnulib/import/inet_ntop.c: New file.
3246         * gnulib/import/m4/arpa_inet_h.m4: New file.
3247         * gnulib/import/m4/inet_ntop.m4: New file.
3248         * gnulib/import/m4/netinet_in_h.m4: New file.
3249         * gnulib/import/m4/socklen.m4: New file.
3250         * gnulib/import/m4/sockpfaf.m4: New file.
3251         * gnulib/import/m4/stdalign.m4: New file.
3252         * gnulib/import/m4/sys_uio_h.m4: New file.
3253         * gnulib/import/netinet_in.in.h: New file.
3254         * gnulib/import/stdalign.in.h: New file.
3255         * gnulib/import/sys_socket.c: New file.
3256         * gnulib/import/sys_socket.in.h: New file.
3257         * gnulib/import/sys_uio.in.h: New file.
3258         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3259         module.
3260
3261 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3262
3263         * gnulib/aclocal-m4-deps.mk: New file.
3264         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3265         deterministically.
3266
3267 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3268
3269         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3270         KVE_PATH.
3271
3272 2018-09-18  Tom Tromey  <tom@tromey.com>
3273
3274         * compile/compile-object-load.c (struct
3275         link_hash_table_cleanup_data): Add constructor and destructor.
3276         Use DISABLE_COPY_AND_ASSIGN.
3277         (~link_hash_table_cleanup_data): Rename from
3278         link_hash_table_free.  Now a destructor.
3279         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3280
3281 2018-09-18  Tom Tromey  <tom@tromey.com>
3282
3283         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3284         * compile/compile-object-load.c (struct munmap_list): Move to
3285         header file.
3286         (munmap_list::add): Rename from munmap_list_add; rewrite.
3287         (munmap_list::~munmap_list): Rename from munmap_list_free.
3288         (munmap_listp_free_cleanup): Remove.
3289         (compile_object_load): Update.
3290         * compile/compile-object-load.h (struct munmap_list): Move from
3291         compile-object-load.c.  Rewrite.
3292
3293 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3294
3295         * aarch64-tdep.c (pass_in_v): Use register size.
3296         (aarch64_extract_return_value): Likewise.
3297         (aarch64_store_return_value): Likewise.
3298
3299 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3300
3301         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3302         rlim_t.
3303
3304 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3305
3306         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3307         Fix short help line.
3308
3309 2018-09-17  Tom Tromey  <tom@tromey.com>
3310
3311         PR python/20445:
3312         * configure: Rebuild.
3313         * configure.ac: Conditionally use -DNDEBUG for Python.
3314
3315 2018-09-17  Tom Tromey  <tom@tromey.com>
3316
3317         * configure: Rebuild.
3318         * configure.ac: Use gmp as a library dependency when checking for
3319         mpfr.
3320
3321 2018-09-17  Pedro Alves  <palves@redhat.com>
3322
3323         * python/py-inferior.c (find_inferior_object): Delete.
3324
3325 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3326
3327         * compile/compile-cplus-types.c
3328         (compile_cplus_instance::enter_scope): Don't use new_scope after
3329         std::move.
3330
3331 2018-09-17  Tom Tromey  <tom@tromey.com>
3332
3333         * common/pathstuff.c (get_standard_cache_dir): Use
3334         ~/Library/Caches on macOS.
3335         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3336
3337 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3338
3339         PR python/23669
3340         * breakpoint.c (commands_cmd_element): New.
3341         (_initialize_breakpoint): Assign commands_cmd_element.
3342         * breakpoint.h (commands_cmd_element): New.
3343         * cli/cli-script.c (while_cmd_element, if_command,
3344         define_cmd_element): New.
3345         (command_name_equals): Remove.
3346         (process_next_line): Compare commands by pointer, not by name.
3347         (_initialize_cli_script): Assign the various cmd_list_element
3348         variables.
3349         * compile/compile.c (compile_cmd_element): New.
3350         (_initialize_compile): Assign compile_cmd_element.
3351         * compile/compile.h (compile_cmd_element): New.
3352         * guile/guile.c (guile_cmd_element): New.
3353         (install_gdb_commands): Assign guile_cmd_element.
3354         * guile/guile.h (guile_cmd_element): New.
3355         * python/python.c (python_cmd_element): New.
3356         (_initialize_python): Assign python_cmd_element.
3357         * python/python.h (python_cmd_element): New.
3358         * tracepoint.c (while_stepping_cmd_element): New.
3359         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3360         * tracepoint.h (while_stepping_cmd_element): New.
3361
3362 2018-09-17  Tom Tromey  <tom@tromey.com>
3363
3364         * infrun.c (save_infcall_suspend_state): Return
3365         infcall_suspend_state_up.
3366         (save_infcall_control_state): Return infcall_control_state_up.
3367         * inferior.h (save_infcall_suspend_state)
3368         (save_infcall_control_state): Declare later.  Return unique
3369         pointers.
3370
3371 2018-09-17  Tom Tromey  <tom@tromey.com>
3372
3373         * infrun.c (struct stop_context): Declare constructor,
3374         destructor, "changed" method.
3375         (stop_context::stop_context): Rename from save_stop_context.
3376         (stop_context::~stop_context): Rename from
3377         release_stop_context_cleanup.
3378         (normal_stop): Update.
3379         (stop_context::changed): Rename from stop_context_changed.  Return
3380         bool.
3381
3382 2018-09-17  Tom Tromey  <tom@tromey.com>
3383
3384         * inferior.h (struct infcall_suspend_state_deleter): New.
3385         (infcall_suspend_state_up): New typedef.
3386         (struct infcall_control_state_deleter): New.
3387         (infcall_control_state_up): New typedef.
3388         (make_cleanup_restore_infcall_suspend_state)
3389         (make_cleanup_restore_infcall_control_state): Don't declare.
3390         * infcall.c (call_function_by_hand_dummy): Update.
3391         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3392         (make_cleanup_restore_infcall_suspend_state): Remove.
3393         (do_restore_infcall_control_state_cleanup)
3394         (make_cleanup_restore_infcall_control_state): Remove.
3395
3396 2018-09-17  Tom Tromey  <tom@tromey.com>
3397
3398         * gdbthread.h (struct thread_control_state): Add initializer.
3399         (class thread_info) <control>: Remove initializer.
3400         * inferior.h (struct inferior_control_state): Add initializer.
3401         (class inferior) <control>: Remove initializer.
3402         (exit_inferior_1): Update.
3403         * infrun.c (struct infcall_control_state): Add constructors.
3404         (save_infcall_control_state): Use new.
3405         (restore_infcall_control_state, discard_infcall_control_state):
3406         Use delete.
3407
3408 2018-09-17  Tom Tromey  <tom@tromey.com>
3409
3410         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3411         unique_ptr.
3412         <siginfo_data>: Now a unique_xmalloc_ptr.
3413         (save_infcall_suspend_state, restore_infcall_suspend_state)
3414         (discard_infcall_suspend_state)
3415         (get_infcall_suspend_state_regcache): Update.
3416
3417 2018-09-17  Tom Tromey  <tom@tromey.com>
3418
3419         * gdbthread.h (struct thread_suspend_state): Add initializers.
3420         (class thread_info) <suspend>: Remove initializer.
3421         * infrun.c (struct infcall_suspend_state): Add initializers.
3422         (save_infcall_suspend_state): Use new.
3423         (discard_infcall_suspend_state): Use delete.
3424
3425 2018-09-16  Tom Tromey  <tom@tromey.com>
3426
3427         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3428         Remove.
3429         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3430         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3431         (py_varobj_iter_new): Likewise.
3432         (py_varobj_get_iterator): Use gdbpy_ref.
3433
3434 2018-09-16  Tom Tromey  <tom@tromey.com>
3435
3436         * python/py-threadevent.c (py_get_event_thread): Simplify.
3437         * python/py-inferior.c (infpy_thread_from_thread_handle):
3438         Return immediately after calling thread_to_thread_object.  Use
3439         Py_RETURN_NONE.
3440         (thread_to_thread_object): Set the exception on a NULL return.
3441
3442 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3443
3444         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3445
3446 2018-09-16  Tom Tromey  <tom@tromey.com>
3447
3448         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3449         Remove.
3450
3451 2018-09-16  Tom Tromey  <tom@tromey.com>
3452
3453         * python/python-internal.h (thread_to_thread_object): Change
3454         return type.
3455         * python/py-inferior.c (thread_to_thread_object): Return a new
3456         reference.
3457         (infpy_thread_from_thread_handle): Update.
3458         * python/py-infthread.c (gdbpy_selected_thread): Update.
3459         * python/py-stopevent.c (create_stop_event_object): Update.
3460         * python/py-threadevent.c (py_get_event_thread): Return a new
3461         reference.
3462         (py_get_event_thread): Update.
3463         * python/py-event.h (py_get_event_thread): Change return type.
3464         * python/py-continueevent.c (create_continue_event_object):
3465         Update.
3466
3467 2018-09-16  Tom Tromey  <tom@tromey.com>
3468
3469         * python/py-progspace.c (pspy_get_objfiles): Update.
3470         * python/python-internal.h (objfile_to_objfile_object): Change
3471         return type.
3472         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3473         Update.
3474         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3475         Update.
3476         * python/python.c (gdbpy_get_current_objfile): Update.
3477         (gdbpy_objfiles): Update.
3478         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3479         Update.
3480         (objfile_to_objfile_object): Return a new reference.
3481         * python/py-symtab.c (stpy_get_objfile): Update.
3482         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3483         Update.
3484
3485 2018-09-16  Tom Tromey  <tom@tromey.com>
3486
3487         * python/py-inferior.c (infpy_get_progspace): Update.
3488         * python/python-internal.h (pspace_to_pspace_object): Change
3489         return type.
3490         * python/py-newobjfileevent.c
3491         (create_clear_objfiles_event_object): Update.
3492         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3493         Update.
3494         * python/python.c (gdbpy_get_current_progspace): Update.
3495         (gdbpy_progspaces): Update.
3496         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3497         reference.
3498         * python/py-objfile.c (objfpy_get_progspace): Update.
3499         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3500         Update.
3501
3502 2018-09-16  Tom Tromey  <tom@tromey.com>
3503
3504         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3505         (solib_name, block_for_pc, find_pc_line): New functions.
3506         (execute_unwinders): Update.
3507         * python/py-block.c (gdbpy_block_for_pc): Remove.
3508         * python/py-inferior.c (infpy_get_progspace): New function.
3509         (inferior_object_getset) <progspace>: Add.
3510         * python/py-progspace.c (pspy_objfiles): Rewrite.
3511         (pspy_solib_name, pspy_block_for_pc)
3512         (pspy_find_pc_line, pspy_is_valid): New functions.
3513         (progspace_object_methods): Add entries for solib_name,
3514         block_for_pc, find_pc_line, is_valid.
3515         * python/python-internal.h (gdbpy_block_for_pc)
3516         (build_objfiles_list): Don't declare.
3517         * python/python.c: Don't include solib.h.
3518         (gdbpy_solib_name, gdbpy_find_pc_line)
3519         (gdbpy_get_current_progspace, build_objfiles_list)
3520         (gdbpy_objfiles): Remove.
3521         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3522         solib_name, find_pc_line>: Remove entries.
3523
3524 2018-09-16  Tom Tromey  <tom@tromey.com>
3525
3526         * top.c (new_ui_command): Use GNU style for metasyntactic
3527         variables.
3528         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3529         variables.
3530         * maint.c (maintenance_translate_address): Remove "<>" around
3531         text.
3532         * interps.c (interpreter_exec_cmd): Use GNU style for
3533         metasyntactic variables.
3534         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3535         metasyntactic variables.
3536         * tracepoint.c (tfind_range_command): Use GNU style for
3537         metasyntactic variables.
3538         (tfind_outside_command): Likewise.
3539         (_initialize_tracepoint): Likewise.
3540         * remote.c (extended_remote_target::create_inferior): Use GNU
3541         style for metasyntactic variables.
3542         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3543         metasyntactic variables.
3544         (adi_assign_command): Likewise.
3545
3546 2018-09-16  Tom Tromey  <tom@tromey.com>
3547
3548         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3549         metasyntactic variables.  Print message if no disassembler options
3550         are available.
3551
3552 2018-09-15  Tom Tromey  <tom@tromey.com>
3553
3554         * infcmd.c (get_inferior_args): Return const char *.
3555         * inferior.h (get_inferior_args): Return type now const.
3556         * linux-tdep.c (linux_fill_prpsinfo): Update.
3557         * procfs.c (procfs_target::make_corefile_notes): Update.
3558
3559 2018-09-07  Tom Tromey  <tom@tromey.com>
3560
3561         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3562         inside the TRY.
3563
3564 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3565
3566         * nios2-tdep.c (nios2_type_align): New.
3567         (nios2_gdb_arch_init): Install type_align hook.
3568
3569 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3570
3571         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3572         type that is neither object file owned, nor gdbarch owned.
3573         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3574         gdbarch is non-NULL.
3575         (alloc_type_instance): Allocate non-objfile owned types on the
3576         gdbarch obstack.
3577         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3578         using TYPE_ALLOC to ensure memory is allocated on the correct
3579         obstack.
3580         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3581         obstack, or the gdbarch obstack.
3582         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3583
3584 2018-09-14  Tom Tromey  <tom@tromey.com>
3585
3586         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3587         block.
3588
3589 2018-09-14  Tom Tromey  <tom@tromey.com>
3590
3591         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3592
3593 2018-09-13  Tom Tromey  <tom@tromey.com>
3594
3595         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3596         static.
3597
3598 2018-09-13  Tom Tromey  <tom@tromey.com>
3599
3600         * exec.c (try_open_exec_file): Use std::string.
3601
3602 2018-09-13  Tom Tromey  <tom@tromey.com>
3603
3604         * utils.h (gdb_bfd_errmsg): Return std::string.
3605         * exec.c (exec_file_attach): Update.
3606         * compile/compile-object-load.c (compile_object_load): Update.
3607         * utils.c (gdb_bfd_errmsg): Return std::string.
3608
3609 2018-09-13  Tom Tromey  <tom@tromey.com>
3610
3611         * procfs.c (struct procinfo_deleter): New.
3612         (procinfo_up): New typedef.
3613         (do_destroy_procinfo_cleanup): Remove.
3614         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3615
3616 2018-09-13  Tom Tromey  <tom@tromey.com>
3617
3618         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3619
3620 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3621 2018-09-13  Tom Tromey  <tom@tromey.com>
3622
3623         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3624         (pspy_get_objfiles): New function.
3625         (progspace_object_methods): New.
3626         (pspace_object_type): Add tp_methods callback.
3627         * python/python-internal.h (build_objfiles_list): New
3628         declaration.
3629         * python/python.c (build_objfiles_list): New function.
3630         (gdbpy_objfiles): Implement using build_objfiles_list.
3631         * NEWS: Mention the Progspace.objfiles method.
3632
3633 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3634
3635         * python/py-inferior.c (infpy_get_progspace): New function.
3636         (inferior_object_getset): Add progspace property.
3637         * NEWS: Mention the new property.
3638
3639 2018-09-13  Tom Tromey  <tom@tromey.com>
3640
3641         PR rust/23650:
3642         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3643
3644 2018-09-13  Tom Tromey  <tom@tromey.com>
3645
3646         PR rust/23626:
3647         * rust-lang.c (rust_enum_variant): Now static.
3648         (rust_empty_enum_p): New function.
3649         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3650         Handle empty enum.
3651
3652 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3653
3654         * python/py-inferior.c (infpy_repr): New.
3655         (inferior_object_type): Register infpy_repr.
3656         * python/py-objfile.c (objfpy_repr): New.
3657         (objfile_object_type): Register objfpy_repr.
3658
3659 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3660
3661         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3662
3663 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3664
3665         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3666         typo.
3667
3668 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3669
3670         * common/common-utils.c: Don't include '<sys/stat.h>'.
3671         (is_regular_file): Move to...
3672         * common/filestuff.c (is_regular_file): ... here.
3673         * common/common-utils.h (is_regular_file): Move to...
3674         * common/filestuff.h (is_regular_file): ... here.
3675
3676 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3677
3678         * skip.c (debug_skip): New variable.
3679         (skiplist_entry::do_skip_file_p): Add debug output.
3680         (skiplist_entry::do_skip_gfile_p): Likewise.
3681         (skiplist_entry::skip_function_p): Likewise.
3682         (_initialize_step_skip): Create debug command.
3683         * NEWS: Mention set/show debug skip.
3684
3685 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3686
3687         * darwin-nat.c (should_disable_startup_with_shell):
3688         New function.
3689         (darwin_nat_target::create_inferior): Add call.
3690
3691 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3692
3693         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3694         inf_port, msg_state>: Initialize.
3695         (struct darwin_thread_info) <signaled, single_step>: Change
3696         type and initialize.
3697         (struct darwin_thread_info) <event>: Initialize.
3698
3699 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3700
3701         PR gdb/23555
3702         PR gdb/23558
3703         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3704         guesses.
3705
3706 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3707
3708         Revert:
3709         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3710
3711         PR gdb/23555
3712         PR gdb/23558
3713         * gnulib/aclocal.m4: Regenerate.
3714         * gnulib/config.in: Regenerate.
3715         * gnulib/configure: Regenerate.
3716         * gnulib/import/Makefile.am: Update.
3717         * gnulib/import/Makefile.in: Update.
3718         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3719         * gnulib/import/_Noreturn.h: ... this.
3720         * gnulib/import/alloca.in.h: Update.
3721         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3722         * gnulib/import/arg-nonnull.h: ... this.
3723         * gnulib/import/assure.h: Update.
3724         * gnulib/import/at-func.c: Update.
3725         * gnulib/import/basename-lgpl.c: Update.
3726         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3727         * gnulib/import/c++defs.h: ... this.
3728         * gnulib/import/canonicalize-lgpl.c: Update.
3729         * gnulib/import/cdefs.h: Update.
3730         * gnulib/import/chdir-long.c: Update.
3731         * gnulib/import/chdir-long.h: Update.
3732         * gnulib/import/cloexec.c: Update.
3733         * gnulib/import/cloexec.h: Update.
3734         * gnulib/import/close.c: Update.
3735         * gnulib/import/closedir.c: Update.
3736         * gnulib/import/config.charset: Update.
3737         * gnulib/import/dirent-private.h: Update.
3738         * gnulib/import/dirent.in.h: Update.
3739         * gnulib/import/dirfd.c: Update.
3740         * gnulib/import/dirname-lgpl.c: Update.
3741         * gnulib/import/dirname.h: Update.
3742         * gnulib/import/dosname.h: Update.
3743         * gnulib/import/dup-safer-flag.c: Update.
3744         * gnulib/import/dup-safer.c: Update.
3745         * gnulib/import/dup.c: Update.
3746         * gnulib/import/dup2.c: Update.
3747         * gnulib/import/errno.in.h: Update.
3748         * gnulib/import/error.c: Update.
3749         * gnulib/import/error.h: Update.
3750         * gnulib/import/exitfail.c: Update.
3751         * gnulib/import/exitfail.h: Update.
3752         * gnulib/import/extra/update-copyright: Update.
3753         * gnulib/import/fchdir.c: Update.
3754         * gnulib/import/fcntl.c: Update.
3755         * gnulib/import/fcntl.in.h: Update.
3756         * gnulib/import/fd-hook.c: Update.
3757         * gnulib/import/fd-hook.h: Update.
3758         * gnulib/import/fd-safer-flag.c: Update.
3759         * gnulib/import/fd-safer.c: Update.
3760         * gnulib/import/fdopendir.c: Update.
3761         * gnulib/import/filename.h: Update.
3762         * gnulib/import/filenamecat-lgpl.c: Update.
3763         * gnulib/import/filenamecat.h: Update.
3764         * gnulib/import/flexmember.h: Update.
3765         * gnulib/import/float+.h: Update.
3766         * gnulib/import/float.c: Update.
3767         * gnulib/import/float.in.h: Update.
3768         * gnulib/import/fnmatch.c: Update.
3769         * gnulib/import/fnmatch.in.h: Update.
3770         * gnulib/import/fnmatch_loop.c: Update.
3771         * gnulib/import/fpucw.h: Update.
3772         * gnulib/import/frexp.c: Update.
3773         * gnulib/import/frexpl.c: Update.
3774         * gnulib/import/fstat.c: Update.
3775         * gnulib/import/fstatat.c: Update.
3776         * gnulib/import/getcwd-lgpl.c: Update.
3777         * gnulib/import/getcwd.c: Update.
3778         * gnulib/import/getdtablesize.c: Update.
3779         * gnulib/import/getlogin_r.c: Update.
3780         * gnulib/import/getprogname.c: Update.
3781         * gnulib/import/getprogname.h: Update.
3782         * gnulib/import/gettext.h: Update.
3783         * gnulib/import/gettimeofday.c: Update.
3784         * gnulib/import/glob-libc.h: Update.
3785         * gnulib/import/glob.c: Update.
3786         * gnulib/import/glob.in.h: Update.
3787         * gnulib/import/glob_internal.h: Update.
3788         * gnulib/import/glob_pattern_p.c: Update.
3789         * gnulib/import/globfree.c: Update.
3790         * gnulib/import/hard-locale.c: Update.
3791         * gnulib/import/hard-locale.h: Update.
3792         * gnulib/import/intprops.h: Update.
3793         * gnulib/import/inttypes.in.h: Update.
3794         * gnulib/import/isnan.c: Update.
3795         * gnulib/import/isnand-nolibm.h: Update.
3796         * gnulib/import/isnand.c: Update.
3797         * gnulib/import/isnanl-nolibm.h: Update.
3798         * gnulib/import/isnanl.c: Update.
3799         * gnulib/import/itold.c: Update.
3800         * gnulib/import/libc-config.h: Update.
3801         * gnulib/import/limits.in.h: Update.
3802         * gnulib/import/localcharset.c: Update.
3803         * gnulib/import/localcharset.h: Update.
3804         * gnulib/import/localtime-buffer.c: Update.
3805         * gnulib/import/localtime-buffer.h: Update.
3806         * gnulib/import/lstat.c: Update.
3807         * gnulib/import/m4/00gnulib.m4: Update.
3808         * gnulib/import/m4/__inline.m4: Update.
3809         * gnulib/import/m4/absolute-header.m4: Update.
3810         * gnulib/import/m4/alloca.m4: Update.
3811         * gnulib/import/m4/builtin-expect.m4: Update.
3812         * gnulib/import/m4/canonicalize.m4: Update.
3813         * gnulib/import/m4/chdir-long.m4: Update.
3814         * gnulib/import/m4/close.m4: Update.
3815         * gnulib/import/m4/closedir.m4: Update.
3816         * gnulib/import/m4/configmake.m4: Update.
3817         * gnulib/import/m4/d-ino.m4: Update.
3818         * gnulib/import/m4/d-type.m4: Update.
3819         * gnulib/import/m4/dirent_h.m4: Update.
3820         * gnulib/import/m4/dirfd.m4: Update.
3821         * gnulib/import/m4/dirname.m4: Update.
3822         * gnulib/import/m4/double-slash-root.m4: Update.
3823         * gnulib/import/m4/dup.m4: Update.
3824         * gnulib/import/m4/dup2.m4: Update.
3825         * gnulib/import/m4/eealloc.m4: Update.
3826         * gnulib/import/m4/environ.m4: Update.
3827         * gnulib/import/m4/errno_h.m4: Update.
3828         * gnulib/import/m4/error.m4: Update.
3829         * gnulib/import/m4/exponentd.m4: Update.
3830         * gnulib/import/m4/exponentl.m4: Update.
3831         * gnulib/import/m4/extensions.m4: Update.
3832         * gnulib/import/m4/extern-inline.m4: Update.
3833         * gnulib/import/m4/fchdir.m4: Update.
3834         * gnulib/import/m4/fcntl-o.m4: Update.
3835         * gnulib/import/m4/fcntl.m4: Update.
3836         * gnulib/import/m4/fcntl_h.m4: Update.
3837         * gnulib/import/m4/fdopendir.m4: Update.
3838         * gnulib/import/m4/filenamecat.m4: Update.
3839         * gnulib/import/m4/flexmember.m4: Update.
3840         * gnulib/import/m4/float_h.m4: Update.
3841         * gnulib/import/m4/fnmatch.m4: Update.
3842         * gnulib/import/m4/fnmatch_h.m4: Update.
3843         * gnulib/import/m4/fpieee.m4: Update.
3844         * gnulib/import/m4/frexp.m4: Update.
3845         * gnulib/import/m4/frexpl.m4: Update.
3846         * gnulib/import/m4/fstat.m4: Update.
3847         * gnulib/import/m4/fstatat.m4: Update.
3848         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3849         * gnulib/import/m4/getcwd-path-max.m4: Update.
3850         * gnulib/import/m4/getcwd.m4: Update.
3851         * gnulib/import/m4/getdtablesize.m4: Update.
3852         * gnulib/import/m4/getlogin.m4: Update.
3853         * gnulib/import/m4/getlogin_r.m4: Update.
3854         * gnulib/import/m4/getpagesize.m4: Update.
3855         * gnulib/import/m4/getprogname.m4: Update.
3856         * gnulib/import/m4/gettimeofday.m4: Update.
3857         * gnulib/import/m4/glibc21.m4: Update.
3858         * gnulib/import/m4/glob.m4: Update.
3859         * gnulib/import/m4/glob_h.m4: Update.
3860         * gnulib/import/m4/gnulib-cache.m4: Update.
3861         * gnulib/import/m4/gnulib-common.m4: Update.
3862         * gnulib/import/m4/gnulib-comp.m4: Update.
3863         * gnulib/import/m4/gnulib-tool.m4: Update.
3864         * gnulib/import/m4/hard-locale.m4: Update.
3865         * gnulib/import/m4/include_next.m4: Update.
3866         * gnulib/import/m4/inttypes-pri.m4: Update.
3867         * gnulib/import/m4/inttypes.m4: Update.
3868         * gnulib/import/m4/isnand.m4: Update.
3869         * gnulib/import/m4/isnanl.m4: Update.
3870         * gnulib/import/m4/largefile.m4: Update.
3871         * gnulib/import/m4/limits-h.m4: Update.
3872         * gnulib/import/m4/localcharset.m4: Update.
3873         * gnulib/import/m4/locale-fr.m4: Update.
3874         * gnulib/import/m4/locale-ja.m4: Update.
3875         * gnulib/import/m4/locale-zh.m4: Update.
3876         * gnulib/import/m4/localtime-buffer.m4: Update.
3877         * gnulib/import/m4/longlong.m4: Update.
3878         * gnulib/import/m4/lstat.m4: Update.
3879         * gnulib/import/m4/malloc.m4: Update.
3880         * gnulib/import/m4/malloca.m4: Update.
3881         * gnulib/import/m4/math_h.m4: Update.
3882         * gnulib/import/m4/mbrtowc.m4: Update.
3883         * gnulib/import/m4/mbsinit.m4: Update.
3884         * gnulib/import/m4/mbsrtowcs.m4: Update.
3885         * gnulib/import/m4/mbstate_t.m4: Update.
3886         * gnulib/import/m4/memchr.m4: Update.
3887         * gnulib/import/m4/memmem.m4: Update.
3888         * gnulib/import/m4/mempcpy.m4: Update.
3889         * gnulib/import/m4/memrchr.m4: Update.
3890         * gnulib/import/m4/mkdir.m4: Update.
3891         * gnulib/import/m4/mkstemp.m4: Update.
3892         * gnulib/import/m4/mmap-anon.m4: Update.
3893         * gnulib/import/m4/mode_t.m4: Update.
3894         * gnulib/import/m4/msvc-inval.m4: Update.
3895         * gnulib/import/m4/msvc-nothrow.m4: Update.
3896         * gnulib/import/m4/multiarch.m4: Update.
3897         * gnulib/import/m4/nocrash.m4: Update.
3898         * gnulib/import/m4/off_t.m4: Update.
3899         * gnulib/import/m4/onceonly.m4: Update.
3900         * gnulib/import/m4/open-cloexec.m4: Update.
3901         * gnulib/import/m4/open.m4: Update.
3902         * gnulib/import/m4/openat.m4: Update.
3903         * gnulib/import/m4/opendir.m4: Update.
3904         * gnulib/import/m4/pathmax.m4: Update.
3905         * gnulib/import/m4/rawmemchr.m4: Update.
3906         * gnulib/import/m4/readdir.m4: Update.
3907         * gnulib/import/m4/readlink.m4: Update.
3908         * gnulib/import/m4/realloc.m4: Update.
3909         * gnulib/import/m4/rename.m4: Update.
3910         * gnulib/import/m4/rewinddir.m4: Update.
3911         * gnulib/import/m4/rmdir.m4: Update.
3912         * gnulib/import/m4/save-cwd.m4: Update.
3913         * gnulib/import/m4/secure_getenv.m4: Update.
3914         * gnulib/import/m4/setenv.m4: Update.
3915         * gnulib/import/m4/signal_h.m4: Update.
3916         * gnulib/import/m4/ssize_t.m4: Update.
3917         * gnulib/import/m4/stat-time.m4: Update.
3918         * gnulib/import/m4/stat.m4: Update.
3919         * gnulib/import/m4/std-gnu11.m4: Update.
3920         * gnulib/import/m4/stdbool.m4: Update.
3921         * gnulib/import/m4/stddef_h.m4: Update.
3922         * gnulib/import/m4/stdint.m4: Update.
3923         * gnulib/import/m4/stdio_h.m4: Update.
3924         * gnulib/import/m4/stdlib_h.m4: Update.
3925         * gnulib/import/m4/strchrnul.m4: Update.
3926         * gnulib/import/m4/strdup.m4: Update.
3927         * gnulib/import/m4/strerror.m4: Update.
3928         * gnulib/import/m4/string_h.m4: Update.
3929         * gnulib/import/m4/strstr.m4: Update.
3930         * gnulib/import/m4/strtok_r.m4: Update.
3931         * gnulib/import/m4/sys_socket_h.m4: Update.
3932         * gnulib/import/m4/sys_stat_h.m4: Update.
3933         * gnulib/import/m4/sys_time_h.m4: Update.
3934         * gnulib/import/m4/sys_types_h.m4: Update.
3935         * gnulib/import/m4/tempname.m4: Update.
3936         * gnulib/import/m4/time_h.m4: Update.
3937         * gnulib/import/m4/unistd-safer.m4: Update.
3938         * gnulib/import/m4/unistd_h.m4: Update.
3939         * gnulib/import/m4/warn-on-use.m4: Update.
3940         * gnulib/import/m4/wchar_h.m4: Update.
3941         * gnulib/import/m4/wchar_t.m4: Update.
3942         * gnulib/import/m4/wctype_h.m4: Update.
3943         * gnulib/import/m4/wint_t.m4: Update.
3944         * gnulib/import/malloc.c: Update.
3945         * gnulib/import/malloc/scratch_buffer.h: Update.
3946         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3947         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3948         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3949         * gnulib/import/malloca.c: Update.
3950         * gnulib/import/malloca.h: Update.
3951         * gnulib/import/malloca.valgrind: Update.
3952         * gnulib/import/math.in.h: Update.
3953         * gnulib/import/mbrtowc.c: Update.
3954         * gnulib/import/mbsinit.c: Update.
3955         * gnulib/import/mbsrtowcs-impl.h: Update.
3956         * gnulib/import/mbsrtowcs-state.c: Update.
3957         * gnulib/import/mbsrtowcs.c: Update.
3958         * gnulib/import/memchr.c: Update.
3959         * gnulib/import/memmem.c: Update.
3960         * gnulib/import/mempcpy.c: Update.
3961         * gnulib/import/memrchr.c: Update.
3962         * gnulib/import/mkdir.c: Update.
3963         * gnulib/import/mkstemp.c: Update.
3964         * gnulib/import/msvc-inval.c: Update.
3965         * gnulib/import/msvc-inval.h: Update.
3966         * gnulib/import/msvc-nothrow.c: Update.
3967         * gnulib/import/msvc-nothrow.h: Update.
3968         * gnulib/import/open.c: Update.
3969         * gnulib/import/openat-die.c: Update.
3970         * gnulib/import/openat-priv.h: Update.
3971         * gnulib/import/openat-proc.c: Update.
3972         * gnulib/import/openat.c: Update.
3973         * gnulib/import/openat.h: Update.
3974         * gnulib/import/opendir.c: Update.
3975         * gnulib/import/pathmax.h: Update.
3976         * gnulib/import/pipe-safer.c: Update.
3977         * gnulib/import/rawmemchr.c: Update.
3978         * gnulib/import/readdir.c: Update.
3979         * gnulib/import/readlink.c: Update.
3980         * gnulib/import/realloc.c: Update.
3981         * gnulib/import/ref-add.sin: Update.
3982         * gnulib/import/ref-del.sin: Update.
3983         * gnulib/import/rename.c: Update.
3984         * gnulib/import/rewinddir.c: Update.
3985         * gnulib/import/rmdir.c: Update.
3986         * gnulib/import/same-inode.h: Update.
3987         * gnulib/import/save-cwd.c: Update.
3988         * gnulib/import/save-cwd.h: Update.
3989         * gnulib/import/scratch_buffer.h: Update.
3990         * gnulib/import/secure_getenv.c: Update.
3991         * gnulib/import/setenv.c: Update.
3992         * gnulib/import/signal.in.h: Update.
3993         * gnulib/import/stat-time.c: Update.
3994         * gnulib/import/stat-time.h: Update.
3995         * gnulib/import/stat-w32.c: Update.
3996         * gnulib/import/stat-w32.h: Update.
3997         * gnulib/import/stat.c: Update.
3998         * gnulib/import/stdbool.in.h: Update.
3999         * gnulib/import/stddef.in.h: Update.
4000         * gnulib/import/stdint.in.h: Update.
4001         * gnulib/import/stdio.in.h: Update.
4002         * gnulib/import/stdlib.in.h: Update.
4003         * gnulib/import/str-two-way.h: Update.
4004         * gnulib/import/strchrnul.c: Update.
4005         * gnulib/import/strdup.c: Update.
4006         * gnulib/import/streq.h: Update.
4007         * gnulib/import/strerror-override.c: Update.
4008         * gnulib/import/strerror-override.h: Update.
4009         * gnulib/import/strerror.c: Update.
4010         * gnulib/import/string.in.h: Update.
4011         * gnulib/import/stripslash.c: Update.
4012         * gnulib/import/strnlen1.c: Update.
4013         * gnulib/import/strnlen1.h: Update.
4014         * gnulib/import/strstr.c: Update.
4015         * gnulib/import/strtok_r.c: Update.
4016         * gnulib/import/sys_stat.in.h: Update.
4017         * gnulib/import/sys_time.in.h: Update.
4018         * gnulib/import/sys_types.in.h: Update.
4019         * gnulib/import/tempname.c: Update.
4020         * gnulib/import/tempname.h: Update.
4021         * gnulib/import/time.in.h: Update.
4022         * gnulib/import/unistd--.h: Update.
4023         * gnulib/import/unistd-safer.h: Update.
4024         * gnulib/import/unistd.in.h: Update.
4025         * gnulib/import/unsetenv.c: Update.
4026         * gnulib/import/verify.h: Update.
4027         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4028         * gnulib/import/wchar.in.h: Update.
4029         * gnulib/import/wctype.in.h: Update.
4030         * gnulib/import/xalloc-oversized.h: Update.
4031         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4032         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4033
4034 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
4035
4036         * record-btrace.c (get_thread_current_frame): Remove
4037         old_inferior_ptid.
4038
4039 2018-09-10  Jerome Guitton  <guitton@adacore.com>
4040
4041         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
4042         with check_tag to 1 if and only if the type is tagged and the
4043         component being searched cannot been found in the current
4044         view. Otherwise, always call ada_to_fixed_type with
4045         check_tag to 0.
4046
4047 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4048
4049         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4050         declaration.
4051         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4052         * ada-varobj.c (ada_varobj_get_number_of_children,
4053         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4054
4055 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4056
4057         * ada-valprint.c (ada_value_print): Use type instead of
4058         enclosing type.
4059
4060 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4061
4062         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4063         an array of access to unconstrained array.
4064
4065 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4066
4067         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4068         (ada_check_typedef): Use it.
4069
4070 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4071
4072         * ada-varobj.c (ada_varobj_describe_struct_child)
4073         (ada_varobj_describe_child): Handle union case like struct one.
4074
4075 2018-09-10  Tom Tromey  <tom@tromey.com>
4076
4077         PR python/18380:
4078         * python/python.c (_initialize_python): Make example in "python"
4079         help work in Python 3.
4080
4081 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4082
4083         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4084         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4085         $(EXEEXT) to the script, as it is not a program.
4086
4087 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4088
4089         * python/py-prettyprint.c (pretty_print_one_value): Return
4090         gdbpy_ref<>.
4091         (print_string_repr): Adjust.
4092         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4093         * python/python-internal.h (apply_varobj_pretty_printer): Return
4094         gdbpy_ref<>.
4095         * varobj.c (varobj_value_get_print_value): Adjust.
4096
4097 2018-09-08  Tom Tromey  <tom@tromey.com>
4098
4099         PR python/16047:
4100         * python/py-prettyprint.c (pretty_print_one_value): Check for
4101         to_string method.
4102
4103 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4104
4105         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4106         replace_operator_with_call.
4107
4108 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4109
4110         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4111
4112 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4113
4114         * ada-typeprint.c (print_range): Print the bounds using TYPE
4115         rather than its TYPE_TARGET_TYPE.
4116
4117 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4118
4119         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4120         call to ada_to_fixed_value_create.
4121
4122 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4123
4124         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4125
4126 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4127
4128         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4129         by calls to error.
4130
4131 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4132
4133         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4134         Move update of loop variable "fi".
4135
4136 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4137
4138         * ada-lang.c (value_assign_to_component): In the case of
4139         big-endian targets, extract the bits of the given VAL
4140         using an src_offset of zero if container is not a scalar.
4141
4142 2018-09-06  Simon Ser  <contact@emersion.fr>
4143
4144         PR gdb/23105
4145         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4146         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4147         * fbsd-tdep.c (fbsd_make_note_desc): New.
4148         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4149         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4150         * target.h (enum target_object) Add FreeBSD-specific
4151         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4152
4153 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4154
4155         * compile/compile-c.h (generate_c_for_variable_locations):
4156         Change reference to pointer.
4157         * compile/compile-c-support.c (compile_program) <compute>:
4158         Likewise.
4159         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4160         (generate_c_for_for_one_variable): Likewise
4161         (generate_c_for_variable_locations): Likewise
4162         * compile/compile-c-types.c (compile_c_instance::convert_type):
4163         Likewise
4164         * compile/compile-cplus-symbols.c (convert_one_symbol):
4165         std::move the scope passed to enter_scope.
4166         * compile/compile-cplus-types.c
4167         (compile_cplus_instance::enter_scope): Make parameter
4168         rvalue-reference.
4169         (compile_cplus_instance::new_scope): Change reference to
4170         pointer.
4171         (compile_cplus_instance::convert_type): Likewise
4172         (compile_cplus_convert_typedef): std::move the scope passed to
4173         enter_scope.
4174         (compile_cplus_convert_struct_or_union): Likewise.
4175         (compile_cplus_convert_enum): Likewise.
4176         (compile_cplus_convert_namespace): Likewise.
4177         * compile/compile-cplus.h (compile_cplus_instance)
4178         <enter_scope>: Make parameter rvalue-reference.
4179         * compile/compile-internal.h (compile_instance)
4180         <get_cached_type>: Likewise
4181         * compile/compile-loc2c.c (push): Likewise
4182         (pushf): Likewise
4183         (unary): Likewise
4184         (binary): Likewise
4185         (print_label): Likewise
4186         (pushf_register_address): Likewise
4187         (pushf_register): Likewise
4188         (do_compile_dwarf_expr_to_c): Likewise
4189         (compile_dwarf_expr_to_c): Likewise
4190         (compile_dwarf_bounds_to_c): Likewise
4191         * compile/compile.c (compile_instance::get_cached_type):
4192         Likewise
4193         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4194         (compile_dwarf_bounds_to_c): Likewise
4195         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4196         (dwarf2_compile_property_to_c): Likewise
4197         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4198         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4199         Likewise
4200
4201 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4202
4203         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4204         * tui/tui-data.c (init_content_element): Don't initialize it.
4205
4206 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4207
4208         * tui/tui-data.h (struct tui_win_info)
4209         <detail::opaque>: Remove.
4210         * tui/tui-data.c (init_win_info): Remove assignment.
4211
4212 2018-09-05  Tom Tromey  <tom@tromey.com>
4213
4214         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4215         -Wformat-nonliteral.
4216         * target-float.c (host_float_ops<T>::to_string)
4217         (host_float_ops<T>::from_string): Use
4218         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4219         * configure: Rebuild.
4220
4221 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4222
4223         * printcmd.c (printf_c_string): Use
4224         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4225         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4226
4227 2018-09-05  Tom Tromey  <tom@tromey.com>
4228
4229         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4230
4231 2018-09-05  Tom de Vries  <tdevries@suse.de>
4232
4233         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4234         with resolve_abstract_p == true.
4235         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4236         defaulting to false. Propagate resolve_abstract_p to
4237         dwarf2_fetch_die_loc_sect_off.
4238         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4239         parameter, defaulting to false.
4240         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4241         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4242         parameter.
4243         * dwarf2read.h (struct die_info): Forward-declare.
4244         (die_info_ptr): New typedef.
4245         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4246
4247 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4248
4249         GDB 8.2 released.
4250
4251 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4252             Pedro Alves  <palves@redhat.com>
4253
4254         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4255         "aclocal-m4-deps.mk".  Include file here.
4256         $(srcdir)/aclocal.m4: Add "configure.ac".
4257         * gnulib/aclocal-m4-deps.mk: New file.
4258         * gnulib/update-gnulib.sh: Automatically update
4259         "aclocal-m4-deps.mk".
4260
4261 2018-09-04  Tom Tromey  <tom@tromey.com>
4262
4263         * configure: Rebuild.
4264         * configure.ac: Remove multi-ice code.
4265
4266 2018-09-04  Tom Tromey  <tom@tromey.com>
4267
4268         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4269         (ada-exp.o): Update.
4270
4271 2018-09-04  Tom Tromey  <tom@tromey.com>
4272
4273         * Makefile.in (printcmd.o, target-float.o): Remove.
4274         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4275
4276 2018-09-04  Tom Tromey  <tom@tromey.com>
4277
4278         * gnulib/Makefile.in: Remove obsolete comment.
4279         * Makefile.in: Remove obsolete comment.
4280
4281 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4282
4283         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4284         line with '+'.
4285
4286 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4287
4288         * riscv-tdep.c: Add 'prologue-value.h' include.
4289         (struct riscv_unwind_cache): New struct.
4290         (riscv_debug_unwinder): New global.
4291         (riscv_scan_prologue): Update arguments, capture register details
4292         from prologue scan.
4293         (riscv_skip_prologue): Reformat arguments line, move end of
4294         prologue calculation into riscv_scan_prologue.
4295         (riscv_frame_cache): Update return type, create
4296         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4297         details.
4298         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4299         (riscv_frame_prev_register): Use the trad_frame within the
4300         riscv_unwind_cache.
4301         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4302         flag.
4303
4304 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4305
4306         * trad-frame.h (trad_frame_set_realreg): Declare.
4307         (trad_frame_set_addr): Declare.
4308         * trad-frame.c (trad_frame_set_realreg): Define new function.
4309         (trad_frame_set_addr): Define new function.
4310         (trad_frame_set_reg_realreg): Use new function.
4311         (trad_frame_set_reg_addr): Use new function.
4312
4313 2018-09-01  Keith Seitz  <keiths@redhat.com>
4314
4315         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4316         pulongest instead of "%lld".
4317         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4318         ATTRIBUTE_UNUSED.
4319
4320 2018-08-31  Tom Tromey  <tom@tromey.com>
4321
4322         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4323         variant part type.
4324
4325 2018-08-31  Pedro Alves  <palves@redhat.com>
4326
4327         * gdbarch.h: Regenerate.
4328
4329 2018-08-31  Pedro Alves  <palves@redhat.com>
4330
4331         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4332         * target.h (Hardware watchpoint interfaces): Describe
4333         continuable/steppable/non-steppable watchpoints.
4334         * gdbarch.h, gdbarch.c: Regenerate.
4335
4336 2018-08-31  Pedro Alves  <palves@redhat.com>
4337
4338         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4339         Delete.
4340         * s390-linux-nat.c
4341         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4342         * target.h (target_ops::have_continuable_watchpoint): Delete.
4343         (target_have_continuable_watchpoint): Delete.
4344         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4345         * target-delegates.c: Regenerate.
4346
4347 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4348
4349         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4350         the files present in "gnulib/import/m4/".
4351
4352 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4353
4354         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4355         c.sw, c.swsp, and c.sdsp.
4356
4357 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4358
4359         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4360         (riscv_read_misa_reg): Don't cache value read into inferior data.
4361         (riscv_new_inferior_data): Delete.
4362         (riscv_inferior_data_cleanup): Delete.
4363         (riscv_inferior_data): Delete.
4364         (riscv_invalidate_inferior_data): Delete.
4365         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4366
4367 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4368
4369         * compile/compile-cplus-types.c
4370         (compile_cplus_instance::leave_scope): Take the address of scope
4371         object.
4372         (compile_cplus_instance::convert_qualified_base): Compare quals
4373         to 0.
4374
4375 2018-08-30  Keith Seitz  <keiths@redhat.com>
4376
4377         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4378         Use "%s" and host_address_to_string instead of "%p" in printf.
4379
4380 2018-08-29  Keith Seitz  <keiths@redhat.com>
4381
4382         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4383         and compile-cplus-types.c.
4384         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4385         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4386         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4387         Declare.
4388         * compile/compile-c-support.c: Include compile-cplus.h.
4389         (load_libcompile): Templatize.
4390         (get_compile_context): "New" function.
4391         (c_get_compile_context): Use get_compile_context.
4392         (cplus_get_compile_context): New function.
4393         (cplus_push_user_expression, cplus_pop_user_expression)
4394         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4395         (cplus_compute_program): Define new structs/functions.
4396         * compile/compile-cplus-symmbols.c: New file.
4397         * compile/compile-cplus-types.c: New file.
4398         * compile/compile-cplus.h: New file.
4399         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4400         Declare.
4401         * compile/compile-object-load.c (get_out_value_type): Use
4402         strncmp_iw when comparing symbol names.
4403         (compile_object_load): Add mst_bss and mst_data.
4404         * compile/compile.c (_initialize_compile): Remove
4405         -Wno-implicit-function-declaration from `compile_args'.
4406         * compile/gcc-cp-plugin.h: New file.
4407         * NEWS: Mention C++ compile support and new debug options.
4408
4409 2018-08-29  Keith Seitz  <keiths@redhat.com>
4410
4411         * linespec.c (collect_info::add_symbol): Make virtual.
4412         (struct symbol_searcher_collect_info): New struct.
4413         (symbol_searcher::find_all_symbols): New method.
4414         * symtab.h (class symbol_searcher): New class.
4415
4416 2018-08-29  Keith Seitz  <keiths@redhat.com>
4417
4418         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4419         Change to vector of block_symbol.  Update all users.
4420         (struct collect_info) <symbols>: Likewise.
4421         (collect_info::add_symbol): Take block_symbol as argument.
4422         Update all callers.
4423         (decode_compound_collector) <m_symbols>: Change type to vector
4424         of block_symbol.  Update all users.
4425         (decode_compound_collector::operator ()): Change parameter type
4426         to block_symbol.
4427         (find_method, find_function_symbols, find_linespec_symbols)
4428         (find_label_symbols_in_block, find_label_symbols): Change symbol
4429         vectors to block_symbol vectors.
4430         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4431         block_symbol.
4432
4433 2018-08-29  Keith Seitz  <keiths@redhat.com>
4434
4435         * linespec.c (symbolp): Remove typedef and VEC definitions.
4436         (bound_minimal_symbol_d): Likewise.
4437
4438 2018-08-29  Keith Seitz  <keiths@redhat.com>
4439
4440         * linespec.c (decode_compound_collector::decode_compound_collector):
4441         Remove initialization for `m_symtabs'.
4442         (decode_compound_collector::release_symbols): Change return type
4443         to std::vector.  Update all callers.
4444         (class decode_compound_collector) <m_symbols>: Change type to
4445         std::vector.
4446         (lookup_prefix_sym): Change return type to std::vector.  Update all
4447         callers.
4448         (compare_symbols): Remove.
4449         (std_compare_symbols): Rename to `compare_symbols'.
4450         (find_method): Change `sym_classes' parameter to std::vector.
4451         Update all callers.  Use std::sort to sort sym_classes.
4452         (find_linespec_symbols): Remove cleanup.
4453
4454 2018-08-29  Keith Seitz  <keiths@redhat.com>
4455
4456         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4457         std::vector.  Update all users.
4458         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4459         (struct collect_info) <minimal_symbols>: Likewise.
4460         (compare_msymbols): Return bool.  Change parameters to const
4461         bound_minimal_symbol references.
4462         (find_method, find_function_symbols, find_linespec_symbols): Change
4463         `minsyms' parameter to std::vector.  Update all callers.
4464
4465 2018-08-29  Keith Seitz  <keiths@redhat.com>
4466
4467         * linespec.c (struct linespec) <label_symbols>: Change type to
4468         std::vector.  Update all users.
4469         (find_label_symbols_in_block): Change `result' parameter to
4470         std::vector.  Update all callers.
4471         (find_label_symbols): Return std::vector.  Update all callers.
4472
4473 2018-08-29  Keith Seitz  <keiths@redhat.com>
4474
4475         * linespec.c (struct linespec) <function_symbols>: Change type to
4476         std::vector.  Update all users.
4477         (struct collect_info) <function_symbols>: Likewise.
4478         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4479         (std_compare_symbols): New function.
4480         (find_method, find_function_symbols, find_linespec_symbols)
4481         (find_label_symbols_in_block): Change `symbols' parameter to
4482         std::vector.  Update all callers.
4483         (find_label_symbols): Likewise for `function_symbols' and
4484         `label_funcs_ret'.
4485
4486 2018-08-29  Keith Seitz  <keiths@redhat.com>
4487
4488         * linespec.c (symtab_vector_up): Define.
4489         (struct linespec) <file_symtabs>: Change type to std::vector *.
4490         Update all uses.
4491         (struct collect_info) <file_symtabs>: Likewise.
4492         (collect_symtabs_from_filename): Return symtab_vector_up.
4493         Update all callers.
4494         (decode_objc): Remove cleanup.
4495         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4496         (symtab_collector::release_symtabs): Return symtab_vector_up.
4497         Update all callers.
4498         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4499         Update all users.
4500         (collect_symtabs_from_filename, symtabs_from_filename): Return
4501         symtab_vector_up.  Update all callers.
4502
4503 2018-08-29  Tom Tromey  <tom@tromey.com>
4504
4505         * csky-tdep.c (csky_analyze_prologue): Use
4506         core_addr_to_string_nz.
4507
4508 2018-08-29  Tom Tromey  <tom@tromey.com>
4509
4510         * windows-nat.c (struct xlate_exception) <them>: Change type to
4511         DWORD.
4512         (xlate): Fix formatting.  Remove last entry.
4513         (struct xlate_exception, xlate): Comment out.
4514         (windows_nat_target::resume): Use ranged for.
4515
4516 2018-08-29  Jim Wilson  <jimw@sifive.com>
4517
4518         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4519         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4520         of NT_PRFPREG.
4521         (riscv_linux_nat_target::store_registers): Likewise.
4522
4523 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4524
4525         PR gdb/23555
4526         PR gdb/23558
4527         * gnulib/aclocal.m4: Regenerate.
4528         * gnulib/config.in: Regenerate.
4529         * gnulib/configure: Regenerate.
4530         * gnulib/import/Makefile.am: Update.
4531         * gnulib/import/Makefile.in: Update.
4532         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4533         * gnulib/import/_Noreturn.h: ... this.
4534         * gnulib/import/alloca.in.h: Update.
4535         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4536         * gnulib/import/arg-nonnull.h: ... this.
4537         * gnulib/import/assure.h: Update.
4538         * gnulib/import/at-func.c: Update.
4539         * gnulib/import/basename-lgpl.c: Update.
4540         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4541         * gnulib/import/c++defs.h: ... this.
4542         * gnulib/import/canonicalize-lgpl.c: Update.
4543         * gnulib/import/cdefs.h: Update.
4544         * gnulib/import/chdir-long.c: Update.
4545         * gnulib/import/chdir-long.h: Update.
4546         * gnulib/import/cloexec.c: Update.
4547         * gnulib/import/cloexec.h: Update.
4548         * gnulib/import/close.c: Update.
4549         * gnulib/import/closedir.c: Update.
4550         * gnulib/import/config.charset: Update.
4551         * gnulib/import/dirent-private.h: Update.
4552         * gnulib/import/dirent.in.h: Update.
4553         * gnulib/import/dirfd.c: Update.
4554         * gnulib/import/dirname-lgpl.c: Update.
4555         * gnulib/import/dirname.h: Update.
4556         * gnulib/import/dosname.h: Update.
4557         * gnulib/import/dup-safer-flag.c: Update.
4558         * gnulib/import/dup-safer.c: Update.
4559         * gnulib/import/dup.c: Update.
4560         * gnulib/import/dup2.c: Update.
4561         * gnulib/import/errno.in.h: Update.
4562         * gnulib/import/error.c: Update.
4563         * gnulib/import/error.h: Update.
4564         * gnulib/import/exitfail.c: Update.
4565         * gnulib/import/exitfail.h: Update.
4566         * gnulib/import/extra/update-copyright: Update.
4567         * gnulib/import/fchdir.c: Update.
4568         * gnulib/import/fcntl.c: Update.
4569         * gnulib/import/fcntl.in.h: Update.
4570         * gnulib/import/fd-hook.c: Update.
4571         * gnulib/import/fd-hook.h: Update.
4572         * gnulib/import/fd-safer-flag.c: Update.
4573         * gnulib/import/fd-safer.c: Update.
4574         * gnulib/import/fdopendir.c: Update.
4575         * gnulib/import/filename.h: Update.
4576         * gnulib/import/filenamecat-lgpl.c: Update.
4577         * gnulib/import/filenamecat.h: Update.
4578         * gnulib/import/flexmember.h: Update.
4579         * gnulib/import/float+.h: Update.
4580         * gnulib/import/float.c: Update.
4581         * gnulib/import/float.in.h: Update.
4582         * gnulib/import/fnmatch.c: Update.
4583         * gnulib/import/fnmatch.in.h: Update.
4584         * gnulib/import/fnmatch_loop.c: Update.
4585         * gnulib/import/fpucw.h: Update.
4586         * gnulib/import/frexp.c: Update.
4587         * gnulib/import/frexpl.c: Update.
4588         * gnulib/import/fstat.c: Update.
4589         * gnulib/import/fstatat.c: Update.
4590         * gnulib/import/getcwd-lgpl.c: Update.
4591         * gnulib/import/getcwd.c: Update.
4592         * gnulib/import/getdtablesize.c: Update.
4593         * gnulib/import/getlogin_r.c: Update.
4594         * gnulib/import/getprogname.c: Update.
4595         * gnulib/import/getprogname.h: Update.
4596         * gnulib/import/gettext.h: Update.
4597         * gnulib/import/gettimeofday.c: Update.
4598         * gnulib/import/glob-libc.h: Update.
4599         * gnulib/import/glob.c: Update.
4600         * gnulib/import/glob.in.h: Update.
4601         * gnulib/import/glob_internal.h: Update.
4602         * gnulib/import/glob_pattern_p.c: Update.
4603         * gnulib/import/globfree.c: Update.
4604         * gnulib/import/hard-locale.c: Update.
4605         * gnulib/import/hard-locale.h: Update.
4606         * gnulib/import/intprops.h: Update.
4607         * gnulib/import/inttypes.in.h: Update.
4608         * gnulib/import/isnan.c: Update.
4609         * gnulib/import/isnand-nolibm.h: Update.
4610         * gnulib/import/isnand.c: Update.
4611         * gnulib/import/isnanl-nolibm.h: Update.
4612         * gnulib/import/isnanl.c: Update.
4613         * gnulib/import/itold.c: Update.
4614         * gnulib/import/libc-config.h: Update.
4615         * gnulib/import/limits.in.h: Update.
4616         * gnulib/import/localcharset.c: Update.
4617         * gnulib/import/localcharset.h: Update.
4618         * gnulib/import/localtime-buffer.c: Update.
4619         * gnulib/import/localtime-buffer.h: Update.
4620         * gnulib/import/lstat.c: Update.
4621         * gnulib/import/m4/00gnulib.m4: Update.
4622         * gnulib/import/m4/__inline.m4: Update.
4623         * gnulib/import/m4/absolute-header.m4: Update.
4624         * gnulib/import/m4/alloca.m4: Update.
4625         * gnulib/import/m4/builtin-expect.m4: Update.
4626         * gnulib/import/m4/canonicalize.m4: Update.
4627         * gnulib/import/m4/chdir-long.m4: Update.
4628         * gnulib/import/m4/close.m4: Update.
4629         * gnulib/import/m4/closedir.m4: Update.
4630         * gnulib/import/m4/configmake.m4: Update.
4631         * gnulib/import/m4/d-ino.m4: Update.
4632         * gnulib/import/m4/d-type.m4: Update.
4633         * gnulib/import/m4/dirent_h.m4: Update.
4634         * gnulib/import/m4/dirfd.m4: Update.
4635         * gnulib/import/m4/dirname.m4: Update.
4636         * gnulib/import/m4/double-slash-root.m4: Update.
4637         * gnulib/import/m4/dup.m4: Update.
4638         * gnulib/import/m4/dup2.m4: Update.
4639         * gnulib/import/m4/eealloc.m4: Update.
4640         * gnulib/import/m4/environ.m4: Update.
4641         * gnulib/import/m4/errno_h.m4: Update.
4642         * gnulib/import/m4/error.m4: Update.
4643         * gnulib/import/m4/exponentd.m4: Update.
4644         * gnulib/import/m4/exponentl.m4: Update.
4645         * gnulib/import/m4/extensions.m4: Update.
4646         * gnulib/import/m4/extern-inline.m4: Update.
4647         * gnulib/import/m4/fchdir.m4: Update.
4648         * gnulib/import/m4/fcntl-o.m4: Update.
4649         * gnulib/import/m4/fcntl.m4: Update.
4650         * gnulib/import/m4/fcntl_h.m4: Update.
4651         * gnulib/import/m4/fdopendir.m4: Update.
4652         * gnulib/import/m4/filenamecat.m4: Update.
4653         * gnulib/import/m4/flexmember.m4: Update.
4654         * gnulib/import/m4/float_h.m4: Update.
4655         * gnulib/import/m4/fnmatch.m4: Update.
4656         * gnulib/import/m4/fnmatch_h.m4: Update.
4657         * gnulib/import/m4/fpieee.m4: Update.
4658         * gnulib/import/m4/frexp.m4: Update.
4659         * gnulib/import/m4/frexpl.m4: Update.
4660         * gnulib/import/m4/fstat.m4: Update.
4661         * gnulib/import/m4/fstatat.m4: Update.
4662         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4663         * gnulib/import/m4/getcwd-path-max.m4: Update.
4664         * gnulib/import/m4/getcwd.m4: Update.
4665         * gnulib/import/m4/getdtablesize.m4: Update.
4666         * gnulib/import/m4/getlogin.m4: Update.
4667         * gnulib/import/m4/getlogin_r.m4: Update.
4668         * gnulib/import/m4/getpagesize.m4: Update.
4669         * gnulib/import/m4/getprogname.m4: Update.
4670         * gnulib/import/m4/gettimeofday.m4: Update.
4671         * gnulib/import/m4/glibc21.m4: Update.
4672         * gnulib/import/m4/glob.m4: Update.
4673         * gnulib/import/m4/glob_h.m4: Update.
4674         * gnulib/import/m4/gnulib-cache.m4: Update.
4675         * gnulib/import/m4/gnulib-common.m4: Update.
4676         * gnulib/import/m4/gnulib-comp.m4: Update.
4677         * gnulib/import/m4/gnulib-tool.m4: Update.
4678         * gnulib/import/m4/hard-locale.m4: Update.
4679         * gnulib/import/m4/include_next.m4: Update.
4680         * gnulib/import/m4/inttypes-pri.m4: Update.
4681         * gnulib/import/m4/inttypes.m4: Update.
4682         * gnulib/import/m4/isnand.m4: Update.
4683         * gnulib/import/m4/isnanl.m4: Update.
4684         * gnulib/import/m4/largefile.m4: Update.
4685         * gnulib/import/m4/limits-h.m4: Update.
4686         * gnulib/import/m4/localcharset.m4: Update.
4687         * gnulib/import/m4/locale-fr.m4: Update.
4688         * gnulib/import/m4/locale-ja.m4: Update.
4689         * gnulib/import/m4/locale-zh.m4: Update.
4690         * gnulib/import/m4/localtime-buffer.m4: Update.
4691         * gnulib/import/m4/longlong.m4: Update.
4692         * gnulib/import/m4/lstat.m4: Update.
4693         * gnulib/import/m4/malloc.m4: Update.
4694         * gnulib/import/m4/malloca.m4: Update.
4695         * gnulib/import/m4/math_h.m4: Update.
4696         * gnulib/import/m4/mbrtowc.m4: Update.
4697         * gnulib/import/m4/mbsinit.m4: Update.
4698         * gnulib/import/m4/mbsrtowcs.m4: Update.
4699         * gnulib/import/m4/mbstate_t.m4: Update.
4700         * gnulib/import/m4/memchr.m4: Update.
4701         * gnulib/import/m4/memmem.m4: Update.
4702         * gnulib/import/m4/mempcpy.m4: Update.
4703         * gnulib/import/m4/memrchr.m4: Update.
4704         * gnulib/import/m4/mkdir.m4: Update.
4705         * gnulib/import/m4/mkstemp.m4: Update.
4706         * gnulib/import/m4/mmap-anon.m4: Update.
4707         * gnulib/import/m4/mode_t.m4: Update.
4708         * gnulib/import/m4/msvc-inval.m4: Update.
4709         * gnulib/import/m4/msvc-nothrow.m4: Update.
4710         * gnulib/import/m4/multiarch.m4: Update.
4711         * gnulib/import/m4/nocrash.m4: Update.
4712         * gnulib/import/m4/off_t.m4: Update.
4713         * gnulib/import/m4/onceonly.m4: Update.
4714         * gnulib/import/m4/open-cloexec.m4: Update.
4715         * gnulib/import/m4/open.m4: Update.
4716         * gnulib/import/m4/openat.m4: Update.
4717         * gnulib/import/m4/opendir.m4: Update.
4718         * gnulib/import/m4/pathmax.m4: Update.
4719         * gnulib/import/m4/rawmemchr.m4: Update.
4720         * gnulib/import/m4/readdir.m4: Update.
4721         * gnulib/import/m4/readlink.m4: Update.
4722         * gnulib/import/m4/realloc.m4: Update.
4723         * gnulib/import/m4/rename.m4: Update.
4724         * gnulib/import/m4/rewinddir.m4: Update.
4725         * gnulib/import/m4/rmdir.m4: Update.
4726         * gnulib/import/m4/save-cwd.m4: Update.
4727         * gnulib/import/m4/secure_getenv.m4: Update.
4728         * gnulib/import/m4/setenv.m4: Update.
4729         * gnulib/import/m4/signal_h.m4: Update.
4730         * gnulib/import/m4/ssize_t.m4: Update.
4731         * gnulib/import/m4/stat-time.m4: Update.
4732         * gnulib/import/m4/stat.m4: Update.
4733         * gnulib/import/m4/std-gnu11.m4: Update.
4734         * gnulib/import/m4/stdbool.m4: Update.
4735         * gnulib/import/m4/stddef_h.m4: Update.
4736         * gnulib/import/m4/stdint.m4: Update.
4737         * gnulib/import/m4/stdio_h.m4: Update.
4738         * gnulib/import/m4/stdlib_h.m4: Update.
4739         * gnulib/import/m4/strchrnul.m4: Update.
4740         * gnulib/import/m4/strdup.m4: Update.
4741         * gnulib/import/m4/strerror.m4: Update.
4742         * gnulib/import/m4/string_h.m4: Update.
4743         * gnulib/import/m4/strstr.m4: Update.
4744         * gnulib/import/m4/strtok_r.m4: Update.
4745         * gnulib/import/m4/sys_socket_h.m4: Update.
4746         * gnulib/import/m4/sys_stat_h.m4: Update.
4747         * gnulib/import/m4/sys_time_h.m4: Update.
4748         * gnulib/import/m4/sys_types_h.m4: Update.
4749         * gnulib/import/m4/tempname.m4: Update.
4750         * gnulib/import/m4/time_h.m4: Update.
4751         * gnulib/import/m4/unistd-safer.m4: Update.
4752         * gnulib/import/m4/unistd_h.m4: Update.
4753         * gnulib/import/m4/warn-on-use.m4: Update.
4754         * gnulib/import/m4/wchar_h.m4: Update.
4755         * gnulib/import/m4/wchar_t.m4: Update.
4756         * gnulib/import/m4/wctype_h.m4: Update.
4757         * gnulib/import/m4/wint_t.m4: Update.
4758         * gnulib/import/malloc.c: Update.
4759         * gnulib/import/malloc/scratch_buffer.h: Update.
4760         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4761         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4762         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4763         * gnulib/import/malloca.c: Update.
4764         * gnulib/import/malloca.h: Update.
4765         * gnulib/import/malloca.valgrind: Update.
4766         * gnulib/import/math.in.h: Update.
4767         * gnulib/import/mbrtowc.c: Update.
4768         * gnulib/import/mbsinit.c: Update.
4769         * gnulib/import/mbsrtowcs-impl.h: Update.
4770         * gnulib/import/mbsrtowcs-state.c: Update.
4771         * gnulib/import/mbsrtowcs.c: Update.
4772         * gnulib/import/memchr.c: Update.
4773         * gnulib/import/memmem.c: Update.
4774         * gnulib/import/mempcpy.c: Update.
4775         * gnulib/import/memrchr.c: Update.
4776         * gnulib/import/mkdir.c: Update.
4777         * gnulib/import/mkstemp.c: Update.
4778         * gnulib/import/msvc-inval.c: Update.
4779         * gnulib/import/msvc-inval.h: Update.
4780         * gnulib/import/msvc-nothrow.c: Update.
4781         * gnulib/import/msvc-nothrow.h: Update.
4782         * gnulib/import/open.c: Update.
4783         * gnulib/import/openat-die.c: Update.
4784         * gnulib/import/openat-priv.h: Update.
4785         * gnulib/import/openat-proc.c: Update.
4786         * gnulib/import/openat.c: Update.
4787         * gnulib/import/openat.h: Update.
4788         * gnulib/import/opendir.c: Update.
4789         * gnulib/import/pathmax.h: Update.
4790         * gnulib/import/pipe-safer.c: Update.
4791         * gnulib/import/rawmemchr.c: Update.
4792         * gnulib/import/readdir.c: Update.
4793         * gnulib/import/readlink.c: Update.
4794         * gnulib/import/realloc.c: Update.
4795         * gnulib/import/ref-add.sin: Update.
4796         * gnulib/import/ref-del.sin: Update.
4797         * gnulib/import/rename.c: Update.
4798         * gnulib/import/rewinddir.c: Update.
4799         * gnulib/import/rmdir.c: Update.
4800         * gnulib/import/same-inode.h: Update.
4801         * gnulib/import/save-cwd.c: Update.
4802         * gnulib/import/save-cwd.h: Update.
4803         * gnulib/import/scratch_buffer.h: Update.
4804         * gnulib/import/secure_getenv.c: Update.
4805         * gnulib/import/setenv.c: Update.
4806         * gnulib/import/signal.in.h: Update.
4807         * gnulib/import/stat-time.c: Update.
4808         * gnulib/import/stat-time.h: Update.
4809         * gnulib/import/stat-w32.c: Update.
4810         * gnulib/import/stat-w32.h: Update.
4811         * gnulib/import/stat.c: Update.
4812         * gnulib/import/stdbool.in.h: Update.
4813         * gnulib/import/stddef.in.h: Update.
4814         * gnulib/import/stdint.in.h: Update.
4815         * gnulib/import/stdio.in.h: Update.
4816         * gnulib/import/stdlib.in.h: Update.
4817         * gnulib/import/str-two-way.h: Update.
4818         * gnulib/import/strchrnul.c: Update.
4819         * gnulib/import/strdup.c: Update.
4820         * gnulib/import/streq.h: Update.
4821         * gnulib/import/strerror-override.c: Update.
4822         * gnulib/import/strerror-override.h: Update.
4823         * gnulib/import/strerror.c: Update.
4824         * gnulib/import/string.in.h: Update.
4825         * gnulib/import/stripslash.c: Update.
4826         * gnulib/import/strnlen1.c: Update.
4827         * gnulib/import/strnlen1.h: Update.
4828         * gnulib/import/strstr.c: Update.
4829         * gnulib/import/strtok_r.c: Update.
4830         * gnulib/import/sys_stat.in.h: Update.
4831         * gnulib/import/sys_time.in.h: Update.
4832         * gnulib/import/sys_types.in.h: Update.
4833         * gnulib/import/tempname.c: Update.
4834         * gnulib/import/tempname.h: Update.
4835         * gnulib/import/time.in.h: Update.
4836         * gnulib/import/unistd--.h: Update.
4837         * gnulib/import/unistd-safer.h: Update.
4838         * gnulib/import/unistd.in.h: Update.
4839         * gnulib/import/unsetenv.c: Update.
4840         * gnulib/import/verify.h: Update.
4841         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4842         * gnulib/import/wchar.in.h: Update.
4843         * gnulib/import/wctype.in.h: Update.
4844         * gnulib/import/xalloc-oversized.h: Update.
4845         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4846         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4847
4848 2018-08-16  Gary Benson <gbenson@redhat.com>
4849
4850         PR gdb/13000:
4851         * gdb/main.c (captured_main_1): Exit with nonzero status
4852         in batch mode if the last command to be executed failed.
4853         * NEWS: Mention the above.
4854
4855 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4856
4857         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4858         end of warning message.
4859
4860 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4861
4862         PR gdb/22943:
4863         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4864         (aarch64_extract_return_value): Use
4865         aapcs_is_vfp_call_or_return_candidate.
4866         (aarch64_return_in_memory): Likewise.
4867         (aarch64_store_return_value): Likewise.
4868
4869 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4870
4871         * aarch64-tdep.c
4872         (aapcs_is_vfp_call_or_return_candidate): Make static
4873         (pass_in_v_or_stack): Remove function.
4874         (pass_in_v_vfp_candidate): New function.
4875         (aarch64_push_dummy_call): Check for float register candidates.
4876
4877 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4878
4879         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4880         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4881         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4882
4883 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4884
4885         PR build/23399
4886         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4887         (struct ipa_sym_addresses): Rename to...
4888         (struct ipa_sym_addresses_common): ... this.
4889         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4890
4891 2018-08-28  Tom Tromey  <tom@tromey.com>
4892
4893         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4894         (token_fifo): Now a std::vector.
4895         (yylex, c_parse): Update.
4896         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4897         (token_fifo): Now a std::vector.
4898         (yylex, d_parse): Update.
4899         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4900         (token_fifo): Now a std::vector.
4901         (yylex, go_parse): Update.
4902
4903 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4904
4905         * parser-defs.h (struct type_stack) <elements>: Change type to
4906         std::vector<union type_stack_elt>.
4907         <depth, size>: Remove.
4908         * parse.c (parse_exp_in_context_1): Adjust.
4909         (type_stack_reserve): Remove.
4910         (check_type_stack_depth): Remove.
4911         (insert_into_type_stack): Adjust to std::vector.
4912         (insert_type): Likewise.
4913         (push_type): Likewise.
4914         (push_type_int): Likewise.
4915         (insert_type_address_space): Likewise.
4916         (pop_type): Likewise.
4917         (pop_type_int): Likewise.
4918         (pop_typelist): Likewise.
4919         (pop_type_stack): Likewise.
4920         (append_type_stack): Likewise.
4921         (push_type_stack): Likewise.
4922         (get_type_stack): Likewise.
4923         (type_stack_cleanup): Likewise.
4924         (push_typelist): Likewise.
4925         (follow_types): Likewise.
4926         (_initialize_parse): Likewise.
4927
4928 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4929
4930         * NEWS: Mention csky target.
4931
4932 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4933             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4934             Don Breazeal  <donb@codesourcery.com>
4935
4936         * csky-linux-tdep.c: New file.
4937         * csky-tdep.c: Likewise.
4938         * csky-tdep.h: Likewise.
4939         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4940         csky-tdep.o.
4941         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4942         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4943         * configure.tgt: Add csky support.
4944
4945 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4946
4947         * python/py-framefilter.c (py_print_frame): Print frame architecture
4948         when printing on an MI output.
4949
4950 2018-08-27  Tom Tromey  <tom@tromey.com>
4951
4952         PR build/23087:
4953         * configure: Rebuild.
4954         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4955
4956 2018-08-27  Tom Tromey  <tom@tromey.com>
4957
4958         * aarch64-linux-tdep.c
4959         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4960         casts to int.
4961
4962 2018-08-27  Tom Tromey  <tom@tromey.com>
4963
4964         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4965         unsigned.
4966         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4967         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4968         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4969         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4970         unsigned.
4971
4972 2018-08-27  Tom Tromey  <tom@tromey.com>
4973
4974         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4975         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4976
4977 2018-08-27  Tom Tromey  <tom@tromey.com>
4978
4979         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4980         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4981         ULONGEST_MAX.
4982         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4983         ULONGEST_MAX.
4984         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4985         ULONGEST_MAX.
4986         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4987         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4988         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4989         ULONGEST_MAX.
4990         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4991         (ppc64_linux_sigaction_tramp_frame)
4992         (ppc32_linux_sighandler_tramp_frame)
4993         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4994         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4995         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4996         * mn10300-linux-tdep.c (am33_linux_sigframe)
4997         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4998         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4999         * mips-linux-tdep.c (mips_linux_o32_sigframe)
5000         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
5001         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
5002         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
5003         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
5004         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
5005         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
5006         * microblaze-linux-tdep.c
5007         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
5008         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
5009         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
5010         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
5011         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
5012         * common/common-types.h (ULONGEST_MAX): New define.
5013         (CORE_ADDR_MAX): Fix formatting.
5014         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
5015         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
5016         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
5017         (arm_linux_rt_sigreturn_tramp_frame)
5018         (arm_eabi_linux_sigreturn_tramp_frame)
5019         (arm_eabi_linux_rt_sigreturn_tramp_frame)
5020         (thumb2_eabi_linux_sigreturn_tramp_frame)
5021         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
5022         (arm_linux_restart_syscall_tramp_frame)
5023         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
5024         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
5025         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
5026         ULONGEST_MAX.
5027         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
5028
5029 2018-08-27  Tom Tromey  <tom@tromey.com>
5030
5031         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
5032         CORE_ADDR_MAX.
5033         * mips-tdep.c (mips_deal_with_atomic_sequence)
5034         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
5035         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
5036         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
5037         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
5038         CORE_ADDR_MAX.
5039         * aarch64-tdep.c (aarch64_software_single_step): Use
5040         CORE_ADDR_MAX.
5041
5042 2018-08-27  Tom Tromey  <tom@tromey.com>
5043
5044         * linespec.c (complete_linespec_component): Add cast to "char".
5045         * completer.c (completion_tracker::build_completion_result): Add
5046         cast to "char".
5047
5048 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5049
5050         * solist.h (struct solist, struct target_so_ops): Fix
5051         indentation.
5052
5053 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5054
5055         * ada-tasks.c (ada_task_info_s): Remove typedef.
5056         (DEF_VEC_O(ada_task_info_s)): Remove.
5057         (struct ada_tasks_inferior_data): Initialize fields.
5058         <task_list>: Make an std::vector.
5059         (get_ada_tasks_inferior_data): Allocate with new.
5060         (ada_get_task_number): Adjust.
5061         (get_task_number_from_id): Likewise.
5062         (valid_task_id): Likewise.
5063         (ada_get_task_info_from_ptid): Likewise.
5064         (iterate_over_live_ada_tasks): Likewise.
5065         (add_ada_task): Likewise.
5066         (read_known_tasks): Likewise.
5067         (ada_build_task_list): Likewise.
5068         (print_ada_task_info): Likewise.
5069         (info_task): Likewise.
5070         (task_command_1): Likewise.
5071
5072 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5073
5074         * ada-lang.c (add_angle_brackets): Return std::string.
5075
5076 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5077
5078         * python/py-threadevent.c (py_get_event_thread): Initialize
5079         pythread.
5080
5081 2018-08-24  Pedro Alves  <palves@redhat.com>
5082
5083         * python/py-bpevent.c (create_breakpoint_event_object): Use
5084         copy-initialization.
5085         * python/py-continueevent.c (emit_continue_event): Use
5086         copy-initialization.
5087         * python/py-exitedevent.c (create_exited_event_object): Return a
5088         gdbpy_ref<>.
5089         (emit_exited_event): Use copy-initialization.
5090         * python/py-inferior.c (python_new_inferior)
5091         (python_inferior_deleted, add_thread_object): Use
5092         copy-initialization.
5093         * python/py-infevents.c (create_inferior_call_event_object)
5094         (create_register_changed_event_object)
5095         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5096         (emit_inferior_call_event, emit_memory_changed_event)
5097         (emit_register_changed_event): Use copy-initialization.
5098         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5099         Return a gdbpy_ref<>.
5100         (emit_new_objfile_event): Use copy-initialization.
5101         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5102         (emit_clear_objfiles_event): Use copy-initialization.
5103         * python/py-signalevent.c (create_signal_event_object): Use
5104         copy-initialization.
5105         * python/py-threadevent.c (create_thread_event_object): Use
5106         copy-initialization.
5107
5108 2018-08-24  Pedro Alves  <palves@redhat.com>
5109             Simon Marchi  <simon.marchi@ericsson.com>
5110
5111         PR gdb/23379
5112         * python/py-continueevent.c: Include "gdbthread.h".
5113         (create_continue_event_object): Add intro comment.  Add 'ptid'
5114         parameter.  Use it to find thread to pass to
5115         create_thread_event_object.
5116         (emit_continue_event): Pass PTID down to
5117         create_continue_event_object.
5118         * python/py-event.h (py_get_event_thread): Declare.
5119         (create_thread_event_object): Remove default from 'thread'
5120         parameter.
5121         * python/py-stopevent.c (create_stop_event_object): Use
5122         py_get_event_thread.
5123         * python/py-threadevent.c (get_event_thread): Rename to ...
5124         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5125         and use it to find the thread.
5126         (create_thread_event_object): Assert that THREAD isn't null.
5127         Don't find the event thread here.
5128
5129 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5130
5131         * block.h (blockrange, blockranges): New struct declarations.
5132         (struct block): Add new field named `ranges'.
5133         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5134         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5135         macros for accessing ranges in struct block.
5136         (make_blockranges): New declaration.
5137         block.c (make_blockranges): New function.
5138         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5139         for block.
5140         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5141         * blockframe.c (cache_pc_function_block): New static global.
5142         (clear_pc_function_cache): Clear cache_pc_function_block.
5143         (find_pc_partial_function): Move comment to symtab.h.  Add
5144         support for non-contiguous blocks.
5145         * cli/cli-cmds.c (block.h): Include.
5146         (print_disassembly): Handle printing of non-contiguous blocks.
5147         (disassemble_current_function): Likewise.
5148         (disassemble_command): Likewise.
5149
5150         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5151         BLOCK_START.
5152         * blockframe.c (get_pc_function_start): Likewise.
5153         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5154         (gcc_symbol_address): Likewise.
5155         * compile/compile-object-run.c (compile_object_run): Likewise.
5156         * compile/compile.c (get_expr_block_and_pc): Likewise.
5157         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5158         (func_addr_to_tail_call_list): Likewise.
5159         * findvar.c (default_read_var_value): Likewise.
5160         * inline-frame.c (inline_frame_this_id): Likewise.
5161         (skip-inline_frames): Likewise.
5162         * infcmd.c (until_next_command): Likewise.
5163         * linespec.c (convert_linespec_to_sals): Likewise.
5164         * parse.c (parse_exp_in_context_1): Likewise.
5165         * printcmd.c (build_address_symbolic): likewise.
5166         (info_address_command): Likewise.
5167         symtab.c (find_function_start_sal): Likewise.
5168         (skip_prologue_sal): Likewise.
5169         (find_function_alias_target): Likewise.
5170         (find_gnu_ifunc): Likewise.
5171         * stack.c (find_frame_funname): Likewise.
5172         * symtab.c (fixup_symbol_section): Likewise.
5173         (find_function_start_sal): Likewise.
5174         (skip_prologue_sal): Likewsie.
5175         (find_function_alias_target): Likewise.
5176         (find_gnu_ifunc): Likewise.
5177         * tracepoint.c (info_scope_command): Likewise.
5178         * value.c (value_fn_field): Likewise.
5179
5180         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5181         in place of find_pc_partial_function.
5182         * blockframe.c (find_function_entry_range_from_pc): New function.
5183         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5184         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5185         for each range in a block.
5186
5187
5188 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5189
5190         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5191         incrementation.
5192
5193 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5194
5195         * solib-svr4.c (read_program_headers_from_bfd): Return
5196         gdb::optional<gdb::byte_vector>.
5197         (svr4_exec_displacement): Adjust.
5198
5199 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5200
5201         * solib-svr4.c (read_program_header): Return
5202         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5203         (find_program_interpreter): Return
5204         gdb::optional<gdb::byte_vector>.
5205         (scan_dyntag_auxv): Adjust.
5206         (enable_break): Adjust.
5207         (svr4_exec_displacement): Adjust.
5208
5209 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5210
5211         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5212         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5213
5214 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5215
5216         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5217         string_vprintf.
5218         * guile/scm-utils.c (gdbscm_printf): Likewise.
5219         * serial.c (serial_printf): Likewise.
5220         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5221
5222 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5223
5224         * stack.c (print_frame): Print frame architecture when printing on
5225         an MI output.
5226         * NEWS: Mention new "arch" attribute in frame output.
5227
5228 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5229
5230         * arch/aarch64.h (aarch64_regnum): Update comment.
5231
5232 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5233
5234         * NEWS: Add SVE to 8.2 section.
5235
5236 2018-08-21  Pedro Alves  <palves@redhat.com>
5237
5238         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5239         out from gdbscm_parse_function_args.
5240         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5241         gdbscm_parse_function_args_1.
5242
5243 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5244
5245         PR gdb/17816
5246         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5247         operator.
5248
5249 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5250
5251         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5252
5253 2018-08-19  Michael Spang  <spang@google.com>
5254
5255         PR gdb/11786
5256         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5257         for PT_TLS segments.
5258
5259 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5260
5261         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5262         dwarf_variable_value.
5263         * dwarf2-frame.c (class dwarf_expr_executor):
5264         Add override for dwarf_variable_value.
5265         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5266         (class symbol_needs_eval_context): Likewise.
5267         (indirect_synthetic_pointer): Add forward declaration.
5268         (sect_variable_value): New function.
5269         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5270         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5271         for DW_OP_GNU_variable_value.
5272
5273 2018-08-16  Tom Tromey  <tom@tromey.com>
5274
5275         * top.c (read_command_file): Update.
5276         (command_line_input): Remove "repeat" argument.
5277         * ada-lang.c (get_selections): Update.
5278         * linespec.c (decode_line_2): Update.
5279         * defs.h (command_line_input): Remove argument.
5280         * cli/cli-script.c (read_next_line): Update.
5281         * python/py-gdb-readline.c: Update.
5282
5283 2018-08-17  Tom Tromey  <tom@tromey.com>
5284
5285         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5286         command_line_input.
5287
5288 2018-08-15  Tom Tromey  <tom@tromey.com>
5289
5290         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5291
5292 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5293
5294         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5295         If used, use find_pc_partial_function to find address range
5296         to disassemble.
5297         * mi/mi-main.c (mi_cmd_list_features): Report
5298         "data-disassemble-a-option" feature.
5299         * NEWS: Mention new -data-disassemble option -a.
5300
5301 2018-08-13  Tom Tromey  <tom@tromey.com>
5302
5303         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5304
5305 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5306
5307         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5308         (aarch64_linux_collect_sve_regset): Likewise.
5309         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5310         * regcache.h (regcache_map_entry_size): New function.
5311
5312 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5313
5314         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5315         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5316         (SVE_HEADER_VL_LENGTH): Likewise.
5317         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5318         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5319         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5320         (SVE_HEADER_SIZE_OFFSET): Likewise.
5321         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5322         (SVE_HEADER_VL_OFFSET): Likewise.
5323         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5324         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5325         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5326         (SVE_HEADER_SIZE): Likewise.
5327         (aarch64_linux_core_read_vq): Add function.
5328         (aarch64_linux_core_read_description): Check for SVE section.
5329
5330 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5331
5332         * aarch64-fbsd-tdep.c
5333         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5334         collect_size.
5335         * aarch64-linux-tdep.c
5336         (aarch64_linux_iterate_over_regset_sections): Likewise.
5337         * alpha-linux-tdep.c
5338         (alpha_linux_iterate_over_regset_sections):
5339         * alpha-nbsd-tdep.c
5340         (alphanbsd_iterate_over_regset_sections): Likewise.
5341         * amd64-fbsd-tdep.c
5342         (amd64fbsd_iterate_over_regset_sections): Likewise.
5343         * amd64-linux-tdep.c
5344         (amd64_linux_iterate_over_regset_sections): Likewise.
5345         * arm-bsd-tdep.c
5346         (armbsd_iterate_over_regset_sections): Likewise.
5347         * arm-fbsd-tdep.c
5348         (arm_fbsd_iterate_over_regset_sections): Likewise.
5349         * arm-linux-tdep.c
5350         (arm_linux_iterate_over_regset_sections): Likewise.
5351         * corelow.c (get_core_registers_cb): Likewise.
5352         (core_target::fetch_registers): Likewise.
5353         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5354         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5355         * gdbarch.h (void): Regenerate.
5356         * gdbarch.sh: Add supply_size and collect_size.
5357         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5358         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5359         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5360         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5361         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5362         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5363         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5364         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5365         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5366         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5367         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5368         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5369         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5370         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5371         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5372         Likewise.
5373         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5374         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5375         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5376         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5377         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5378         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5379         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5380         Likewise.
5381         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5382         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5383         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5384         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5385         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5386         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5387         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5388         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5389
5390 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5391
5392         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5393         with string_printf.
5394
5395 2018-08-10  Keith Seitz  <keiths@redhat.com>
5396
5397         * compile/compile-c-support.c (add_code_header, add_code_footer):
5398         Move into policy class.
5399         (c_push_user_expression, pop_user_expression_nop)
5400         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5401         (compile_program): New host class.
5402         (c_compile_program): New typedef.
5403         (c_compute_porgram): Use c_compile_program.
5404
5405 2018-08-10  Keith Seitz  <keiths@redhat.com>
5406
5407         * compile/compile-internal.h (compile_instance::~compile_instance):
5408         Remove calls to htab_delete.
5409         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5410         * compile.c (compile_instance::compile_instance): Initialize
5411         htab unique pointers.
5412         (compile_instance::get_cached_type, compile_instance::insert_type)
5413         (compile_instance::error_symbol_once): Update for unique_ptr.
5414
5415 2018-08-10  Keith Seitz  <keiths@redhat.com>
5416
5417         * compile/compile-c-symbols.c (struct symbol_error)
5418         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5419         (compile_instance::insert_symbol_error)
5420         (compile_instance::error_symbol_once): Move to ...
5421         * compile/compile.c: ... here.
5422
5423 2018-08-10  Keith Seitz  <keiths@redhat.com>
5424
5425         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5426         instead of `new_compile_instance'.
5427         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5428         Update description.
5429         If the symbol error map is not initialized, create it.
5430         (generate_c_for_for_one_symbol): Do not check/initialize
5431         the symbol error map.
5432         * compile/compile-c-types.c (compile_c_instance): Make a class.
5433         Update all callers.
5434         (compile_instance::compile_instance): Initialize the type cache.
5435         (get_cached_type): New function.
5436         (insert_type): Update description.
5437         (compile_c_instance::m_default_cflags): Define.
5438         (convert_type): Update description.  Use get_cached_type.
5439         (delete_instance): Moved to destructor.
5440         (new_compile_instance): Moved to constructor.
5441         * compile/compile-c.h (compile_c_instance): Make class inheriting
5442         from compile_instance.
5443         <base>: Remove field.
5444         <type_map, symbol_err_map>: Move to base class.
5445         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5446         * compile/compile-internal.h (compile_instance): Make class.
5447         <type_map_t, symbol_err_map_t>: Define.
5448         <fe>: Rename to `m_gcc_fe'.
5449         <scope, block, gcc_target_options>: Add `m_' prefix.
5450         <m_type_map, m_symbol_err_map>: New fields, moved from
5451         compile_c_instance.
5452         <destroy>: Remove.
5453         (convert_type, new_compile_instance): Remove.
5454         * compile/compile.c (cleanup_compile_instance): Remove.
5455         (compile_to_object): Use unique_ptr to eliminate cleanups.
5456         (compile_instance::set_print_callback, compile_instance::version)
5457         (compile_instance::set_verbose)
5458         (compile_instance::set_driver_filename)
5459         (compile_instance::set_triplet_regexp)
5460         (compile_instance::set_arguments)
5461         (compile_instance::set_source_file)
5462         (compile_instance::compile): Define.
5463
5464 2018-08-10  Keith Seitz  <keiths@redhat.com>
5465
5466         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5467         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5468         gcc-c-fe.def to define C plugin.
5469         (delete_instance): Delete `c_plugin'.
5470         (new_compile_instance): Initialize `c_plugin'.
5471         * compile/compile-c.h: Include gcc_c_plugin.h.
5472         (struct compile_c_instance) <c_plugin>: New member.
5473         * gcc-c-plugin.h: New file.
5474         Update all callers with API change.
5475
5476 2018-08-10  Keith Seitz  <keiths@redhat.com>
5477
5478         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5479         (HFILES_NO_SRCDIR): ... to here.
5480         Add compile-internal.h and compile-c.h.
5481         * compile/compile-c-support.c: Include compile-c.h.
5482         * compile/compile-c-symbols.c: Include compile-c.h.
5483         (generate_c_for_variable_locations): Update comment.
5484         * compile/compile-c-types.c: Include compile-c.h.
5485         * compile/compile-c.h: New file -- moved C language declarations
5486         from other files here.
5487         * compile/compile-internal.h: Do not include hashtab.h or
5488         common/enum-flags.h.
5489         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5490         (gcc_convert_symbol, gcc_symbol_address)
5491         (generate_c_for_variable_locations, c_get_mode_for_size)
5492         (c_get_range_decl_name): Definitions moved to compile-c.h.
5493         * compile/compile-loc2c.c: Include compile-c.h.
5494
5495 2018-08-10  Keith Seitz  <keiths@redhat.com>
5496
5497         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5498         (c_symbol_substitution_name): ... this.
5499         Update all callers.
5500
5501 2018-08-10  Keith Seitz  <keiths@redhat.com>
5502
5503         * compile/compile-c-support.c (c_compute_program): Use
5504         unique_xmalloc_ptr to eliminate cleanup.
5505         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5506         Return a unique_xmalloc_ptr and eliminate cleanup.
5507         * compile/compile-internal.h (generate_c_for_variable_locations):
5508         Return unique_xmalloc_ptr and update description.
5509
5510 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5511
5512         * corelow.c (core_target::get_core_register_section): Rename
5513         min_size to section_min_size.
5514
5515 2018-08-09  Jim Wilson  <jimw@sifive.com>
5516
5517         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5518         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5519         * NEWS: Mention new GNU/Linux RISC-V target.
5520         * configure.host: Add riscv*-*-linux*.
5521         * configure.nat: Add riscv*.
5522         * configure.tgt: Add riscv*-*-linux*.
5523         * riscv-linux-nat.c: New file.
5524         * riscv-linux-tdep.c: New file.
5525
5526 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5527
5528         * infrun.c (resume): Make static, add forward declaration.
5529         (proceed): Update header comment.
5530         * infrun.h (resume): Delete declaration.
5531
5532 2018-08-09  Tom Tromey  <tom@tromey.com>
5533
5534         * riscv-tdep.h: Minor formatting fixes.
5535
5536 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5537
5538         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5539         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5540         (test_mkdir_recursive): Likewise.
5541         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5542
5543 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5544
5545         * valarith.c (value_subscripted_rvalue): If an array is not in
5546         memory, and we don't know the upper bound, then we can't know that
5547         the requested element exists or not.
5548
5549 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5550
5551         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5552         (target_options_to_string): Add comment.
5553
5554 2018-08-08  Tom Tromey  <tom@tromey.com>
5555
5556         * unittests/scoped_mmap-selftests.c: Check result of "write".
5557
5558 2018-08-08  Jim Wilson  <jimw@sifive.com>
5559
5560         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5561         (decode_register_index_short): New.
5562         (decode_j_type_insn, decode_cj_type_insn): New.
5563         (decode_b_type_insn, decode_cb_type_insn): New.
5564         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5565         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5566         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5567         is_c_sw_insn instead of is_sw_insn.
5568         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5569         (riscv_software_single_step): New.
5570         * riscv-tdep.h (riscv_software_single_step): Declare.
5571
5572         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5573         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5574
5575 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5576
5577         PR gdb/18050:
5578         * target.c (dispose_inferior): Don't dispose of inferiors that are
5579         already killed.
5580
5581 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5582
5583         * remote.c (remote_target::download_tracepoint): Change char* to
5584         const char*.
5585
5586 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5587
5588         * target.h (target_options_to_string): Return an std::string.
5589         * target.c (str_comma_list_concat_elem): Return void, use
5590         std::string.
5591         (do_option): Likewise.
5592         (target_options_to_string): Return an std::string.
5593         * linux-nat.c (linux_nat_target::wait): Adjust.
5594         * target-debug.h (target_debug_print_options): Adjust.
5595
5596 2018-08-07  Tom Tromey  <tom@tromey.com>
5597
5598         * Makefile.in (CPPFLAGS): New variable.
5599         (INTERNAL_CPPFLAGS): Use it.
5600
5601 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5602
5603         * NEWS: Mention the index cache.
5604
5605 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5606
5607         * common/pathstuff.h (get_standard_cache_dir): New.
5608         * common/pathstuff.c (get_standard_cache_dir): New.
5609         * build-id.h (build_id_to_string): New.
5610         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5611         DEBUG_STR_SUFFIX): Move to here.
5612         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5613         DEBUG_STR_SUFFIX): Move from there.
5614         (write_psymtabs_to_index): Make non-static, add basename
5615         parameter.  Write to temporary files, rename when done.
5616         (save_gdb_index_command): Adjust call to
5617         write_psymtabs_to_index.
5618         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5619         field.
5620         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5621         (get_gdb_index_contents_from_cache): New.
5622         (get_gdb_index_contents_from_cache_dwz): New.
5623         (dwarf2_initialize_objfile): Read index from cache.
5624         (dwarf2_build_psymtabs): Save to index.
5625         * dwarf-index-cache.h: New file.
5626         * dwarf-index-cache.c: New file.
5627         * dwarf-index-write.h: New file.
5628
5629 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5630
5631         * gnulib/aclocal.m4: Re-generate.
5632         * gnulib/config.in: Re-generate.
5633         * gnulib/configure: Re-generate.
5634         * gnulib/import/Makefile.am: Re-generate.
5635         * gnulib/import/Makefile.in: Re-generate.
5636         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5637         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5638         * gnulib/import/m4/mkdir.m4: New file.
5639         * gnulib/import/mkdir.c: New file.
5640         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5641         module.
5642
5643 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5644
5645         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5646         * common/scoped_mmap.c: New file.
5647         * common/scoped_mmap.h (destroy): New method.
5648         (~scoped_mmap, reset): Use destroy.
5649         (scoped_mmap): New move constructor.
5650         (mmap_file): New declaration.
5651         * unittests/scoped_mmap-selftests.c (test_normal,
5652         test_invalid_filename, run_tests): New functions.
5653         (_initialize_scoped_mmap_selftests): Register selftest.
5654
5655 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5656
5657         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5658         (read_gdb_index_from_buffer): ... this.  Remove section
5659         parameter, add buffer parameter.
5660         (get_gdb_index_contents_ftype,
5661         get_gdb_index_contents_dwz_ftype): New typedefs.
5662         (dwarf2_read_gdb_index): Add callback parameters to get the
5663         index contents.
5664         (get_gdb_index_contents_from_section): New.
5665         (dwarf2_initialize_objfile): Update call to
5666         dwarf2_read_gdb_index.
5667
5668 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5669
5670         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5671         (gdb_open_cloexec): Likewise.
5672         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5673         (commandline_from_pid): Likewise.
5674         (linux_xfer_osdata_threads): Likewise.
5675         (linux_xfer_osdata_fds): Likewise.
5676         * ada-lang.c (is_package_name): Likewise.
5677         * auxv.c (procfs_xfer_auxv): Likewise.
5678         * breakpoint.c (print_one_breakpoint_location): Use
5679         uiout::field_fmt.
5680         (print_one_catch_solib): Use string_printf.
5681         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5682         (add_pe_forwarded_sym): Likewise.
5683         * dwarf2read.c (create_type_unit_group): Likewise.
5684         (build_error_marker_type): Likewise.
5685         * infcall.c (get_function_name): Likewise.
5686         * valprint.c (print_converted_chars_to_obstack): Likewise.
5687         * xtensa-tdep.c (xtensa_register_type): Likewise.
5688
5689 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5690
5691         * remote.c (remote_target::download_tracepoint): Fix format
5692         string errors.
5693
5694 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5695
5696         * tracefile.c: Include common/byte-vector.h.
5697         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5698         with trace_regblock_size if needed.  Update uses of buf.
5699
5700 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5701
5702         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5703         std::vector<unsigned char>.
5704         * tracepoint.c (collection_list::collection_list): Remove
5705         m_regs_mask initializer from initializer list.  Resize
5706         m_regs_mask using the largest remote register number.
5707         (collection_list::add_remote_register): Remove size check on
5708         m_regs_mask.  Use at to access element.
5709         (collection_list::stringify): Change type of temp_buf to
5710         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5711         stringify the register mask.  Use pack_hex_byte for the register
5712         mask.
5713
5714 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5715
5716         * tracepoint.h (class collection_list) <add_register>: Remove.
5717         <add_remote_register, add_ax_registers, add_local_register>:
5718         Declare.
5719         <add_memrange>: Add scope parameter.
5720         * tracepoint.c (encode_actions_1): Likewise.
5721         (collection_list::add_register): Rename to ...
5722         (collection_list::add_remote_register): ... this.  Update
5723         comment.
5724         (collection_list::add_ax_registers, add_local_register): New
5725         methods.
5726         (collection_list::add_memrange): Add scope parameter.  Call
5727         add_local_register instead of add_register.
5728         (finalize_tracepoint_aexpr): New function.
5729         (collection_list::collect_symbol): Update calls to add_memrange.
5730         Call add_local_register instead of add_register.  Call
5731         add_ax_registers.  Call finalize_tracepoint_aexpr.
5732         (encode_actions_1): Get remote regnos for $reg action.  Call
5733         add_remote_register, add_ax_registers, and add_local_register.
5734         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5735         (validate_actionline): Call finalize_tracepoint_aexpr.
5736
5737 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5738
5739         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5740         Replace array buf with gdb::char_vector buf, of size
5741         get_remote_packet_size ().  Replace references to buf and
5742         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5743         and xsnprintf with snprintf.  Raise errors if the buffer is too
5744         small.
5745
5746 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5747
5748         * remote.c (remote_target::download_tracepoint): Fix the has_more
5749         predicate in the QTDP action list iteration.
5750
5751 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5752
5753         * remote.c (remote_target::download_tracepoint): Fix indentation
5754         in for block.
5755
5756 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5757
5758         * proc-api.c (_initialize_proc_api): Remove c, unused.
5759         * procfs.c (procfs_init_inferior): Remove signals, unused.
5760         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5761         unused.
5762
5763 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5764             Andrew Burgess  <andrew.burgess@embecosm.com>
5765
5766         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5767         'W_STOPCODE (0)' as this could be ambiguous.
5768
5769 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5770
5771         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5772         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5773         "ai_socktype").
5774
5775 2018-08-02  Tom Tromey  <tom@tromey.com>
5776
5777         PR symtab/16842.
5778         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5779         symbols.
5780         (process_structure_scope): Likewise.
5781
5782 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5783
5784         PR gdb/22629:
5785         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5786         kill inferior.
5787
5788 2018-08-02  Tom Tromey  <tom@tromey.com>
5789
5790         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5791         (darwin_suspend_inferior, darwin_resume_inferior)
5792         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5793         (darwin_check_new_threads): Check result of get_darwin_inferior.
5794
5795 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5796
5797         GDB 8.1.1 released.
5798
5799 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5800
5801         * varobj.c (varobj_get_path_expr_parent): Report an error if
5802         parent is a dynamic varobj.
5803
5804 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5805
5806         * gnulib/aclocal.m4: Re-generate.
5807         * gnulib/config.in: Re-generate.
5808         * gnulib/configure: Re-generate.
5809         * gnulib/import/Makefile.in: Re-generate.
5810         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5811         * gnulib/import/m4/onceonly.m4: Re-generate.
5812
5813 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5814
5815         * target-descriptions.c (struct xml_test_tdesc): New.
5816         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5817         (record_xml_tdesc): Update.
5818         (maintenance_check_xml_descriptions): Update.
5819         * target-descriptions.h (record_xml_tdesc): Update comment.
5820
5821 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5822
5823         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5824         checking array bounds are defined.
5825
5826 2018-07-30  Tom Tromey  <tom@tromey.com>
5827
5828         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5829         irreflexivity violation.
5830
5831 2018-07-30  Tom Tromey  <tom@tromey.com>
5832
5833         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5834         * value.c (unpack_long): Remove lint code.
5835         * valops.c (value_ind): Remove lint code.
5836         * valarith.c (value_x_binop, value_x_unop, value_equal)
5837         (value_pos): Remove lint code.
5838
5839 2018-07-28  Tom de Vries  <tdevries@suse.de>
5840
5841         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5842         with undefined upper bound as <optimized out>.
5843
5844 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5845
5846         * gcore.in: Rename variable "name" to "prefix".  Expand
5847         "usage" text.
5848
5849 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5850
5851         * windows-nat.c (windows_nat_target::create_inferior): Update to
5852         call close() in global namespace.
5853
5854 2018-07-26  Tom Tromey  <tom@tromey.com>
5855
5856         * dwarf-index-write.c (add_address_entry): Don't add objfile
5857         offsets.
5858         * dbxread.c (find_stab_function): Rename from
5859         find_stab_function_addr.  Return a bound_minimal_symbol.
5860         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5861         Don't add objfile offsets.
5862         (end_psymtab): Use raw_text_low, raw_text_high,
5863         MSYMBOL_VALUE_RAW_ADDRESS.
5864         (read_ofile_symtab): Update.
5865         (process_one_symbol): Update.
5866         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5867         offsets.
5868         (dw2_relocate): Remove.
5869         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5870         searching addrmap.
5871         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5872         Update.
5873         (process_psymtab_comp_unit_reader, add_partial_symbol)
5874         (add_partial_subprogram, dwarf2_ranges_read): Update.
5875         (load_partial_dies): Update.
5876         (add_address_entry): Don't add objfile offsets.
5877         (dwarf2_build_include_psymtabs): Update.
5878         (create_addrmap_from_aranges): Don't add objfile offsets.
5879         (dw2_find_pc_sect_compunit_symtab): Update.
5880         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5881         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5882         Update.
5883         (parse_partial_symbols): Don't add objfile offsets.  Use
5884         raw_text_low, raw_text_high.  Update.
5885         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5886         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5887         or call 'relocate' quick function.  Clear psymbol_map.
5888         * psympriv.h (struct partial_symbol) <address>: Add section
5889         offset.
5890         <set_unrelocated_address>: Rename from set_address.
5891         <raw_text_low, raw_text_high>: New methods.
5892         <text_low, text_high>: Add objfile parameter.
5893         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5894         set_unrelocated_address.
5895         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5896         (find_pc_psymbol): Update.
5897         (fixup_psymbol_section, relocate_psymtabs): Remove.
5898         (dump_psymtab, psym_functions): Update.
5899         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5900         parameter.
5901         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5902         (start_psymtab_common): Update.
5903         * symfile-debug.c (debug_qf_relocate): Remove.
5904         (debug_sym_quick_functions): Update.
5905         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5906         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5907         Update.
5908
5909 2018-07-26  Tom Tromey  <tromey@redhat.com>
5910
5911         * dbxread.c (end_psymtab): Use text_high_valid and
5912         text_low_valid.
5913         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5914         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5915         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5916         Update comment.
5917         <text_low_valid, text_high_valid>: New fields.
5918         <set_text_low, set_text_high>: Update.
5919         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5920
5921 2018-07-26  Tom Tromey  <tom@tromey.com>
5922
5923         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5924         Update.
5925         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5926         textlow and texthigh fields.
5927         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5928         Update.
5929         * mdebugread.c (parse_lines, parse_partial_symbols)
5930         (psymtab_to_symtab_1): Update.
5931         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5932         Rename fields.  Update comment.  Now private.
5933         <text_low, text_high, set_text_low, set_text_high>: New methods.
5934         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5935         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5936         (start_psymtab_common, maintenance_info_psymtabs)
5937         (maintenance_check_psymtabs): Update.
5938         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5939         texthigh fields.
5940         (scan_xcoff_symtab): Update.
5941
5942 2018-07-26  Tom Tromey  <tromey@redhat.com>
5943
5944         * psympriv.h (struct partial_symbol) <unrelocated_address,
5945         address, set_address>: New methods.
5946         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5947         (fixup_psymbol_section, relocate_psymtabs): Update.
5948         (print_partial_symbols): Add 'objfile' parameter.  Update.
5949         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5950         Update.
5951
5952 2018-07-26  Tom Tromey  <tom@tromey.com>
5953
5954         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5955         (debug_names::write_psymbols): Update.
5956         * psympriv.h (struct partial_symbol): Derive from
5957         general_symbol_info.
5958         <obj_section>: New method.
5959         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5960         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5961         (find_pc_sect_psymbol, fixup_psymbol_section)
5962         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5963         (print_partial_symbols, recursively_search_psymtabs)
5964         (compare_psymbols, psymbol_hash, psymbol_compare)
5965         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5966         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5967
5968 2018-07-26  Tom Tromey  <tromey@redhat.com>
5969
5970         * dbxread.c (end_psymtab): Remove dead code.
5971
5972 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5973
5974         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5975         DWARF unwinders are disabled.
5976         * dwarf2-frame.c: Add dwarf2read.h include.
5977         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5978         disabled.
5979         (dwarf2_frame_unwinders_enabled_p): Define.
5980         (show_dwarf_unwinders_enabled_p): New function.
5981         (_initialize_dwarf2_frame): Register switch to control DWARF
5982         unwinder use.
5983         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5984         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5985         (show_dwarf_cmdlist): Remove static keyword.
5986         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5987         (show_dwarf_cmdlist): Declare.
5988         * NEWS: Document new feature.
5989
5990 2018-07-26  Tom de Vries  <tdevries@suse.de>
5991
5992         PR breakpoints/23366
5993         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5994
5995 2018-07-26  Tom de Vries  <tdevries@suse.de>
5996
5997         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5998         DW_AT_count can't be translated to a dynamic prop.
5999
6000 2018-07-25  Tom de Vries  <tdevries@suse.de>
6001
6002         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
6003         try/catch.
6004
6005 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
6006
6007         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
6008
6009 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
6010
6011         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
6012
6013 2018-07-24  Keith Seitz  <keiths@redhat.comt
6014
6015         PR symtab/23010
6016         * dwarf2read.c (dw2_add_symbol_to_list): New function.
6017         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
6018         instead of add_symbol_to_list.
6019         (read_file_scope): Call prepare_one_comp_unit before reading
6020         any other DIEs.
6021
6022 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
6023
6024         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
6025
6026 2018-07-24  Tom Tromey  <tom@tromey.com>
6027
6028         * utils.c (malloc, realloc, free): Don't declare.
6029         * configure, config.in: Rebuild.
6030         * configure.ac: Don't check for declarations of free, malloc, or
6031         realloc.
6032
6033 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6034
6035         * aarch64-linux-nat.c
6036         (aarch64_linux_nat_target::stopped_data_address): Remove unused
6037         variable.
6038         * arm-linux-nat.c (fetch_regs): Likewise.
6039         (store_regs): Likewise.
6040         (fetch_vfp_regs): Likewise.
6041         (store_vfp_regs): Likewise.
6042         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
6043         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
6044         (arm_linux_nat_target::insert_watchpoint): Likewise.
6045         (arm_linux_nat_target::remove_watchpoint): Likewise.
6046         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6047         Likewise.
6048         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6049         Likewise.
6050         * ppc-linux-nat.c (fetch_register): Likewise.
6051         (fetch_all_gp_regs): Likewise.
6052         (fetch_ppc_registers): Likewise.
6053         (store_all_gp_regs): Likewise.
6054         (store_ppc_registers): Likewise.
6055         (hwdebug_insert_point): Likewise.
6056         (can_use_watchpoint_cond_accel): Likewise.
6057         * remote-sim.c (gdb_os_write_stdout): Likewise.
6058
6059 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6060             Tom Tromey  <tom@tromey.com>
6061
6062         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6063         test for it.
6064         * configure: Rebuild.
6065
6066 2018-07-22  Tom Tromey  <tom@tromey.com>
6067
6068         * regformats/regdat.sh: Define xmltarget_${name} inside
6069         #ifndef IN_PROCESS_AGENT.
6070
6071 2018-07-22  Tom Tromey  <tom@tromey.com>
6072
6073         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6074
6075 2018-07-22  Tom Tromey  <tom@tromey.com>
6076
6077         * symfile.c (reread_symbols): Notify iter, not objfile.
6078
6079 2018-07-22  Tom Tromey  <tom@tromey.com>
6080
6081         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6082         Use arch_ops.
6083         (ravenscar_thread_target::prepare_to_store): Likewise.
6084
6085 2018-07-22  Tom Tromey  <tom@tromey.com>
6086
6087         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6088         unused variable.  Call value_fetch_lazy when needed.
6089         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6090         Remove unused variable.  Call value_fetch_lazy when needed.
6091
6092 2018-07-22  Tom Tromey  <tom@tromey.com>
6093
6094         * m32c-tdep.c (mark_dma): Return void.
6095         (make_regs): Remove unused declarations.
6096
6097 2018-07-22  Tom Tromey  <tom@tromey.com>
6098
6099         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6100         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6101         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6102         bkscm_get_valid_block_smob_arg_unsafe for effect.
6103
6104 2018-07-22  Tom Tromey  <tom@tromey.com>
6105
6106         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6107         value_type.
6108
6109 2018-07-22  Tom Tromey  <tom@tromey.com>
6110
6111         * windows-nat.c (saved_context): Conditionally define.
6112         * remote.c (remote_target::remote_btrace_maybe_reopen):
6113         Conditionally declare "warned".
6114         * inflow.c (sigquit_ours): Conditionally define.
6115         (new_tty): Move "tty" declaration inside #if.
6116         * guile/guile.c (guile_datadir): Conditionally define.
6117         * charset.c (set_be_le_names): Move some declarations inside #if.
6118         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6119         #if.
6120         (parse_xml_btrace_conf): Likewise.
6121
6122 2018-07-22  Tom Tromey  <tom@tromey.com>
6123
6124         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6125
6126 2018-07-22  Tom Tromey  <tom@tromey.com>
6127
6128         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6129         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6130         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6131         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6132         * stack.c (frame_apply_level_command): Remove unused variable.
6133         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6134         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6135         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6136         unused variable.
6137         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6138         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6139         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6140         variable.
6141         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6142         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6143         variable.
6144         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6145         Remove unused variable.
6146         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6147         variable.
6148         * common/tdesc.c (print_xml_feature::visit): Remove unused
6149         variable.
6150         * compile/compile-object-load.c (store_regs): Remove unused
6151         variables.
6152         * complaints.c (clear_complaints): Remove unused variable.
6153         * corelow.c (core_target_open): Remove unused variable.
6154         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6155         variable.
6156         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6157         variable.
6158         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6159         variable.
6160         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6161         variable.
6162         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6163         variable.
6164         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6165         variable.
6166         * ia64-tdep.c (examine_prologue): Remove unused variable.
6167         * infcall.c (run_inferior_call): Remove unused variable.
6168         * inferior.c (exit_inferior): Remove unused variable.
6169         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6170         * linespec.c (decode_line_2): Remove unused variable.
6171         * linux-nat.c (super_close): Remove.
6172         * linux-tdep.c (linux_info_proc): Remove unused variable.
6173         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6174         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6175         Remove unused variable.
6176         * parse.c (find_minsym_type_and_address): Remove unused variable.
6177         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6178         variable.
6179         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6180         variable.
6181         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6182         variables.
6183         * record-btrace.c (record_btrace_target::store_registers): Remove
6184         unused variable.
6185         (cmd_show_record_btrace_cpu): Remove unused variable.
6186         * riscv-tdep.c (riscv_register_reggroup_p)
6187         (riscv_push_dummy_call, riscv_return_value): Remove unused
6188         variable.
6189         * rust-exp.y (literal): Remove unused variable.
6190         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6191         unused variable.
6192         <STRUCTOP_ANONYMOUS>: Likewise.
6193         * s390-linux-tdep.c (s390_linux_init_abi_31)
6194         (s390_linux_init_abi_64): Remove unused variable.
6195         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6196         (file_select_thread, net_windows_open, _initialize_ser_windows):
6197         Remove unused variables.
6198         * symtab.c (find_pc_sect_line): Remove unused variable.
6199         * target-memory.c (compute_garbled_blocks): Remove unused
6200         variable.
6201         (target_write_memory_blocks): Remove unused variable.
6202         * target.c (target_stack::unpush): Remove unused variables.
6203         * tracepoint.c (start_tracing, all_tracepoint_actions)
6204         (merge_uploaded_trace_state_variables)
6205         (print_one_static_tracepoint_marker): Remove unused variable.
6206         * unittests/basic_string_view/element_access/char/1.cc (test01):
6207         Remove unused variable.
6208         * windows-nat.c (windows_continue, windows_add_all_dlls)
6209         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6210         Remove unused variables.
6211
6212 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6213
6214         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6215         attr_profile in HAVE_ELF.
6216         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6217         HAVE_ELF.
6218
6219 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6220
6221         * frame.c (frame_register_unwind): Change parameter name.
6222         (frame_unwind_register): Likewise.
6223         (frame_unwind_register_value): Likewise.
6224         (frame_unwind_register_signed): Likewise.
6225         (frame_unwind_register_unsigned): Likewise.
6226         * frame.h (frame_register_unwind): Likewise.
6227         (frame_unwind_register): Likewise.
6228         (frame_unwind_register_value): Likewise.
6229         (frame_unwind_register_signed): Likewise.
6230         (frame_unwind_register_unsigned): Likewise.
6231         (frame_unwind_arch): Likewise.
6232
6233 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6234
6235         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6236         ISA maintenance.
6237
6238 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6239
6240         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6241         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6242         hand.
6243
6244 2018-07-20  Keith Seitz  <keiths@redhat.com>
6245
6246         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6247         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6248         m_compunit_symtab, m_language>: Add "m_" prefix.
6249         Update all uses.
6250         * buildsym.c: Update all uses.
6251
6252 2018-07-20  Tom Tromey  <tom@tromey.com>
6253
6254         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6255         * buildsym.h (record_line_ftype): Remove typedef.
6256
6257 2018-07-20  Tom Tromey  <tom@tromey.com>
6258
6259         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6260         (end_expandable_symtab): Likewise.
6261         (end_symtab_get_static_block): Likewise.
6262         (end_symtab_from_static_block): Likewise.
6263         * buildsym-legacy.c (augment_type_symtab): Remove.
6264         (end_expandable_symtab): Remove.
6265         (end_symtab_get_static_block): Remove.
6266         (end_symtab_from_static_block): Remove.
6267
6268 2018-07-20  Tom Tromey  <tom@tromey.com>
6269
6270         * dwarf2read.c: Include buildsym.h.
6271         (struct dwarf2_cu) <builder>: New method.
6272         (fixup_go_packaging): Update.
6273         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6274         use scoped_free_pendings.
6275         (using_directives): Add "cu" parameter, remove "language".
6276         (read_import_statement, setup_type_unit_groups, )
6277         (read_func_scope, read_lexical_block_scope)
6278         (dwarf2_record_block_ranges, read_namespace): Update.
6279         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6280         (lnp_state_machine::handle_end_sequence): Update.
6281         (class lnp_state_machine) <m_cu>: New member.
6282         <m_record_line_callback>: Remove.
6283         <m_currently_recording_lines>: New member.
6284         (lnp_state_machine::handle_set_file): Update.
6285         (noop_record_line): Remove.
6286         (dwarf_record_line_p): Add cu parameter.
6287         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6288         (lnp_state_machine::record_line)
6289         (lnp_state_machine::lnp_state_machine)
6290         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6291         (dwarf_decode_lines): Update.
6292         (dwarf2_start_subfile): Add cu parameter.
6293         (dwarf2_start_symtab, new_symbol): Update.
6294         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6295         Remove dwarf2_per_objfile parameter.
6296         (dwarf_decode_macros): Update.
6297
6298 2018-07-20  Tom Tromey  <tom@tromey.com>
6299
6300         * stabsread.c (define_symbol): Update.
6301         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6302         * dwarf2read.c (new_symbol): Update.
6303         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6304         * cp-namespace.c: Include buildsym.h.
6305         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6306         * buildsym-legacy.c (get_buildsym_compunit): New function.
6307
6308 2018-07-20  Tom Tromey  <tom@tromey.com>
6309
6310         * xcoffread.c: Include buildsym-legacy.h.
6311         * windows-nat.c: Include buildsym-legacy.h.
6312         * stabsread.c: Include buildsym-legacy.h.
6313         * mdebugread.c: Include buildsym-legacy.h.
6314         * buildsym-legacy.h: New file.
6315         * buildsym-legacy.c: New file, from buildsym.c.
6316         * go32-nat.c: Include buildsym-legacy.h.
6317         * dwarf2read.c: Include buildsym-legacy.h.
6318         * dbxread.c: Include buildsym-legacy.h.
6319         * cp-namespace.c: Include buildsym-legacy.h.
6320         * coffread.c: Include buildsym-legacy.h.
6321         * buildsym.h: Move some contents to buildsym-legacy.h.
6322         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6323         buildsym-legacy.c.
6324         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6325
6326 2018-07-20  Tom Tromey  <tom@tromey.com>
6327
6328         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6329         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6330         (buildsym_compunit::buildsym_compunit)
6331         (buildsym_compunit::~buildsym_compunit)
6332         (buildsym_compunit::get_macro_table): Define.
6333
6334 2018-07-20  Tom Tromey  <tom@tromey.com>
6335
6336         * buildsym.c (reset_symtab_globals): Remove.
6337         (buildsym_compunit::end_symtab_from_static_block): Update.
6338         (buildsym_compunit::augment_type_symtab): Update.
6339         (end_symtab_from_static_block): Call free_buildsym_compunit.
6340         (augment_type_symtab, end_symtab, end_expandable_symtab):
6341         Likewise.
6342
6343 2018-07-20  Tom Tromey  <tom@tromey.com>
6344
6345         * arch-utils.c: Do not include buildsym.h.
6346         * mipsread.c: Do not include buildsym.h.
6347         * machoread.c: Do not include buildsym.h.
6348         * elfread.c: Do not include buildsym.h.
6349
6350 2018-07-20  Tom Tromey  <tom@tromey.com>
6351
6352         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6353         initialization.
6354         (buildsym_compunit): Add new constructor.
6355         (struct buildsym_compunit) <get_last_source_file, finish_block,
6356         record_block_range, start_subfile, patch_subfile_names,
6357         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6358         set_last_source_start_addr, get_last_source_start_addr,
6359         get_local_using_directives, set_local_using_directives,
6360         get_global_using_directives, outermost_context_p,
6361         get_current_context_stack, get_context_stack_depth,
6362         get_current_subfile, get_local_symbols, get_file_symbols,
6363         get_global_symbols, record_debugformat, record_producer,
6364         push_context, pop_context, end_symtab_get_static_block,
6365         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6366         New public methods.
6367         <record_pending_block, finish_block_internal, make_blockvector,
6368         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6369         private methods.
6370         Update all users.
6371
6372 2018-05-22  Tom Tromey  <tom@tromey.com>
6373
6374         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6375         parameter.
6376         (finish_block_internal): Update.
6377
6378 2018-07-20  Tom Tromey  <tom@tromey.com>
6379
6380         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6381         parameter.
6382         (finish_block_internal): Update.
6383
6384 2018-07-20  Tom Tromey  <tom@tromey.com>
6385
6386         * buildsym.h (EXTERN): Don't define or undef.
6387         * buildsym.c (EXTERN): Don't define.
6388
6389 2018-07-20  Tom Tromey  <tom@tromey.com>
6390
6391         * buildsym.c: Remove TODO comment.
6392
6393 2018-07-20  Tom Tromey  <tom@tromey.com>
6394
6395         * coffread.c (coff_symtab_read): Update.
6396         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6397         (xcoff_new_init): Update.
6398         * mipsread.c (mipscoff_new_init): Update.
6399         * mdebugread.c (mdebug_build_psymtabs): Update.
6400         * elfread.c (elf_new_init): Update.
6401         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6402         Update.
6403         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6404         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6405         (stabsect_build_psymtabs): Update.
6406         * buildsym.h (buildsym_init): Don't declare.
6407         * buildsym.c: Update comment.
6408         (prepare_for_building): Remove.
6409         (start_symtab, restart_symtab): Update.
6410         (reset_symtab_globals): Update comment.
6411         (buildsym_init): Remove.
6412
6413 2018-07-20  Tom Tromey  <tom@tromey.com>
6414
6415         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6416         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6417         (read_enum_type, common_block_start, common_block_end)
6418         (cleanup_undefined_types_1, finish_global_stabs): Update.
6419         * mdebugread.c (psymtab_to_symtab_1): Update.
6420         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6421         (read_lexical_block_scope, new_symbol): Update.
6422         * dbxread.c (process_one_symbol): Update.
6423         * coffread.c (coff_symtab_read, process_coff_symbol)
6424         (coff_read_enum_type): Update.
6425         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6426         declare.
6427         (get_local_symbols, get_file_symbols, get_global_symbols): New
6428         functions.
6429         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6430         m_global_symbols.
6431         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6432         (~scoped_free_pendings): Update.
6433         (finish_block, prepare_for_building, reset_symtab_globals)
6434         (end_symtab_get_static_block, end_symtab_with_blockvector)
6435         (augment_type_symtab, push_context): Update.
6436         (get_local_symbols, get_file_symbols, get_global_symbols): New
6437         functions.
6438         (buildsym_init): Update.
6439
6440 2018-07-20  Tom Tromey  <tom@tromey.com>
6441
6442         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6443         (process_full_type_unit): Likewise.
6444         (dwarf2_start_symtab): Set list_in_scope.
6445
6446 2018-07-20  Tom Tromey  <tom@tromey.com>
6447
6448         * dwarf2read.c (process_psymtab_comp_unit_reader)
6449         (build_type_psymtabs_reader): Do not set list_in_scope.
6450
6451 2018-07-20  Tom Tromey  <tom@tromey.com>
6452
6453         * buildsym.c (free_pendings): Remove.
6454         (add_symbol_to_list, scoped_free_pendings)
6455         (finish_block_internal, buildsym_init): Update.
6456
6457 2018-07-20  Tom Tromey  <tom@tromey.com>
6458
6459         * xcoffread.c (read_xcoff_symtab): Update.
6460         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6461         Update.
6462         * dbxread.c (process_one_symbol): Update.
6463         * coffread.c (coff_symtab_read): Update.
6464         * buildsym.h (finish_block): Update.
6465         * buildsym.c (finish_block): Remove "listhead" argument.
6466         (end_symtab_get_static_block): Update.
6467
6468 2018-07-20  Tom Tromey  <tom@tromey.com>
6469
6470         * buildsym.h (class scoped_free_pendings): Remove constructor.
6471         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6472         method.
6473         <m_pending_block_obstack, m_pending_blocks>: New members.
6474         (pending_block_obstack, pending_blocks): Remove.
6475         (scoped_free_pendings::scoped_free_pendings): Default.
6476         (~scoped_free_pendings): Update.
6477         (free_pending_blocks): Remove.
6478         (finish_block_internal, record_pending_block, make_blockvector)
6479         (end_symtab_get_static_block, augment_type_symtab, push_context)
6480         (buildsym_init): Update.
6481
6482 2018-07-20  Tom Tromey  <tom@tromey.com>
6483
6484         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6485         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6486         members.
6487         (pending_addrmap, pending_addrmap_obstack)
6488         (pending_addrmap_interesting): Remove.
6489         (scoped_free_pendings, record_block_range, make_blockvector)
6490         (prepare_for_building, reset_symtab_globals, buildsym_init):
6491         Update.
6492
6493 2018-07-20  Tom Tromey  <tom@tromey.com>
6494
6495         * xcoffread.c (process_linenos): Update.
6496         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6497         * mdebugread.c (psymtab_to_symtab_1): Update.
6498         * dwarf2read.c (setup_type_unit_groups)
6499         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6500         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6501         * dbxread.c (process_one_symbol): Update.
6502         * coffread.c (coff_symtab_read, enter_linenos)
6503         (process_coff_symbol): Update.
6504         * buildsym.h (current_subfile): Don't declare.
6505         (get_current_subfile): Declare.
6506         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6507         member.
6508         (start_subfile, free_buildsym_compunit, push_subfile)
6509         (prepare_for_building, start_symtab): Update.
6510         (get_current_subfile): New function.
6511
6512 2018-07-20  Tom Tromey  <tom@tromey.com>
6513
6514         * coffread.c (coff_symtab_read): Update.
6515         * xcoffread.c (read_xcoff_symtab): Update.
6516         * dwarf2read.c (new_symbol): Update.
6517         (read_func_scope, read_lexical_block_scope): Update.
6518         * dbxread.c (process_one_symbol): Update.
6519         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6520         (outermost_context_p): Remove macro.
6521         (outermost_context_p, get_current_context_stack)
6522         (get_context_stack_depth): Declare.
6523         (pop_context): Return struct context_stack.
6524         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6525         member.
6526         (context_stack_size): Remove.
6527         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6528         (prepare_for_building, end_symtab_get_static_block)
6529         (augment_type_symtab, push_context): Update.
6530         (pop_context): Return struct context_stack.
6531         (outermost_context_p, get_current_context_stack)
6532         (get_context_stack_depth): New functions.
6533         (buildsym_init): Update.
6534
6535 2018-07-20  Tom Tromey  <tom@tromey.com>
6536
6537         * rust-exp.y: Now a pure parser.  Update all rules.
6538         (%union): Move earlier.
6539         (current_parser, work_obstack): Remove globals.
6540         (rust_parser, ~rust_parser): Update.
6541         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6542         lex_character, lex_number, lex_string, lex_identifier,
6543         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6544         convert_name, convert_params_to_expression,
6545         convert_ast_to_expression, ast_basic_type, ast_operation,
6546         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6547         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6548         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6549         ast_array_type, ast_slice_type, ast_reference_type,
6550         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6551         (rust_parse): Update.
6552         (rustyyerror, rustyylex): Add parser parameter.
6553         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6554         (rust_lex_stringish_test, rust_lex_test_sequence)
6555         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6556         (rust_lex_test_push_back, rust_lex_tests): Update.
6557
6558 2018-07-19  Pedro Alves  <palves@redhat.com>
6559
6560         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6561         gdb::unique_xmalloc_ptr.
6562         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6563         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6564         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6565         copy-initialization.
6566         * guile/scm-pretty-print.c (ppscm_print_children): Use
6567         gdb::unique_xmalloc_ptr instead of cleanups.
6568         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6569         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6570         gdb::unique_xmalloc_ptr.
6571         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6572         Adjust to use gdb::unique_xmalloc_ptr.
6573         * guile/scm-utils.c (extract_arg): Adjust.
6574         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6575         gdb::unique_xmalloc_ptr instead of a cleanup.
6576
6577 2018-07-19  Tom Tromey  <tom@tromey.com>
6578
6579         * utils.c (do_value_free_to_mark)
6580         (make_cleanup_value_free_to_mark): Remove.
6581         * utils.h (make_cleanup_value_free_to_mark): Remove.
6582
6583 2018-07-19  Pedro Alves  <palves@redhat.com>
6584
6585         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6586         forwarding reference.
6587
6588 2018-07-18  Pedro Alves  <palves@redhat.com>
6589
6590         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6591         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6592         cleanup.
6593
6594 2018-07-18  Pedro Alves  <palves@redhat.com>
6595
6596         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6597         exceptions.
6598         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6599         (gdbscm_wrap): New.
6600         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6601         directly instead of a cleanup.
6602         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6603         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6604         (vlscm_binop_gdbthrow): New, factored out from ...
6605         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6606         (vlscm_rich_compare): Use gdbscm_wrap.
6607         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6608         instead of a cleanup.
6609         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6610         cleanup.
6611         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6612         Use xfree directly instead of a cleanup.
6613         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6614         Adjust to use gdbscm_wrap and scoped_value_mark.
6615         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6616         (gdbscm_value_address, gdbscm_value_dereference)
6617         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6618         scoped_value_mark.
6619         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6620         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6621         scoped_value_mark.
6622         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6623         gdbscm_wrap and scoped_value_mark.
6624         (gdbscm_value_to_string): Use xfree directly instead of a
6625         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6626         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6627         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6628         scoped_value_mark.
6629         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6630         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6631         scoped_value_mark.
6632         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6633         gdbscm_wrap.
6634
6635 2018-07-18  Tom de Vries  <tdevries@suse.de>
6636
6637         * findvar.c (default_read_var_value): Also resolve dynamic type for
6638         LOC_OPTIMIZED_OUT vars.
6639
6640 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6641
6642         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6643         decoding.
6644
6645 2018-07-17  Tom Tromey  <tom@tromey.com>
6646
6647         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6648         (compute_enum_list, pascm_set_param_value_x)
6649         (gdbscm_parameter_value): Update.
6650         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6651         (gdbscm_scm_to_host_string): Update.
6652         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6653         Update.
6654         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6655         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6656         * guile/scm-string.c (gdbscm_scm_to_string): Return
6657         unique_xmalloc_ptr.
6658         (gdbscm_scm_to_host_string): Likewise.
6659
6660 2018-07-17  Tom Tromey  <tom@tromey.com>
6661
6662         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6663         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6664         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6665         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6666         unique_xmalloc_ptr.
6667
6668 2018-07-17  Tom Tromey  <tom@tromey.com>
6669
6670         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6671         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6672         Update.
6673         * guile/scm-cmd.c (cmdscm_function): Update.
6674         * guile/scm-pretty-print.c
6675         (ppscm_print_exception_unless_memory_error): Update.
6676         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6677         Return unique_xmalloc_ptr.
6678
6679 2018-07-17  Tom Tromey  <tom@tromey.com>
6680
6681         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6682         Use string_printf.
6683
6684 2018-07-17  Jim Wilson  <jimw@sifive.com>
6685
6686         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6687         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6688         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6689         unecessary braces after EF_RISCV_RVC test.  Delete call to
6690         set_gdbarch_decr_pc_after_break.
6691
6692         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6693         RISCV_LAST_FP_REGNUM + 1.
6694         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6695
6696 2018-07-17  Tom Tromey  <tom@tromey.com>
6697
6698         * configure.ac: Remove --disable-gdbcli.
6699         * configure: Rebuild.
6700         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6701         (SUBDIR_CLI_CFLAGS): Remove.
6702         (SFILES): Use SUBDIR_CLI_SRCS.
6703         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6704
6705 2018-07-17  Tom Tromey  <tom@tromey.com>
6706
6707         PR gdb/18624:
6708         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6709
6710 2018-07-16  Jim Wilson  <jimw@sifive.com>
6711
6712         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6713
6714 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6715
6716         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6717         variable.
6718         (libunwind_frame_sniffer): Likewise.
6719         (libunwind_frame_prev_register): Likewise.
6720         (libunwind_sigtramp_frame_sniffer): Likewise.
6721         * ia64-tdep.c (ia64_access_reg): Likewise.
6722         (ia64_access_rse_reg): Likewise.
6723         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6724         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6725
6726 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6727
6728         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6729
6730 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6731
6732         * remote-sim.c (gdbsim_target::close,
6733         gdbsim_target::mourn_inferior): Remove unused variables.
6734
6735 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6736
6737         * ia64-tdep.c (ktab_buf): New global.
6738         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6739         (get_kernel_table): Adjust.
6740
6741 2018-07-16  Tom Tromey  <tom@tromey.com>
6742
6743         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6744         * dwarf2read.c (using_directives, new_symbol): Use
6745         outermost_context_p.
6746         * dbxread.c (process_one_symbol): Use outermost_context_p.
6747         * coffread.c (coff_symtab_read): Use outermost_context_p.
6748
6749 2018-07-16  Tom Tromey  <tom@tromey.com>
6750
6751         * dwarf2read.c (using_directives, read_func_scope)
6752         (read_lexical_block_scope): Update.
6753         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6754         * buildsym.h (local_using_directives, global_using_directives):
6755         Don't declare.
6756         (get_local_using_directives, set_local_using_directives)
6757         (get_global_using_directives): Declare.
6758         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6759         m_global_using_directives>: New members.
6760         (finish_block_internal, prepare_for_building)
6761         (reset_symtab_globals, end_symtab_get_static_block)
6762         (push_context): Update.
6763         (get_local_using_directives, set_local_using_directives)
6764         (get_global_using_directives): New functions.
6765         (buildsym_init): Update.
6766
6767 2018-07-16  Tom Tromey  <tom@tromey.com>
6768
6769         * xcoffread.c (xcoff_initial_scan): Don't call
6770         free_pending_blocks.
6771         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6772         * buildsym.h (class scoped_free_pendings): Add constructor.
6773         (free_pending_blocks): Don't declare.
6774         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6775         (free_pending_blocks): Now static.
6776
6777 2018-07-16  Tom Tromey  <tom@tromey.com>
6778
6779         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6780         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6781         member.
6782         (struct subfile_stack): Remove.
6783         (subfile_stack): Remove.
6784         (push_subfile, pop_subfile, buildsym_init): Update.
6785
6786 2018-07-16  Tom Tromey  <tom@tromey.com>
6787
6788         * buildsym.c (push_subfile): Use gdb_assert.
6789         (pop_subfile): Use gdb_assert.
6790
6791 2018-07-16  Tom Tromey  <tom@tromey.com>
6792
6793         * buildsym.h (merge_symbol_lists): Remove.
6794         * buildsym.c (merge_symbol_lists): Remove.
6795
6796 2018-07-16  Tom Tromey  <tom@tromey.com>
6797
6798         * stabsread.c (scan_file_globals): Update comment.
6799         * stabsread.h (scan_file_globals): Move from buildsym.h.
6800         * buildsym.h (scan_file_globals): Move to stabsread.h.
6801
6802 2018-07-16  Tom Tromey  <tom@tromey.com>
6803
6804         * xcoffread.c (xcoff_new_init): Update.
6805         * mipsread.c (mipscoff_new_init): Update.
6806         * mdebugread.c (mdebug_build_psymtabs): Update.
6807         * elfread.c (elf_new_init): Update.
6808         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6809         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6810         * buildsym.h (buildsym_new_init): Don't declare.
6811         * buildsym.c (buildsym_new_init): Remove.
6812
6813 2018-07-16  Tom Tromey  <tom@tromey.com>
6814
6815         * stabsread.h (within_function): Move from buildsym.h.
6816         * stabsread.c (start_stabs): Clear within_function.
6817         * coffread.c (coff_start_symtab): Clear within_function.
6818         * buildsym.h (within_function): Move to stabsread.h.
6819         * buildsym.c (prepare_for_building): Update.
6820
6821 2018-07-16  Tom Tromey  <tom@tromey.com>
6822
6823         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6824         * dwarf2read.c (dwarf2_start_symtab): Don't set
6825         processing_gcc_compilation.
6826         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6827
6828 2018-07-16  Tom Tromey  <tom@tromey.com>
6829
6830         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6831         (next_symbol_text_func): Move from buildsym.h.
6832         * stabsread.c (hashname): Move from buildsym.c.
6833         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6834         (next_symbol_text_func, hashname): Move to stabsread.h.
6835         * buildsym.c: Don't include bcache.h
6836         (hashname): Move to stasbread.c.
6837
6838 2018-07-16  Tom Tromey  <tom@tromey.com>
6839
6840         * buildsym.h (context_stack_size): Don't declare.
6841         * buildsym.c (context_stack_size): New global.
6842
6843 2018-07-16  Tom Tromey  <tom@tromey.com>
6844
6845         * dbxread.c (processing_acc_compilation): New global.
6846         * buildsym.h (processing_acc_compilation): Don't declare.
6847
6848 2018-07-16  Tom Tromey  <tom@tromey.com>
6849
6850         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6851         * dbxread.c (read_ofile_symtab): Update.
6852         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6853         * buildsym.h (last_source_start_addr): Remove.
6854         (set_last_source_start_addr, get_last_source_start_addr):
6855         Declare.
6856         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6857         parameter.
6858         (struct buildsym_compunit) <m_last_source_start_addr>: New
6859         member.
6860         (prepare_for_building): Remove start_addr parameter.
6861         (start_symtab, restart_symtab, end_symtab_get_static_block)
6862         (end_symtab_with_blockvector): Update.
6863         (set_last_source_start_addr, get_last_source_start_addr): New
6864         functions.
6865
6866 2018-07-16  Tom Tromey  <tom@tromey.com>
6867
6868         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6869         member.
6870         (have_line_numbers): Remove.
6871         (record_line, prepare_for_building, end_symtab_get_static_block)
6872         (augment_type_symtab): Update.
6873
6874 2018-07-16  Tom Tromey  <tom@tromey.com>
6875
6876         * buildsym.c (~buildsym_compunit): Free the macro table.
6877         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6878         methods.
6879         <m_pending_macros>: New member.
6880         (pending_macros): Remove.
6881         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6882         (reset_symtab_globals, end_symtab_get_static_block)
6883         (end_symtab_with_blockvector, augment_type_symtab)
6884         (buildsym_init): Update.
6885
6886 2018-07-16  Tom Tromey  <tom@tromey.com>
6887
6888         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6889         parameter.
6890         (buildsym_compunit::set_last_source_file): New method.
6891         <m_last_source_file>: New member.
6892         (prepare_for_building): Remove "name" parameter.
6893         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6894         (last_source_file): Remove.
6895         (set_last_source_file, get_last_source_file): Update.
6896
6897 2018-07-16  Tom Tromey  <tom@tromey.com>
6898
6899         * buildsym.c (prepare_for_building): Add assert.
6900
6901 2018-07-16  Tom Tromey  <tom@tromey.com>
6902
6903         * buildsym.c (~buildsym_compunit): Update.
6904         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6905         (start_subfile, patch_subfile_names)
6906         (end_symtab_with_blockvector): Update.
6907
6908 2018-07-16  Tom Tromey  <tom@tromey.com>
6909
6910         * buildsym.c (struct buildsym_compunit): Add constructor,
6911         destructor, initializers.
6912         (start_buildsym_compunit): Remove.
6913         (free_buildsym_compunit): Use "delete".
6914         (start_symtab, restart_symtab): Use "new".
6915
6916 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6917
6918         * symfile.c (set_objfile_default_section_offset): Remove struct
6919         keyword.
6920
6921 2018-07-14  Stafford Horne  <shorne@gmail.com>
6922
6923         * (Responsible Maintainers): Add myself as or1k maintainer.
6924
6925 2018-07-13  Tom Tromey  <tom@tromey.com>
6926
6927         * symfile.c (set_objfile_default_section_offset): Use extra braces
6928         around initializer.
6929
6930 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6931
6932         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6933         non-branching basr.
6934
6935 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6936
6937         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6938         unittests/cli-utils-selftests.c
6939         * unittests/cli-utils-selftests.c: New file.
6940
6941 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6942
6943         * NEWS: Mention new commands. Mention change to 'thread apply'.
6944
6945 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6946
6947         * thread.c (thr_try_catch_cmd): New function.
6948         (thread_apply_all_command): Handle qcs flags.
6949         (thread_apply_command): Handle qcs flags.
6950         (taas_command): New function.
6951         (tfaas_command): New function.
6952         (_initialize_thread): Update to setup the new commands 'taas
6953         and 'tfaas'. Change doc string for 'thread apply'.
6954
6955 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6956
6957         * stack.c: (trailing_outermost_frame): New function, mostly
6958         extracted from backtrace_command_1.
6959         (leading_innermost_frame): New function.
6960         (backtrace_command_1): Update to call trailing_outermost_frame.
6961         (frame_apply_command_count): New function.
6962         (frame_apply_level_command): New function.
6963         (frame_apply_all_command): New function.
6964         (frame_apply_command): New function.
6965         (faas_command): New function.
6966         (frame_cmd_list): New variable.
6967         (_initialize_stack): Update to setup the new commands 'frame apply'
6968         and 'faas'.
6969
6970 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6971
6972         * cli-utils.c (number_or_range_parser::get_number): Only handle
6973         numbers or convenience var as numbers.
6974         (parse_flags): New function.
6975         (parse_flags_qcs): New function.
6976         (number_or_range_parser::finished): Ensure parsing end is detected
6977         before end of string.
6978         * cli-utils.h (parse_flags): New function.
6979         (parse_flags_qcs): New function.
6980         (number_or_range_parser): Remove m_finished bool.
6981         (number_or_range_parser::skip_range): Set m_in_range to false.
6982
6983 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6984
6985         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6986         on Windows.
6987
6988 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6989             Jan Kratochvil  <jan.kratochvil@redhat.com>
6990             Paul Fertser  <fercerpav@gmail.com>
6991             Tsutomu Seki  <sekiriki@gmail.com>
6992             Pedro Alves  <palves@redhat.com>
6993
6994         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6995         'unittests/parse-connection-spec-selftests.c'.
6996         (COMMON_SFILES): Add 'common/netstuff.c'.
6997         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6998         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6999         * common/netstuff.c: New file.
7000         * common/netstuff.h: New file.
7001         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
7002         (wait_for_connect): Update comment.  New parameter
7003         'gdb::optional<int> sock' instead of 'struct serial *scb'.
7004         Use 'sock' directly instead of 'scb->fd'.
7005         (try_connect): New function, with code from 'net_open'.
7006         (net_open): Rewrite main loop to deal with multiple
7007         sockets/addresses.  Handle IPv6-style hostnames; implement
7008         support for IPv6 connections.
7009         * unittests/parse-connection-spec-selftests.c: New file.
7010
7011 2018-07-11  Pedro Alves  <palves@redhat.com>
7012
7013         PR gdb/23377
7014         * remote.c (remote_target::remote_detach_pid): Call
7015         set_current_process.
7016
7017 2018-07-11  Pedro Alves  <palves@redhat.com>
7018
7019         * h8300-tdep.c (h8300_gdbarch_init): Remove
7020         set_gdbarch_ecoff_reg_to_regnum calls.
7021
7022 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
7023
7024         PR c++/23373
7025         * c-typeprint.c (c_type_print_base_struct_union): Don't print
7026         offsets/sizes for static members of a class/struct.
7027
7028 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
7029
7030         * target-descriptions.c (tdesc_register_bitsize): Rename.
7031         * target-descriptions.h (tdesc_register_bitsize): Likewise.
7032         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
7033         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
7034
7035 2018-07-10  Tom Tromey  <tom@tromey.com>
7036
7037         * breakpoint.c (moribund_locations): Now static and a
7038         std::vector.
7039         (breakpoint_init_inferior, moribund_breakpoint_here_p)
7040         (build_bpstat_chain, update_global_location_list)
7041         (breakpoint_retire_moribund): Update.
7042         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
7043         VEC.
7044
7045 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7046
7047         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7048         (riscv_register_reggroup_p): Use new function, remove unneeded
7049         parenthesis.
7050         (riscv_push_dummy_call): Extend assert to compare against xlen or
7051         flen based on register type.
7052
7053 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7054
7055         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7056
7057 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7058
7059         * remote.c (show_hardware_watchpoint_limit): New function.
7060         (show_hardware_watchpoint_length_limit): New function.
7061         (show_hardware_breakpoint_limit): New function.
7062         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7063         where appropriate, update help text.
7064
7065 2018-07-09  Tom Tromey  <tom@tromey.com>
7066
7067         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7068         (CLIBS): Don't mention NAT_CLIBS.
7069
7070 2018-07-09  Tom Tromey  <tom@tromey.com>
7071
7072         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7073         (LIBGDB_OBS, clean mostlyclean): Update.
7074         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7075
7076 2018-07-09  Tom Tromey  <tom@tromey.com>
7077
7078         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7079         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7080         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7081
7082 2018-07-09  Tom Tromey  <tom@tromey.com>
7083
7084         * Makefile.in (ALLDEPFILES): Remove exec.c.
7085         (COMMON_OBS): Remove exec.o.
7086         (COMMON_SFILES): Add exec.c.
7087
7088 2018-07-09  Tom Tromey  <tom@tromey.com>
7089
7090         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7091
7092 2018-07-09  Tom Tromey  <tom@tromey.com>
7093
7094         * Makefile.in (clean mostlyclean): Remove stamp-version.
7095         (version.c): Depend on stamp-version.
7096         (stamp-version): New rule, from version.c rule.
7097
7098 2018-07-09  Tom Tromey  <tom@tromey.com>
7099
7100         * Makefile.in (init.c): Depend on stamp-init.
7101         (stamp-init): New rule, from init.c rule.
7102         (clean mostlyclean): Remove stamp-init.
7103
7104 2018-07-09  Tom Tromey  <tom@tromey.com>
7105
7106         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7107         SUBDIR_GCC_COMPILE_SRCS.
7108
7109 2018-07-09  Tom Tromey  <tom@tromey.com>
7110
7111         * Makefile.in (init.c): Remove some unused sed rules.
7112
7113 2018-07-09  Tom Tromey  <tom@tromey.com>
7114
7115         * Makefile.in (TSOBS): Remove.
7116         (INIT_FILES): Update.
7117         (LIBGDB_OBS): Update.
7118         (COMMON_SFILES): Add inflow.c.
7119         (SFILES): Remove inflow.c.
7120
7121 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7122
7123         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7124
7125 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7126
7127         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7128         get_saveloc_name, is_signal_frame_name, step_name,
7129         init_remote_name, create_addr_space_name,
7130         destroy_addr_space_name, search_unwind_table_name,
7131         find_dyn_list_name): Constify.
7132
7133 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7134
7135         * darwin-nat.c (darwin_pthread_kill): New function.
7136         (darwin_resume_thread): Use darwin_pthread_kill.
7137
7138 2018-07-05  Tom de Vries  <tdevries@suse.de>
7139
7140         * macroexp.c (macro_buffer) <operator=>: New member function.
7141
7142 2018-07-04  Tom Tromey  <tom@tromey.com>
7143
7144         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7145
7146 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7147
7148         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7149         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7150         * maint.c: Likewise.
7151         * top.c: Likewise.
7152
7153 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7154
7155         * NEWS: Create a new section for the next release branch.
7156         Rename the section of the current branch, now that it has
7157         been cut.
7158
7159 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7160
7161         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7162         * version.in: Bump version to 8.2.50.DATE-git.
7163
7164 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7165             Pedro Alves  <palves@redhat.com>
7166
7167         * linux-nat.c (linux_init_ptrace): Rename to ...
7168         (linux_init_ptrace_procfs): ... this.  Call
7169         linux_proc_init_warnings.
7170         (linux_nat_target::post_attach)
7171         (linux_nat_target::post_startup_inferior): Adjust.
7172         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7173         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7174
7175 2018-07-04  Tom de Vries  <tdevries@suse.de>
7176
7177         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7178         check ...
7179         (read_comp_unit_head): ... here.
7180
7181 2018-07-03  Tom Tromey  <tom@tromey.com>
7182
7183         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7184         (stop_tracing, tstatus_command)
7185         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7186         (print_one_static_tracepoint_marker): Update.
7187         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7188         std::vector.
7189         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7190         VEC.
7191         (all_tracepoints, static_tracepoints_here): Return std::vector.
7192
7193 2018-07-03  Tom Tromey  <tom@tromey.com>
7194
7195         * common/ptid.c (ptid_equal): Remove.
7196         * common/ptid.h (ptid_equal): Don't declare.
7197         * ada-tasks.c: Update.
7198         * breakpoint.c: Update.
7199         * common/agent.c: Update.
7200         * corelow.c: Update.
7201         * darwin-nat-info.c: Update.
7202         * darwin-nat.c: Update.
7203         * dcache.c: Update.
7204         * dtrace-probe.c: Update.
7205         * dummy-frame.c: Update.
7206         * fbsd-nat.c: Update.
7207         * frame.c: Update.
7208         * gdbthread.h: Update.
7209         * gnu-nat.c: Update.
7210         * go32-nat.c: Update.
7211         * inf-loop.c: Update.
7212         * inf-ptrace.c: Update.
7213         * infcall.c: Update.
7214         * infcmd.c: Update.
7215         * inflow.c: Update.
7216         * infrun.c: Update.
7217         * linux-fork.c: Update.
7218         * linux-nat.c: Update.
7219         * linux-thread-db.c: Update.
7220         * mi/mi-cmd-var.c: Update.
7221         * mi/mi-interp.c: Update.
7222         * mi/mi-main.c: Update.
7223         * nto-procfs.c: Update.
7224         * ppc-linux-tdep.c: Update.
7225         * procfs.c: Update.
7226         * python/py-inferior.c: Update.
7227         * python/py-record-btrace.c: Update.
7228         * python/py-record.c: Update.
7229         * ravenscar-thread.c: Update.
7230         * regcache.c: Update.
7231         * remote-sim.c: Update.
7232         * remote.c: Update.
7233         * sol-thread.c: Update.
7234         * solib.c: Update.
7235         * target.c: Update.
7236         * tui/tui-stack.c: Update.
7237         * varobj.c: Update.
7238         * windows-nat.c: Update.
7239         * windows-tdep.c: Update.
7240
7241 2018-07-03  Tom Tromey  <tom@tromey.com>
7242
7243         * common/ptid.c (ptid_match): Remove.
7244         * common/ptid.h (ptid_match): Don't declare.
7245         * fbsd-nat.c: Update.
7246         * infcmd.c: Update.
7247         * infrun.c: Update.
7248         * linux-nat.c: Update.
7249         * record-btrace.c: Update.
7250         * regcache.c: Update.
7251         * remote.c: Update.
7252
7253 2018-07-03  Tom Tromey  <tom@tromey.com>
7254
7255         * common/ptid.c (ptid_tid_p): Remove.
7256         * common/ptid.h (ptid_tid_p): Don't declare.
7257         * sol-thread.c: Update.
7258
7259 2018-07-03  Tom Tromey  <tom@tromey.com>
7260
7261         * common/ptid.c (ptid_lwp_p): Remove.
7262         * common/ptid.h (ptid_lwp_p): Don't declare.
7263         * fbsd-nat.c: Update.
7264         * linux-nat.c: Update.
7265         * nat/linux-procfs.c: Update.
7266         * nat/x86-linux-dregs.c: Update.
7267         * sol-thread.c: Update.
7268
7269 2018-07-03  Tom Tromey  <tom@tromey.com>
7270
7271         * common/ptid.c (ptid_is_pid): Remove.
7272         * common/ptid.h (ptid_is_pid): Don't declare.
7273         * infrun.c: Update.
7274         * linux-nat.c: Update.
7275         * mi/mi-interp.c: Update.
7276         * remote.c: Update.
7277         * thread.c: Update.
7278
7279 2018-07-03  Tom Tromey  <tom@tromey.com>
7280
7281         * common/ptid.c (ptid_get_tid): Remove.
7282         * common/ptid.h (ptid_get_tid): Don't declare.
7283         * ada-tasks.c: Update.
7284         * aix-thread.c: Update.
7285         * bsd-uthread.c: Update.
7286         * darwin-nat.c: Update.
7287         * fbsd-nat.c: Update.
7288         * i386-darwin-nat.c: Update.
7289         * infrun.c: Update.
7290         * linux-tdep.c: Update.
7291         * nto-procfs.c: Update.
7292         * ppc-ravenscar-thread.c: Update.
7293         * python/py-infthread.c: Update.
7294         * ravenscar-thread.c: Update.
7295         * sol-thread.c: Update.
7296         * sparc-ravenscar-thread.c: Update.
7297         * windows-nat.c: Update.
7298
7299 2018-07-03  Tom Tromey  <tom@tromey.com>
7300
7301         * common/ptid.c (ptid_get_lwp): Remove.
7302         * common/ptid.h (ptid_get_lwp): Don't declare.
7303         * aarch64-linux-nat.c: Update.
7304         * ada-tasks.c: Update.
7305         * aix-thread.c: Update.
7306         * amd64-linux-nat.c: Update.
7307         * arm-linux-nat.c: Update.
7308         * corelow.c: Update.
7309         * fbsd-nat.c: Update.
7310         * fbsd-tdep.c: Update.
7311         * gnu-nat.c: Update.
7312         * i386-cygwin-tdep.c: Update.
7313         * i386-gnu-nat.c: Update.
7314         * i386-linux-nat.c: Update.
7315         * ia64-linux-nat.c: Update.
7316         * inf-ptrace.c: Update.
7317         * infrun.c: Update.
7318         * linux-fork.c: Update.
7319         * linux-nat.c: Update.
7320         * linux-tdep.c: Update.
7321         * linux-thread-db.c: Update.
7322         * mips-linux-nat.c: Update.
7323         * nat/aarch64-linux-hw-point.c: Update.
7324         * nat/aarch64-linux.c: Update.
7325         * nat/linux-btrace.c: Update.
7326         * nat/linux-osdata.c: Update.
7327         * nat/linux-procfs.c: Update.
7328         * nat/x86-linux-dregs.c: Update.
7329         * obsd-nat.c: Update.
7330         * ppc-fbsd-nat.c: Update.
7331         * ppc-linux-nat.c: Update.
7332         * procfs.c: Update.
7333         * python/py-infthread.c: Update.
7334         * ravenscar-thread.c: Update.
7335         * remote.c: Update.
7336         * s390-linux-nat.c: Update.
7337         * sol-thread.c: Update.
7338         * sol2-tdep.c: Update.
7339         * spu-linux-nat.c: Update.
7340         * x86-linux-nat.c: Update.
7341         * xtensa-linux-nat.c: Update.
7342
7343 2018-07-03  Tom Tromey  <tom@tromey.com>
7344
7345         * common/ptid.c (ptid_get_pid): Remove.
7346         * common/ptid.h (ptid_get_pid): Don't declare.
7347         * aarch64-linux-nat.c: Update.
7348         * ada-lang.c: Update.
7349         * aix-thread.c: Update.
7350         * alpha-bsd-nat.c: Update.
7351         * amd64-fbsd-nat.c: Update.
7352         * amd64-linux-nat.c: Update.
7353         * arm-linux-nat.c: Update.
7354         * arm-nbsd-nat.c: Update.
7355         * auxv.c: Update.
7356         * break-catch-syscall.c: Update.
7357         * breakpoint.c: Update.
7358         * bsd-uthread.c: Update.
7359         * corelow.c: Update.
7360         * ctf.c: Update.
7361         * darwin-nat.c: Update.
7362         * fbsd-nat.c: Update.
7363         * fbsd-tdep.c: Update.
7364         * gcore.c: Update.
7365         * gnu-nat.c: Update.
7366         * hppa-nbsd-nat.c: Update.
7367         * hppa-obsd-nat.c: Update.
7368         * i386-fbsd-nat.c: Update.
7369         * ia64-linux-nat.c: Update.
7370         * inf-ptrace.c: Update.
7371         * infcmd.c: Update.
7372         * inferior.c: Update.
7373         * inferior.h: Update.
7374         * inflow.c: Update.
7375         * infrun.c: Update.
7376         * linux-fork.c: Update.
7377         * linux-nat.c: Update.
7378         * linux-tdep.c: Update.
7379         * linux-thread-db.c: Update.
7380         * m68k-bsd-nat.c: Update.
7381         * mi/mi-interp.c: Update.
7382         * mi/mi-main.c: Update.
7383         * mips-linux-nat.c: Update.
7384         * mips-nbsd-nat.c: Update.
7385         * mips64-obsd-nat.c: Update.
7386         * nat/aarch64-linux-hw-point.c: Update.
7387         * nat/aarch64-linux.c: Update.
7388         * nat/linux-btrace.c: Update.
7389         * nat/linux-osdata.c: Update.
7390         * nat/linux-procfs.c: Update.
7391         * nat/x86-linux-dregs.c: Update.
7392         * nto-procfs.c: Update.
7393         * obsd-nat.c: Update.
7394         * ppc-linux-nat.c: Update.
7395         * ppc-nbsd-nat.c: Update.
7396         * ppc-obsd-nat.c: Update.
7397         * proc-service.c: Update.
7398         * procfs.c: Update.
7399         * python/py-inferior.c: Update.
7400         * python/py-infthread.c: Update.
7401         * ravenscar-thread.c: Update.
7402         * record.c: Update.
7403         * remote-sim.c: Update.
7404         * remote.c: Update.
7405         * rs6000-nat.c: Update.
7406         * s390-linux-nat.c: Update.
7407         * sh-nbsd-nat.c: Update.
7408         * sol-thread.c: Update.
7409         * sparc-nat.c: Update.
7410         * sparc64-tdep.c: Update.
7411         * spu-linux-nat.c: Update.
7412         * spu-tdep.c: Update.
7413         * target-debug.h: Update.
7414         * target.c: Update.
7415         * thread.c: Update.
7416         * tid-parse.c: Update.
7417         * tracefile-tfile.c: Update.
7418         * vax-bsd-nat.c: Update.
7419         * windows-nat.c: Update.
7420         * x86-linux-nat.c: Update.
7421         * x86-nat.c: Update.
7422
7423 2018-07-03  Tom Tromey  <tom@tromey.com>
7424
7425         * common/ptid.c (pid_to_ptid): Remove.
7426         * common/ptid.h (pid_to_ptid): Don't declare.
7427         * aix-thread.c: Update.
7428         * arm-linux-nat.c: Update.
7429         * common/ptid.c: Update.
7430         * common/ptid.h: Update.
7431         * corelow.c: Update.
7432         * ctf.c: Update.
7433         * darwin-nat.c: Update.
7434         * fbsd-nat.c: Update.
7435         * fork-child.c: Update.
7436         * gnu-nat.c: Update.
7437         * go32-nat.c: Update.
7438         * inf-ptrace.c: Update.
7439         * infcmd.c: Update.
7440         * inferior.c: Update.
7441         * infrun.c: Update.
7442         * linux-fork.c: Update.
7443         * linux-nat.c: Update.
7444         * nat/aarch64-linux-hw-point.c: Update.
7445         * nat/fork-inferior.c: Update.
7446         * nat/x86-linux-dregs.c: Update.
7447         * nto-procfs.c: Update.
7448         * obsd-nat.c: Update.
7449         * procfs.c: Update.
7450         * progspace.c: Update.
7451         * remote.c: Update.
7452         * rs6000-nat.c: Update.
7453         * s390-linux-nat.c: Update.
7454         * sol-thread.c: Update.
7455         * spu-linux-nat.c: Update.
7456         * target.c: Update.
7457         * top.c: Update.
7458         * tracefile-tfile.c: Update.
7459         * windows-nat.c: Update.
7460
7461 2018-07-03  Tom Tromey  <tom@tromey.com>
7462
7463         * common/ptid.h (ptid_build): Don't declare.
7464         * common/ptid.c (ptid_build): Remove.
7465         * aix-thread.c: Update.
7466         * bsd-kvm.c: Update.
7467         * bsd-uthread.c: Update.
7468         * common/agent.c: Update.
7469         * common/ptid.c: Update.
7470         * common/ptid.h: Update.
7471         * corelow.c: Update.
7472         * darwin-nat.c: Update.
7473         * fbsd-nat.c: Update.
7474         * gnu-nat.c: Update.
7475         * linux-fork.c: Update.
7476         * linux-nat.c: Update.
7477         * linux-thread-db.c: Update.
7478         * nat/linux-osdata.c: Update.
7479         * nat/linux-procfs.c: Update.
7480         * nto-procfs.c: Update.
7481         * obsd-nat.c: Update.
7482         * proc-service.c: Update.
7483         * procfs.c: Update.
7484         * ravenscar-thread.c: Update.
7485         * remote-sim.c: Update.
7486         * remote.c: Update.
7487         * sol-thread.c: Update.
7488         * target.c: Update.
7489         * windows-nat.c: Update.
7490
7491 2018-07-03  Tom Tromey  <tom@tromey.com>
7492
7493         * infrun.c (follow_exec): Use exit_inferior_silent.
7494         * inferior.c (exit_inferior_num_silent): Remove.
7495         * inferior.h (exit_inferior_num_silent): Don't declare.
7496
7497 2018-07-03  Tom Tromey  <tom@tromey.com>
7498
7499         PR cli/23340:
7500         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7501         inferior_ptid on error.
7502
7503 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7504             Simon Marchi  <simon.marchi@polymtl.ca>
7505
7506         PR tdep/8282
7507         * disasm.h (gdb_disassembler): Add
7508         `m_disassembler_options_holder'. member
7509         * disasm.c (get_all_disassembler_options): New function.
7510         (gdb_disassembler::gdb_disassembler): Use it.
7511         (gdb_buffered_insn_length_init_dis): Likewise.
7512         (gdb_buffered_insn_length): Adjust accordingly.
7513         (set_disassembler_options): Handle options with arguments.
7514         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7515         line if showing options with descriptions.
7516         (disassembler_options_completer): Adapt to using the
7517         `disasm_options_and_args_t' structure.
7518         * mips-tdep.c (mips_disassembler_options): New variable.
7519         (mips_disassembler_options_o32): Likewise.
7520         (mips_disassembler_options_n32): Likewise.
7521         (mips_disassembler_options_n64): Likewise.
7522         (gdb_print_insn_mips): Don't set `disassembler_options'.
7523         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7524         functions.
7525         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7526         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7527         `gdbarch_disassembler_options_implicit' and
7528         `gdbarch_valid_disassembler_options'.
7529         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7530         `disasm_options_and_args_t' structure.
7531         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7532         method.
7533         (valid_disassembler_options): Switch from `disasm_options_t' to
7534         the `disasm_options_and_args_t' structure.
7535         * NEWS: Document `set disassembler-options' support for the MIPS
7536         target.
7537         * gdbarch.h: Regenerate.
7538         * gdbarch.c: Regenerate.
7539
7540 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7541
7542         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7543
7544 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7545
7546         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7547         parameter in call to amd64_target_description.
7548         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7549         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7550         (amd64fbsd_init_abi): Likewise.
7551         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7552         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7553         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7554         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7555
7556 2018-06-29  Pedro Alves  <palves@redhat.com>
7557
7558         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7559         "segments" parameter.
7560         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7561         (_initialize_amd64_tdep): Update call to
7562         amd64_create_target_description.
7563         (amd64_target_description): Add "segments" parameter.  Adjust
7564         the implementation to use it.
7565         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7566         call to amd64_create_target_description.
7567         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7568         * gdb/arch/amd64.h (amd64_create_target_description): Add
7569         "segments" register.
7570         * gdb/arch/amd64.c (amd64_create_target_description): Add
7571         "segments" parameter.  Call create_feature_i386_64bit_segments
7572         only if SEGMENTS is true.
7573         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7574         call to amd64_create_target_description.
7575
7576 2018-06-29  Pedro Alves  <palves@redhat.com>
7577
7578         * thread.c (thread_target_id_str): New, factored out from ...
7579         (print_thread_info_1): ... here.  Use it to compute the max
7580         "Target Id" column width.
7581
7582 2018-06-29  Pedro Alves  <palves@redhat.com>
7583
7584         * remote.c (remote_target::extra_thread_info): Delete
7585         'display_buf' and 'n' locals.  from the cache, regardless of
7586         packet mechanims is in use.  Use cache for qThreadExtra and qP
7587         methods too.
7588
7589 2018-06-29  Pedro Alves  <palves@redhat.com>
7590
7591         * blockframe.c (find_pc_sect_containing_function): New function.
7592         * breakpoint.c (print_breakpoint_location): Don't call
7593         find_pc_sect_function.
7594         * linespec.c (create_sals_line_offset): Record the location's
7595         symbol in the sal.
7596         * linespec.c (convert_address_location_to_sals): Fill in sal's
7597         symbol with find_pc_sect_containing_function.
7598         * symtab.c (find_function_start_sal): Rename to ...
7599         (find_function_start_sal_1): ... this.
7600         (find_function_start_sal): Reimplement as wrapper around
7601         find_function_start_sal_1, and use
7602         find_pc_sect_containing_function to fill in the sal's symbol.
7603         (find_function_start_sal(symbol*, bool)): Adjust.
7604         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7605         comments.
7606         (find_pc_sect_containing_function): Declare.
7607
7608 2018-06-29  Pedro Alves  <palves@redhat.com>
7609
7610         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7611         true if the the location has no symbol.
7612
7613 2018-06-28  Tom Tromey  <tom@tromey.com>
7614
7615         * NEWS: Mention --enable-codesign.
7616         * silent-rules.mk (ECHO_SIGN): New variable.
7617         * configure.ac: Add --enable-codesign.
7618         * configure: Rebuild.
7619         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7620         (gdb$(EXEEXT)): Optionally invoke codesign.
7621
7622 2018-06-28  Pedro Alves  <palves@redhat.com>
7623
7624         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7625         comments.
7626         (switch_to_thread_no_regs): Adjust comment.
7627         * infcmd.c (stop_pc): Delete.
7628         (post_create_inferior, info_program_command): Replace references
7629         to stop_pc with references to thread_info->suspend.stop_pc.
7630         * inferior.h (stop_pc): Delete declaration.
7631         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7632         (handle_inferior_event_1, handle_signal_stop)
7633         (process_event_stop_test, keep_going_stepped_thread)
7634         (handle_step_into_function, handle_step_into_function_backward)
7635         (print_stop_location): Replace references to stop_pc with
7636         references to thread_info->suspend.stop_pc.
7637         (struct infcall_suspend_state) <stop_pc>: Delete field.
7638         (save_infcall_suspend_state, restore_infcall_suspend_state):
7639         Remove references to inf_stat->stop_pc.
7640         * linux-fork.c (fork_load_infrun_state): Likewise.
7641         * record-btrace.c (record_btrace_set_replay): Likewise.
7642         * record-full.c (record_full_goto_entry): Likewise.
7643         * remote.c (print_one_stopped_thread): Likewise.
7644         * target.c (target_resume): Extend comment.
7645         * thread.c (set_executing_thread): New.
7646         (set_executing): Use it.
7647         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7648         Remove references to stop_pc.
7649
7650 2018-06-28  Pedro Alves  <palves@redhat.com>
7651
7652         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7653         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7654
7655 2018-06-28  Tom Tromey  <tom@tromey.com>
7656
7657         * coffread.c (coff_symfile_finish): Update.
7658         * xcoffread.c (xcoff_symfile_finish): Update.
7659         * elfread.c (elf_symfile_finish): Update.
7660         * symfile.h (dwarf2_free_objfile): Don't declare.
7661         * dwarf2read.c (_initialize_dwarf2_read): Use
7662         register_objfile_data_with_cleanup.
7663         (dwarf2_free_objfile): Now static.  Change signature.
7664
7665 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7666
7667         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7668         option "-o" to add-symbol-file-load to add an offset to each
7669         section's load address.
7670         * symfile.c (set_objfile_default_section_offset): New function.
7671
7672 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7673
7674         * symfile.c (add_symbol_file_command): Make sure that sections
7675         with the same name are sorted in the same order.
7676
7677 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7678
7679         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7680         require the second argument.  If omitted, load sections at the
7681         addresses specified in the file.
7682
7683 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7684
7685         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7686         (_initialize_symfile): Add option "-o" to symbol-file to add an
7687         offset to each section of the symbol file.
7688
7689 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7690
7691         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7692
7693 2018-06-27  Tom Tromey  <tom@tromey.com>
7694
7695         * stack.c (_initialize_stack): Update "func" help text.
7696
7697 2018-06-27  Tom Tromey  <tom@tromey.com>
7698
7699         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7700         std::vector.
7701         (unwind_infopy_str, pyuw_create_unwind_info)
7702         (unwind_infopy_add_saved_register, pyuw_sniffer)
7703         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7704         Update.
7705         (struct saved_reg): Add constructor.
7706         <value>: Now a gdbpy_ref<>.
7707
7708 2018-06-27  Tom Tromey  <tom@tromey.com>
7709
7710         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7711
7712 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7713
7714         * gdb-gdb.py.in: Format using autopep8.
7715
7716 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7717
7718         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7719         (type_lookup_function): Recognize CORE_ADDR values.
7720
7721 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7722
7723         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7724         print tag_name.
7725
7726 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7727
7728         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7729         <__lt__>: Add.
7730
7731 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7732
7733         * gdb-gdb.py: Move to...
7734         * gdb-gdb.py.in: ... here.
7735         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7736         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7737         dependencies.
7738         (distclean): Remove gdb-gdb.py when cleaning.
7739         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7740         * configure: Re-generate.
7741
7742 2018-06-27  Pedro Alves  <palves@redhat.com>
7743
7744         * proc-service.c (get_ps_regcache): New.
7745         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7746         (ps_lsetfpregs): Use it.
7747
7748 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7749
7750         PR gdb/21695
7751         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7752         declaration.
7753         (dwarf_decode_lines_1): Adjust.
7754
7755 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7756
7757         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7758         override.
7759         <info_proc>: Likewise.
7760
7761 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7762
7763         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7764         to windows_fetch_one_register, and only handle the case of
7765         fetching one register.  Move the code that reloads the context
7766         and iterates over all registers if R is negative to...
7767         (windows_nat_target::fetch_registers): ... here.
7768         (do_windows_store_inferior_registers): Rename to
7769         windows_store_one_register, and only handle the case of storing
7770         one register.  Move the code that handles the case where r is
7771         negative to...
7772         (windows_nat_target::store_registers) ... here.
7773
7774 2018-06-26  Tom Tromey  <tom@tromey.com>
7775
7776         PR rust/22574:
7777         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7778         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7779         Update.
7780         (rust_internal_print_type): Add podata parameter.
7781         (rust_print_type): Update.
7782
7783 2018-06-26  Tom Tromey  <tom@tromey.com>
7784
7785         * typeprint.h (struct print_offset_data) <update, finish,
7786         maybe_print_hole>: New methods.
7787         <indentation>: New constant.
7788         * typeprint.c (print_offset_data::indentation): Define.
7789         (print_offset_data::maybe_print_hole, print_offset_data::update)
7790         (print_offset_data::finish): Move from c-typeprint.c and rename.
7791         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7792         (print_spaces_filtered_with_print_options): Update.
7793         (c_print_type_union_field_offset, maybe_print_hole)
7794         (c_print_type_struct_field_offset): Move to typeprint.c and
7795         rename.
7796         (c_type_print_base_struct_union): Update.
7797
7798 2018-06-25  Pedro Alves  <palves@redhat.com>
7799
7800         * gdbthread.h (thread_info_ref, delete_thread)
7801         (delete_thread_silent, first_thread_of_inferior)
7802         (any_thread_of_inferior, switch_to_thread)
7803         (enable_thread_stack_temporaries)
7804         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7805         (get_last_thread_stack_temporary)
7806         (value_in_thread_stack_temporaries, can_access_registers_thread):
7807         Spell out "struct thread_info" instead of just "thread_info".
7808         * inferior.h (notice_new_inferior): Likewise.
7809
7810 2018-06-25  Pedro Alves  <palves@redhat.com>
7811
7812         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7813         pass thread_info pointer to delete_thread.
7814         (windows_nat_target::detach): Pass inferior pointer to
7815         detach_inferior.
7816         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7817         delete_thread.
7818         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7819         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7820         and pass a thread_info pointer to delete_thread.
7821         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7822         pass thread_info pointer to delete_thread.
7823         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7824         delete_thread_silent call.
7825         * procfs.c (procfs_target::detach): Pass inferior pointer to
7826         detach_inferior.
7827         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7828         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7829         delete_thread_silent call.
7830         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7831         pass thread_info pointer to delete_thread.
7832         (windows_nat_target::detach): Pass inferior pointer to
7833         delete_inferior.
7834
7835 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7836
7837         * regcache.c (readable_regcache::read_part): Fix asserts.
7838         (reg_buffer::raw_collect_part): New function.
7839         (regcache::write_part): Fix asserts.
7840         (reg_buffer::raw_supply_part): New function.
7841         (regcache::transfer_regset_register): New helper function.
7842         (regcache::transfer_regset): Call new functions.
7843         (regcache_supply_regset): Use gdb_byte*.
7844         (regcache::supply_regset): Likewise.
7845         (regcache_collect_regset): Likewise.
7846         (regcache::collect_regset): Likewise.
7847         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7848         (reg_buffer::raw_supply_part): Likewise.
7849         (regcache::transfer_regset_register): Likewise.
7850         (regcache::transfer_regset): Use gdb_byte*.
7851
7852 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7853
7854         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7855
7856 2018-06-21  Pedro Alves  <palves@redhat.com>
7857
7858         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7859         instead of a ptid_t.  All callers adjusted.
7860         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7861         adjusted.
7862         (print_ada_task_info, display_current_task_id, task_command_1):
7863         Adjust.
7864         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7865         inferior_thread.
7866         (breakpoint_kind): Adjust.
7867         (remove_breakpoints_pid): Rename to ...
7868         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7869         pointer.  All callers adjusted.
7870         (bpstat_clear_actions): Use inferior_thread.
7871         (get_bpstat_thread): New.
7872         (bpstat_do_actions): Use it.
7873         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7874         to take a thread_info pointer.  All callers adjusted.
7875         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7876         (breakpoint_re_set_thread): Use inferior_thread.
7877         * breakpoint.h (struct inferior): Forward declare.
7878         (bpstat_stop_status): Update.
7879         (remove_breakpoints_pid): Delete.
7880         (remove_breakpoints_inf): New.
7881         * bsd-uthread.c (bsd_uthread_target::wait)
7882         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7883         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7884         (maint_btrace_packet_history_cmd)
7885         (maint_btrace_clear_packet_history_cmd): Adjust.
7886         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7887         inferior_thread.
7888         * cli/cli-interp.c: Include "inferior.h".
7889         * common/refcounted-object.h (struct
7890         refcounted_object_ref_policy): New.
7891         * compile/compile-object-load.c: Include gdbthread.h.
7892         (store_regs): Use inferior_thread.
7893         * corelow.c (core_target::close): Use current_inferior.
7894         (core_target_open): Adjust to use first_thread_of_inferior and use
7895         the current inferior.
7896         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7897         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7898         <thread>: ... this new field.  All references adjusted.
7899         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7900         Take a thread_info pointer instead of a ptid_t.
7901         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7902         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7903         thread_info pointer instead of a ptid_t.
7904         * elfread.c: Include "inferior.h".
7905         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7906         Use inferior_thread.
7907         * eval.c (evaluate_subexp): Likewise.
7908         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7909         inferior_thread.
7910         * gdb_proc_service.h (struct thread_info): Forward declare.
7911         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7912         <thread>: ... this new field.  All references adjusted.
7913         * gdbarch.h, gdbarch.c: Regenerate.
7914         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7915         'thread' parameter.  All implementations and callers adjusted.
7916         * gdbthread.h (thread_info) <set_running>: New method.
7917         (delete_thread, delete_thread_silent): Take a thread_info pointer
7918         instead of a ptid.
7919         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7920         (first_thread_of_process): Delete, replaced by ...
7921         (first_thread_of_inferior): ... this new function.  All callers
7922         adjusted.
7923         (any_live_thread_of_process): Delete, replaced by ...
7924         (any_live_thread_of_inferior): ... this new function.  All callers
7925         adjusted.
7926         (switch_to_thread, switch_to_no_thread): Declare.
7927         (is_executing): Delete.
7928         (enable_thread_stack_temporaries): Update comment.
7929         <enable_thread_stack_temporaries>: Take a thread_info pointer
7930         instead of a ptid_t.  Incref the thread.
7931         <~enable_thread_stack_temporaries>: Decref the thread.
7932         <m_ptid>: Delete
7933         <m_thr>: New.
7934         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7935         (get_last_thread_stack_temporary)
7936         (value_in_thread_stack_temporaries, can_access_registers_thread):
7937         Take a thread_info pointer instead of a ptid_t.  All callers
7938         adjusted.
7939         * infcall.c (get_call_return_value): Use inferior_thread.
7940         (run_inferior_call): Work with thread pointers instead of ptid_t.
7941         (call_function_by_hand_dummy): Work with thread pointers instead
7942         of ptid_t.  Use thread_info_ref.
7943         * infcmd.c (proceed_thread_callback): Access thread's state
7944         directly.
7945         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7946         access thread's state directly.
7947         (continue_command): Use inferior_thread.
7948         (info_program_command): Use find_thread_ptid and access thread
7949         state directly.
7950         (proceed_after_attach_callback): Use thread state directly.
7951         (notice_new_inferior): Take a thread_info pointer instead of a
7952         ptid_t.  All callers adjusted.
7953         (exit_inferior): Take an inferior pointer instead of a pid.  All
7954         callers adjusted.
7955         (exit_inferior_silent): New.
7956         (detach_inferior): Delete.
7957         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7958         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7959         (detach_inferior_command, kill_inferior_command): Use
7960         find_inferior_id instead of valid_gdb_inferior_id and
7961         gdb_inferior_id_to_pid.
7962         (inferior_command): Use inferior and thread pointers.
7963         * inferior.h (struct thread_info): Forward declare.
7964         (notice_new_inferior): Take a thread_info pointer instead of a
7965         ptid_t.  All callers adjusted.
7966         (detach_inferior): Delete declaration.
7967         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7968         instead of a pid.  All callers adjusted.
7969         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7970         (valid_gdb_inferior_id): Delete.
7971         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7972         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7973         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7974         ...
7975         <inf>: ... this new field.
7976         <step_ptid>: Delete, replaced by ...
7977         <step_thread>: ... this new field.
7978         (get_displaced_stepping_state): Take an inferior pointer instead
7979         of a pid.  All callers adjusted.
7980         (displaced_step_in_progress_any_inferior): Adjust.
7981         (displaced_step_in_progress_thread): Take a thread pointer instead
7982         of a ptid_t.  All callers adjusted.
7983         (displaced_step_in_progress, add_displaced_stepping_state): Take
7984         an inferior pointer instead of a pid.  All callers adjusted.
7985         (get_displaced_step_closure_by_addr): Adjust.
7986         (remove_displaced_stepping_state): Take an inferior pointer
7987         instead of a pid.  All callers adjusted.
7988         (displaced_step_prepare_throw, displaced_step_prepare)
7989         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7990         All callers adjusted.
7991         (start_step_over): Adjust.
7992         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7993         displaced step queue.
7994         (do_target_resume): Adjust.
7995         (fetch_inferior_event): Use inferior_thread.
7996         (context_switch, get_inferior_stop_soon): Take an
7997         execution_control_state pointer instead of a ptid_t.  All callers
7998         adjusted.
7999         (switch_to_thread_cleanup): Delete.
8000         (stop_all_threads): Use scoped_restore_current_thread.
8001         * inline-frame.c: Include "gdbthread.h".
8002         (inline_state) <inline_state>: Take a thread pointer instead of a
8003         ptid_t.  All callers adjusted.
8004         <ptid>: Delete, replaced by ...
8005         <thread>: ... this new field.
8006         (find_inline_frame_state): Take a thread pointer instead of a
8007         ptid_t.  All callers adjusted.
8008         (skip_inline_frames, step_into_inline_frame)
8009         (inline_skipped_frames, inline_skipped_symbol): Take a thread
8010         pointer instead of a ptid_t.  All callers adjusted.
8011         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
8012         (inline_skipped_frames, inline_skipped_symbol): Likewise.
8013         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
8014         pointers directly.
8015         * linux-nat.c (get_detach_signal): Likewise.
8016         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
8017         (thread_db_notice_clone): Adjust.
8018         (thread_db_find_new_threads_silently)
8019         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
8020         a thread pointer instead of a ptid_t.  All callers adjusted.
8021         * mi/mi-cmd-var.c: Include "inferior.h".
8022         (mi_cmd_var_update_iter): Update to use thread pointers.
8023         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
8024         inferior directly.
8025         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
8026         out to ...
8027         (mi_output_running): ... this new function.
8028         (mi_on_resume_1): Adjust to use it.
8029         (mi_user_selected_context_changed): Adjust to use inferior_thread.
8030         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
8031         directly.
8032         (interrupt_thread_callback): : Adjust to use thread and inferior
8033         pointers.
8034         * proc-service.c: Include "gdbthread.h".
8035         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
8036         * progspace-and-thread.c: Include "inferior.h".
8037         * progspace.c: Include "inferior.h".
8038         * python/py-exitedevent.c (create_exited_event_object): Adjust to
8039         hold a reference to an inferior_object.
8040         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
8041         inferior_thread.
8042         * python/py-inferior.c (struct inferior_object): Give the type a
8043         tag name instead of a typedef.
8044         (python_on_normal_stop): No need to check if the current thread is
8045         listed.
8046         (inferior_to_inferior_object): Change return type to
8047         inferior_object.  All callers adjusted.
8048         (find_thread_object): Delete, bits factored out to ...
8049         (thread_to_thread_object): ... this new function.
8050         * python/py-infthread.c (create_thread_object): Use
8051         inferior_to_inferior_object.
8052         (thpy_is_stopped): Use thread pointer directly.
8053         (gdbpy_selected_thread): Use inferior_thread.
8054         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8055         field, replaced with ...
8056         <thread>: ... this new field.  All users adjusted.
8057         (btpy_insn_or_gap_new): Drop const.
8058         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8059         callers adjusted.
8060         * python/py-record.c: Include "gdbthread.h".
8061         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8062         a ptid_t.  All callers adjusted.
8063         (gdbpy_current_recording): Use inferior_thread.
8064         * python/py-record.h (recpy_record_object) <ptid>: Delete
8065         field, replaced with ...
8066         <thread>: ... this new field.  All users adjusted.
8067         (recpy_element_object) <ptid>: Delete
8068         field, replaced with ...
8069         <thread>: ... this new field.  All users adjusted.
8070         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8071         a ptid_t.  All callers adjusted.
8072         * python/py-threadevent.c: Include "gdbthread.h".
8073         (get_event_thread): Use thread_to_thread_object.
8074         * python/python-internal.h (struct inferior_object): Forward
8075         declare.
8076         (find_thread_object, find_inferior_object): Delete declarations.
8077         (thread_to_thread_object, inferior_to_inferior_object): New
8078         declarations.
8079         * record-btrace.c: Include "inferior.h".
8080         (require_btrace_thread): Use inferior_thread.
8081         (record_btrace_frame_sniffer)
8082         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8083         (get_thread_current_frame): Use scoped_restore_current_thread and
8084         switch_to_thread.
8085         (get_thread_current_frame): Use thread pointer directly.
8086         (record_btrace_replay_at_breakpoint): Use thread's inferior
8087         pointer directly.
8088         * record-full.c: Include "inferior.h".
8089         * regcache.c: Include "gdbthread.h".
8090         (get_thread_arch_regcache): Use the inferior's address space
8091         directly.
8092         (get_thread_regcache, registers_changed_thread): New.
8093         * regcache.h (get_thread_regcache(thread_info *thread)): New
8094         overload.
8095         (registers_changed_thread): New.
8096         (remote_target) <remote_detach_1>: Swap order of parameters.
8097         (remote_add_thread): <remote_add_thread>: Return the new thread.
8098         (get_remote_thread_info(ptid_t)): New overload.
8099         (remote_target::remote_notice_new_inferior): Use thread pointers
8100         directly.
8101         (remote_target::process_initial_stop_replies): Use
8102         thread_info::set_running.
8103         (remote_target::remote_detach_1, remote_target::detach)
8104         (extended_remote_target::detach): Adjust.
8105         * stack.c (frame_show_address): Use inferior_thread.
8106         * target-debug.h (target_debug_print_thread_info_pp): New.
8107         * target-delegates.c: Regenerate.
8108         * target.c (default_thread_address_space): Delete.
8109         (memory_xfer_partial_1): Use current_inferior.
8110         (target_detach): Use current_inferior.
8111         (target_thread_address_space): Delete.
8112         (generic_mourn_inferior): Use current_inferior.
8113         * target.h (struct target_ops) <thread_address_space>: Delete.
8114         (target_thread_address_space): Delete.
8115         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8116         pointers directly.
8117         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8118         thread pointer instead of a ptid_t.  Adjust all callers.
8119         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8120         (first_thread_of_process): Delete, replaced by ...
8121         (first_thread_of_inferior): ... this new function.  All callers
8122         adjusted.
8123         (any_thread_of_process): Rename to ...
8124         (any_thread_of_inferior): ... this, and take an inferior pointer.
8125         (any_live_thread_of_process): Rename to ...
8126         (any_live_thread_of_inferior): ... this, and take an inferior
8127         pointer.
8128         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8129         (value_in_thread_stack_temporaries)
8130         (get_last_thread_stack_temporary): Take a thread pointer instead
8131         of a ptid_t.  Adjust all callers.
8132         (thread_info::set_running): New.
8133         (validate_registers_access): Use inferior_thread.
8134         (can_access_registers_ptid): Rename to ...
8135         (can_access_registers_thread): ... this, and take a thread
8136         pointer.
8137         (print_thread_info_1): Adjust to compare thread pointers instead
8138         of ptids.
8139         (switch_to_no_thread, switch_to_thread): Make extern.
8140         (scoped_restore_current_thread::~scoped_restore_current_thread):
8141         Use m_thread pointer directly.
8142         (scoped_restore_current_thread::scoped_restore_current_thread):
8143         Use inferior_thread.
8144         (thread_command): Use thread pointer directly.
8145         (thread_num_make_value_helper): Use inferior_thread.
8146         * top.c (execute_command): Use inferior_thread.
8147         * tui/tui-interp.c: Include "inferior.h".
8148         * varobj.c (varobj_create): Use inferior_thread.
8149         (value_of_root_1): Use find_thread_global_id instead of
8150         global_thread_id_to_ptid.
8151
8152 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8153
8154         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8155         possible.
8156         (regcache::write_part): Likewise.
8157         (readable_regcache::cooked_read_part): Update comment.
8158         (readable_regcache::cooked_write_part): Likewise.
8159         * regcache.h: (readable_regcache::read_part): Likewise.
8160         (regcache::write_part): Likewise.
8161
8162 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8163             Dirk Schubert  <dirk.schubert@arm.com>
8164
8165         * aarch64-linux-nat.c (post_attach): New.
8166         (aarch64_linux_nat_target::post_attach): Override post_attach to
8167         record the number of hardware debug registers.
8168
8169 2018-06-20  Tom Tromey  <tom@tromey.com>
8170
8171         * python/py-param.c (add_setshow_generic): Make parameters const.
8172         (parmpy_init): Update.
8173
8174 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8175
8176         * regcache.h (regcache_cooked_read_ftype): Rename to...
8177         (register_read_ftype): ...this, change type to function_view.
8178         (class reg_buffer) <save>: Remove src parameter.
8179         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8180         parameter non-const in first overload.  Remove src parameter in
8181         second overload.
8182         * regcache.c (do_cooked_read): Remove.
8183         (readonly_detached_regcache::readonly_detached_regcache): Make
8184         parameter non-const, adjust call to other constructor.
8185         (reg_buffer::save): Remove src parameter.
8186         * frame.c (do_frame_register_read): Remove.
8187         (frame_save_as_regcache): Use lambda function.
8188         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8189         parameter to ppu2spu_data *.
8190         (ppu2spu_sniffer): Use lambda function.
8191
8192 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8193
8194         * record-full.c (record_full_target::insert_breakpoint): Remove
8195         "struct" keyword, add const.
8196
8197 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8198
8199         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8200         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8201         * configure.ac: Remove AC_PREREQ, add missing quoting.
8202         * gnulib/configure.ac: Modernize usage of
8203         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8204         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8205         (AUTOMAKE_VERSION): Bump to 1.15.1.
8206         * configure: Re-generate.
8207         * config.in: Re-generate.
8208         * aclocal.m4: Re-generate.
8209         * gnulib/aclocal.m4: Re-generate.
8210         * gnulib/config.in: Re-generate.
8211         * gnulib/configure: Re-generate.
8212         * gnulib/import/Makefile.in: Re-generate.
8213
8214 2018-06-19  Pedro Alves  <palves@redhat.com>
8215
8216         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8217         (lookup_minimal_symbol_by_pc_section): ... here with
8218         gdb_assert_not_reached added.
8219
8220 2018-06-19  Pedro Alves  <palves@redhat.com>
8221
8222         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8223         parameter with a block parameter.  Compare location's block symbol
8224         with the frame's block instead of addresses.
8225         (skip_inline_frames): Pass the current block instead of the
8226         frame's address.  Break out as soon as we determine the frame
8227         should not be skipped.
8228
8229 2018-06-18  Tom Tromey  <tom@tromey.com>
8230
8231         * solib-aix.c (solib_aix_get_section_offsets): Return
8232         unique_xmalloc_ptr.
8233         (solib_aix_solib_create_inferior_hook): Update.
8234
8235 2018-06-18  Tom Tromey  <tom@tromey.com>
8236
8237         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8238
8239 2018-06-18  Tom Tromey  <tom@tromey.com>
8240
8241         * solib-frv.c (frv_relocate_main_executable): Use
8242         unique_xmalloc_ptr.
8243         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8244         unique_xmalloc_ptr.
8245
8246 2018-06-18  Tom Tromey  <tom@tromey.com>
8247
8248         * objfiles.h (inhibit_section_map_updates): Update.
8249         (resume_section_map_updates, resume_section_map_updates_cleanup):
8250         Remove.
8251         * solib-svr4.c (svr4_handle_solib_event): Update.
8252         * objfiles.c (inhibit_section_map_updates): Return
8253         scoped_restore_tmpl<int>.
8254         (resume_section_map_updates, resume_section_map_updates_cleanup):
8255         Remove.
8256
8257 2018-06-18  Tom Tromey  <tom@tromey.com>
8258
8259         * valprint.h (read_string): Update.
8260         * valprint.c (read_string): Change type of "buffer".
8261         (val_print_string): Update.
8262         * python/py-value.c (valpy_string): Update.
8263         * language.h (struct language_defn) <la_get_string>: Change
8264         type of "buffer".
8265         (default_get_string, c_get_string): Update.
8266         * language.c (default_get_string): Change type of "buffer".
8267         * guile/scm-value.c (gdbscm_value_to_string): Update.
8268         * c-lang.c (c_get_string): Change type of "buffer".
8269
8270 2018-06-18  Tom Tromey  <tom@tromey.com>
8271
8272         * ser-mingw.c (struct pipe_state_destroyer): New.
8273         (pipe_state_up): New typedef.
8274         (cleanup_pipe_state): Remove.
8275         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8276
8277 2018-06-18  Tom Tromey  <tom@tromey.com>
8278
8279         * rust-lang.h (rust_yyerror): Don't declare.
8280         * rust-lang.c (rust_language_defn): Update.
8281         * rust-exp.y (yyerror): Now static.
8282         * parse.c (parse_exp_in_context_1): Update.
8283         * p-lang.h (p_yyerror): Don't declare.
8284         * p-lang.c (p_language_defn): Update.
8285         * p-exp.y (yyerror): Now static.
8286         * opencl-lang.c (opencl_language_defn): Update.
8287         * objc-lang.c (objc_language_defn): Update.
8288         * m2-lang.h (m2_yyerror): Don't declare.
8289         * m2-lang.c (m2_language_defn): Update.
8290         * m2-exp.y (yyerror): Now static.
8291         * language.h (struct language_defn) <la_error>: Remove.
8292         * language.c (unk_lang_error): Remove.
8293         (unknown_language_defn, auto_language_defn): Remove.
8294         * go-lang.h (go_yyerror): Don't declare.
8295         * go-lang.c (go_language_defn): Update.
8296         * go-exp.y (yyerror): Now static.
8297         * f-lang.h (f_yyerror): Don't declare.
8298         * f-lang.c (f_language_defn): Update.
8299         * f-exp.y (yyerror): Now static.
8300         * d-lang.h (d_yyerror): Don't declare.
8301         * d-lang.c (d_language_defn): Update.
8302         * d-exp.y (yyerror): Now static.
8303         * c-lang.h (c_yyerror): Don't declare.
8304         * c-lang.c (c_language_defn, cplus_language_defn)
8305         (asm_language_defn, minimal_language_defn): Update.
8306         * c-exp.y (yyerror): Now static.
8307         * ada-lang.h (ada_yyerror): Don't declare.
8308         * ada-lang.c (ada_language_defn): Update.
8309         * ada-exp.y (yyerror): Now static.
8310
8311 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8312
8313         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8314         (store_sveregs_to_thread): Likewise.
8315         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8316         (aarch64_linux_store_inferior_registers): Likewise.
8317         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8318         function.
8319         (aarch64_sve_regs_copy_to_regcache): Likewise.
8320         (aarch64_sve_regs_copy_from_regcache): Likewise.
8321         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8322         declaration.
8323         (aarch64_sve_regs_copy_to_regcache): Likewise.
8324         (aarch64_sve_regs_copy_from_regcache): Likewise.
8325         (sve_context): Structure from Linux headers.
8326         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8327         (SVE_SIG_ZREG_SIZE): Likewise.
8328         (SVE_SIG_PREG_SIZE): Likewise.
8329         (SVE_SIG_FFR_SIZE): Likewise.
8330         (SVE_SIG_REGS_OFFSET): Likewise.
8331         (SVE_SIG_ZREGS_OFFSET): Likewise.
8332         (SVE_SIG_ZREG_OFFSET): Likewise.
8333         (SVE_SIG_ZREGS_SIZE): Likewise.
8334         (SVE_SIG_PREGS_OFFSET): Likewise.
8335         (SVE_SIG_PREG_OFFSET): Likewise.
8336         (SVE_SIG_PREGS_SIZE): Likewise.
8337         (SVE_SIG_FFR_OFFSET): Likewise.
8338         (SVE_SIG_REGS_SIZE): Likewise.
8339         (SVE_SIG_CONTEXT_SIZE): Likewise.
8340         (SVE_PT_REGS_MASK): Likewise.
8341         (SVE_PT_REGS_FPSIMD): Likewise.
8342         (SVE_PT_REGS_SVE): Likewise.
8343         (SVE_PT_VL_INHERIT): Likewise.
8344         (SVE_PT_VL_ONEXEC): Likewise.
8345         (SVE_PT_REGS_OFFSET): Likewise.
8346         (SVE_PT_FPSIMD_OFFSET): Likewise.
8347         (SVE_PT_FPSIMD_SIZE): Likewise.
8348         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8349         (SVE_PT_SVE_PREG_SIZE): Likewise.
8350         (SVE_PT_SVE_FFR_SIZE): Likewise.
8351         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8352         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8353         (__SVE_SIG_TO_PT): Likewise.
8354         (SVE_PT_SVE_OFFSET): Likewise.
8355         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8356         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8357         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8358         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8359         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8360         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8361         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8362         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8363         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8364         (SVE_PT_SVE_SIZE): Likewise.
8365         (SVE_PT_SIZE): Likewise.
8366         (HAS_SVE_STATE): New define.
8367
8368 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8369
8370         * nat/aarch64-sve-linux-sigcontext.h: New file.
8371         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8372         new files.
8373         (SVE_VQ_MIN): Likewise.
8374         (SVE_VQ_MAX): Likewise.
8375         (SVE_VL_MIN): Likewise.
8376         (SVE_VL_MAX): Likewise.
8377         (SVE_NUM_ZREGS): Likewise.
8378         (SVE_NUM_PREGS): Likewise.
8379         (sve_vl_valid): Likewise.
8380         (struct user_sve_header): Likewise.
8381
8382 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8383             Richard Bunt <Richard.Bunt@arm.com>
8384
8385         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8386         was requested by GDB.
8387
8388 2018-06-15  Tom de Vries  <tdevries@suse.de>
8389
8390         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8391
8392 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8393
8394         * gnulib/update-gnulib.sh: Print expected versions of
8395         autoconf/aclocal.
8396
8397 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8398
8399         * arch-utils.c (default_type_align): Use type_length_units.
8400         * gdbtypes.c (type_align): Use type_length_units.
8401
8402 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8403
8404         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8405         of 'define' command.
8406
8407 2018-06-14  Tom de Vries  <tdevries@suse.de>
8408
8409         PR cli/22573
8410         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8411         get_no_prettyformat_print_options.
8412
8413 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8414
8415         * sparc-nat.h: Include target.h.
8416         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8417         <fetch_registers>: Remove this argument in function call.
8418         <store_registers>: Remove this argument in function call, remove
8419         extra semicolon.
8420         <low_forget_process>: Call sparc64_forget_process instead of
8421         sparc_forget_process.
8422
8423 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8424
8425         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8426         (procfs_target::make_corefile_notes): Adjust to new
8427         target_read_alloc return type.
8428
8429 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8430             Stephen Roberts  <stephen.roberts@arm.com>
8431
8432         PR gdb/22882
8433         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8434         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8435         Move should_notify_stop local into more inner scope.
8436
8437 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8438             Stephen Roberts  <stephen.roberts@arm.com>
8439
8440         PR gdb/22882
8441         * infrun.c (resume_1): Add call to mark_async_event_handler.
8442
8443 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8444
8445         * infrun.c (do_target_wait): Change old version of $pc printed.
8446
8447 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8448
8449         * dwarf2read.c (read_index_from_section): Rename to...
8450         (read_gdb_index_from_section): ... this, update all callers.
8451         (dwarf2_read_index): Rename to...
8452         (dwarf2_read_gdb_index): ... this, update all callers.
8453
8454 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8455
8456         * hppa-linux-nat.c
8457         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8458         hppa_linux_nat_target::fetch_registers.
8459
8460 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8461
8462         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8463         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8464         (AARCH64_DWARF_SVE_FFR): Likewise.
8465         (AARCH64_DWARF_SVE_P0): Likewise.
8466         (AARCH64_DWARF_SVE_Z0): Likewise.
8467
8468 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8469
8470         * common/common-regcache.h (raw_compare): New function.
8471         * regcache.c (regcache::raw_compare): Likewise.
8472         * regcache.h (regcache::raw_compare): New declaration.
8473
8474 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8475
8476         * common/common-regcache.h (reg_buffer_common): New structure.
8477         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8478         (reg_buffer::raw_supply): Likewise.
8479         (reg_buffer::raw_supply_integer): Likewise.
8480         (reg_buffer::raw_supply_zeroed): Likewise.
8481         (reg_buffer::raw_collect): Likewise.
8482         (reg_buffer::raw_collect_integer): Likewise.
8483         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8484         (reg_buffer::raw_supply): Likewise.
8485         (reg_buffer::raw_supply_integer): Likewise.
8486         (reg_buffer::raw_supply_zeroed): Likewise.
8487         (reg_buffer::raw_collect): Likewise.
8488         (reg_buffer::raw_collect_integer): Likewise.
8489
8490 2018-06-10  Tom Tromey  <tom@tromey.com>
8491
8492         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8493         (class remote_state) <stop_reply_queue>: Now std::vector.
8494         (remote_state::~remote_state)
8495         (remote_target::stop_reply_queue_length): Update.
8496         (struct queue_iter_param, remove_child_of_pending_fork)
8497         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8498         (check_pending_event_prevents_wildcard_vcont_callback)
8499         (remove_stop_reply_for_inferior)
8500         (remove_stop_reply_of_remote_state)
8501         (remote_notif_remove_once_on_match)
8502         (stop_reply_match_ptid_and_ws)
8503         (remote_kill_child_of_pending_fork): Remove.
8504         (remote_target::remove_new_fork_children)
8505         (remote_target::check_pending_events_prevent_wildcard_vcont)
8506         (remote_target::discard_pending_stop_replies)
8507         (remote_target::discard_pending_stop_replies_in_queue)
8508         (remote_target::remote_notif_remove_queued_reply)
8509         (remote_target::queued_stop_reply)
8510         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8511         (remote_target::wait, remote_target::kill_new_fork_children)
8512         (remote_target::async): Update.
8513
8514 2018-06-10  Tom Tromey  <tom@tromey.com>
8515
8516         * record-full.c (record_full_arch_list_cleanups): Remove.
8517         (record_full_message): Use try/catch.
8518         (record_full_wait_cleanups): Remove.
8519         (record_full_wait_1): Use try/catch.
8520         (record_full_restore): Likewise.
8521
8522 2018-06-10  Tom Tromey  <tom@tromey.com>
8523
8524         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8525         declare VEC.  Add constructor.
8526         <in_target_beneath>: Now bool.
8527         (record_full_breakpoints): Now a std::vector, static.
8528         (record_full_sync_record_breakpoints)
8529         (record_full_init_record_breakpoints)
8530         (record_full_target::insert_breakpoint)
8531         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8532
8533 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8534
8535         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8536         * serial.c (serial_interface_lookup): Remove struct keyword.
8537
8538 2018-06-10  Tom Tromey  <tom@tromey.com>
8539
8540         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8541         method.
8542         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8543         a method.
8544         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8545         method.
8546         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8547         "beneath" as a method.
8548         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8549         Use "beneath" as a method.
8550
8551 2018-06-10  Tom Tromey  <tom@tromey.com>
8552
8553         * tracefile.c (struct trace_file_writer_deleter): New.
8554         <operator()>: Rename from trace_file_writer_xfree.
8555         (trace_file_writer_up): New typedef.
8556         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8557
8558 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8559
8560         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8561         <m_registers, m_register_status>: Change type to
8562         std::unique_ptr.
8563         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8564         XCNEWVEC.
8565
8566 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8567
8568         * common/common-regcache.h (enum register_status): Add
8569         underlying type "signed char".
8570         * regcache.h (reg_buffer) <m_register_status>: Change type to
8571         register_status *.
8572         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8573         register_status instead of signed char.
8574         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8575         (reg_buffer::get_register_status): Remove cast.
8576         (readable_regcache::raw_read): Remove cast.
8577         (readable_regcache::cooked_read): Remove cast.
8578
8579 2018-06-09  Tom Tromey  <tom@tromey.com>
8580
8581         * source.c (reverse_search_command, forward_search_command): Use
8582         scoped_fd.
8583
8584 2018-06-09  Tom Tromey  <tom@tromey.com>
8585
8586         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8587         (serial_ops_list): Now static, std::vector.
8588         (serial_interface_lookup, serial_add_interface): Update.
8589
8590 2018-06-09  Tom Tromey  <tom@tromey.com>
8591
8592         * dwarf2read.c (process_cu_includes): Update.
8593         (process_full_comp_unit): Update.
8594         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8595         std::vector.
8596
8597 2018-06-08  Paul Koning  <paul_koning@dell.com>
8598
8599         PR gdb/23252
8600
8601         * python/python.c (do_start_initialization):
8602         Avoid call to internal Python API.
8603         (init__gdb_module): New function.
8604
8605 2018-06-08  Gary Benson <gbenson@redhat.com>
8606
8607         * linux-thread-db.c (valprint.h): New include.
8608         (struct check_thread_db_info): New structure.
8609         (check_thread_db_on_load, tdb_testinfo): New static globals.
8610         (check_thread_db, check_thread_db_callback): New functions.
8611         (try_thread_db_load_1): Run integrity checks if requested.
8612         (maintenance_check_libthread_db): New function.
8613         (_initialize_thread_db): Register "maint check libthread-db"
8614         and "maint set/show check-libthread-db".
8615         * NEWS: Mention the above new commands.
8616
8617 2018-06-08  Tom Tromey  <tom@tromey.com>
8618
8619         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8620         now a method.
8621
8622 2018-06-08  Tom Tromey  <tom@tromey.com>
8623
8624         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8625
8626 2018-06-08  Tom Tromey  <tom@tromey.com>
8627
8628         * common/btrace-common.h (struct btrace_data): Add constructor,
8629         destructor, move assignment operator.
8630         <empty, clear, fini>: New methods.
8631         <format>: Initialize.
8632         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8633         (btrace_data_empty): Don't declare.
8634         * common/btrace-common.c (btrace_data_init): Remove.
8635         (btrace_data::fini): Rename from btrace_data_fini.
8636         (btrace_data::empty): Rename from btrace_data_empty.
8637         (btrace_data::clear): Rename from btrace_data_clear.  Return
8638         bool.
8639         * btrace.h (make_cleanup_btrace_data): Don't declare.
8640         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8641         (parse_xml_btrace): Update.
8642         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8643         (maint_btrace_clear_packet_history_cmd): Update.
8644
8645 2018-06-07  Pedro Alves  <palves@redhat.com>
8646
8647         * target.h (target_ops) <beneath>: Now a method.  All references
8648         updated.
8649         (class target_stack): New.
8650         * target.c (g_target_stack): New.
8651         (g_current_top_target): Delete.
8652         (current_top_target): Get the top target out of g_target_stack.
8653         (target_stack::push, target_stack::unpush): New.
8654         (push_target, unpush_target): Reimplement.
8655         (target_is_pushed): Reimplement in terms of g_target_stack.
8656         (target_ops::beneath, target_stack::find_beneath): New.
8657
8658 2018-06-07  Pedro Alves  <palves@redhat.com>
8659
8660         * target.h (find_target_beneath): Delete declaration.
8661         * target.c (find_target_beneath): Delete definition.
8662         * aix-thread.c: All callers of find_target_beneath adjusted to
8663         call target_ops::beneath instead.
8664         * bsd-uthread.c: Likewise.
8665         * linux-thread-db.c: Likewise.
8666         * ravenscar-thread.c: Likewise.
8667         * sol-thread.c: Likewise.
8668         * spu-multiarch.c: Likewise.
8669
8670 2018-06-07  Pedro Alves  <palves@redhat.com>
8671
8672         * target.h (target_ops) <beneath>: Now a method.  All references
8673         updated.
8674         (target_ops) <m_beneath>: New.
8675         * target.c (target_ops::beneath): New.
8676         * corelow.c: Adjust all references to target_ops::beneath.
8677         * linux-thread-db.c: Likewise.
8678         * make-target-delegates: Likewise.
8679         * record-btrace.c: Likewise.
8680         * record-full.c: Likewise.
8681         * remote.c: Likewise.
8682         * target.c: Likewise.
8683         * target-delegates.c: Regenerate.
8684
8685 2018-06-07  Pedro Alves  <palves@redhat.com>
8686
8687         * target.h (target_stack): Delete.
8688         (current_top_target): Declare function.
8689         * target.c (target_stack): Delete.
8690         (g_current_top_target): New.
8691         (current_top_target): New function.
8692         * auxv.c: Use current_top_target instead of target_stack
8693         throughout.
8694         * avr-tdep.c: Likewise.
8695         * breakpoint.c: Likewise.
8696         * corefile.c: Likewise.
8697         * elfread.c: Likewise.
8698         * eval.c: Likewise.
8699         * exceptions.c: Likewise.
8700         * frame.c: Likewise.
8701         * gdbarch-selftests.c: Likewise.
8702         * gnu-v3-abi.c: Likewise.
8703         * ia64-tdep.c: Likewise.
8704         * ia64-vms-tdep.c: Likewise.
8705         * infcall.c: Likewise.
8706         * infcmd.c: Likewise.
8707         * infrun.c: Likewise.
8708         * linespec.c: Likewise.
8709         * linux-tdep.c: Likewise.
8710         * minsyms.c: Likewise.
8711         * ppc-linux-nat.c: Likewise.
8712         * ppc-linux-tdep.c: Likewise.
8713         * procfs.c: Likewise.
8714         * regcache.c: Likewise.
8715         * remote.c: Likewise.
8716         * rs6000-tdep.c: Likewise.
8717         * s390-linux-nat.c: Likewise.
8718         * s390-tdep.c: Likewise.
8719         * solib-aix.c: Likewise.
8720         * solib-darwin.c: Likewise.
8721         * solib-dsbt.c: Likewise.
8722         * solib-spu.c: Likewise.
8723         * solib-svr4.c: Likewise.
8724         * solib-target.c: Likewise.
8725         * sparc-tdep.c: Likewise.
8726         * sparc64-tdep.c: Likewise.
8727         * spu-tdep.c: Likewise.
8728         * symfile.c: Likewise.
8729         * symtab.c: Likewise.
8730         * target-descriptions.c: Likewise.
8731         * target-memory.c: Likewise.
8732         * target.c: Likewise.
8733         * target.h: Likewise.
8734         * tracefile-tfile.c: Likewise.
8735         * tracepoint.c: Likewise.
8736         * valops.c: Likewise.
8737         * valprint.c: Likewise.
8738         * value.c: Likewise.
8739         * windows-tdep.c: Likewise.
8740         * mi/mi-main.c: Likewise.
8741
8742 2018-06-07  Tom Tromey  <tom@tromey.com>
8743
8744         * valprint.h (build_address_symbolic): Declare.
8745         * printcmd.c (print_address_symbolic): Update.
8746         (build_address_symbolic): Change "name" and "filename" to
8747         std::string.
8748         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8749         Update.
8750         * defs.h (build_address_symbolic): Remove declaration.
8751
8752 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8753
8754         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8755         (aarch64_vnv_type): Add function.
8756         (aarch64_pseudo_register_name): Add V regs for SVE.
8757         (aarch64_pseudo_register_type): Likewise.
8758         (aarch64_pseudo_register_reggroup_p): Likewise.
8759         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8760         (aarch64_pseudo_read_value): Add V regs for SVE.
8761         (aarch64_pseudo_write_2): Use V0 offset for SVE
8762         (aarch64_pseudo_write): Add V regs for SVE.
8763         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8764
8765 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8766
8767         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8768         (sve_vl_from_vq): Likewise.
8769
8770 2018-06-05  Tom Tromey  <tom@tromey.com>
8771
8772         * cli/cli-cmds.c (show_version): Update.
8773         * top.c (print_gdb_version): Add "interactive" parameter.
8774         Update.
8775         * main.c (captured_main_1): Update.
8776         * top.h (print_gdb_version): Add "interactive" parameter and a
8777         comment.
8778
8779 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8780
8781         * common/enum-flags.h: Add trailing semicolon to example in
8782         comment.
8783
8784 2018-06-05  Tom Tromey  <tom@tromey.com>
8785
8786         PR cli/12326:
8787         * NEWS: Add entry about pager.
8788         * utils.c (pagination_disabled_for_command): New global.
8789         (prompt_for_continue): Allow "c" response to prompt.
8790         (reinitialize_more_filter): Clear
8791         pagination_disabled_for_command.
8792         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8793
8794 2018-06-04  Tom Tromey  <tom@tromey.com>
8795
8796         * ada-lang.h (ada_lookup_symbol_list): Update.
8797         * ada-lang.c (resolve_subexp): Update.
8798         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8799         parameter.
8800         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8801         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8802         results parameter to std::vector.
8803         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8804         Update.
8805         * ada-exp.y (block_lookup): Update.
8806         (select_possible_type_sym): Change type of syms.  Remove nsyms
8807         parameter.
8808         (write_var_or_type, write_name_assoc): Update.
8809
8810 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8811
8812         * windows-nat.c (windows_nat_target::xfer_partial): Return
8813         TARGET_XFER_E_IO if we need to delegate to the target beneath
8814         but BENEATH is NULL.
8815
8816 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8817
8818         * Makefile.in (config.status): Add configure.nat as a
8819         dependency.
8820
8821 2018-06-04  Tom Tromey  <tom@tromey.com>
8822
8823         * cp-name-parser.y (cpname_state): Add method declarations.
8824         (HANDLE_QUAL): Update.
8825         (cpname_state::d_grab, cpname_state::fill_comp)
8826         (cpname_state::make_operator, cpname_state::make_dtor)
8827         (cpname_state::make_builtin_type, cpname_state::make_name)
8828         (cpname_state::d_qualify, cpname_state::d_int_type)
8829         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8830         (%union): Move earlier.
8831
8832 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8833
8834         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8835
8836 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8837
8838         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8839         (aarch64_pseudo_write_1): Likewise.
8840         (aarch64_pseudo_read_value): Use helper.
8841         (aarch64_pseudo_write): Likewise.
8842
8843 2018-06-04  Pedro Alves  <palves@redhat.com>
8844
8845         * darwin-nat.c (darwin_ops): Delete.
8846         (darwin_attach_pid): Use get_native_target.
8847
8848 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8849
8850         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8851         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8852
8853 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8854
8855         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8856         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8857         (aarch64_gdbarch_init): Check for SVE.
8858         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8859
8860 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8861
8862         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8863         * aarch64-tdep.h (aarch64_read_description): Likewise.
8864         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8865         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8866         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8867         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8868         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8869
8870 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8871
8872         * value.c (value_fetch_lazy_bitfield): New.
8873         (value_fetch_lazy_memory): New.
8874         (value_fetch_lazy_register): New.
8875         (value_fetch_lazy): Factor out to smaller functions.
8876
8877 2018-06-01  Tom Tromey  <tom@tromey.com>
8878
8879         * cp-name-parser.y (backslashable, represented): Now const.
8880
8881 2018-06-01  Tom Tromey  <tom@tromey.com>
8882
8883         * cp-name-parser.y: Include parser-defs.h.
8884         (parser_fprintf): Remove declaration.
8885
8886 2018-06-01  Tom Tromey  <tom@tromey.com>
8887
8888         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8889         %parse-param.
8890         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8891         (global_result): Remove globals.
8892         (struct cpname_state): New.
8893         (yyparse): Don't declare.
8894         (yylex, yyerror): Move declarations after %union.
8895         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8896         (make_name): Add state parameter.
8897         Update all callers.
8898         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8899         parameter.
8900         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8901         Update.
8902         (yylex): Add lvalp, state parameters.
8903         (yyerror): Add state parameter.
8904         (cp_demangled_name_to_comp): Update.
8905
8906 2018-06-01  Tom Tromey  <tom@tromey.com>
8907
8908         * cp-name-parser.y (parser_fprintf): Declare.
8909         (GDB_YY_REMAP_PREFIX): Define.
8910         Include yy-remap.h.  Don't redefine yy* identifiers.
8911
8912 2018-06-01  Tom Tromey  <tom@tromey.com>
8913
8914         * python/py-type.c (typy_legacy_template_argument): Update.
8915         * cp-support.h (cp_demangled_name_to_comp): Update.
8916         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8917         parameter to be a "std::string *".
8918         (main): Update.
8919
8920 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8921
8922         * ada-lex.l: Include "diagnostics.h" instead of
8923         "common/diagnostics.h".
8924         * unittests/environ-selftests.c: Likewise.
8925         * common/diagnostics.h: Moved to ../include.
8926
8927 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8928
8929         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8930         to language_mode_manual while calling breakpoint_re_set_one.
8931
8932 2018-06-01  Tom Tromey  <tom@tromey.com>
8933
8934         * valops.c (value_cast_structs, destructor_name_p): Update.
8935         * symtab.c (gdb_mangle_name): Update.
8936         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8937         Update.
8938         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8939         (pascal_object_print_value_fields, pascal_object_print_value):
8940         Update.
8941         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8942         * linespec.c (find_methods): Update.
8943         * gdbtypes.h (type_name_no_tag): Remove.
8944         (type_name_or_error): Rename from type_name_no_tag_or_error.
8945         * gdbtypes.c (type_name_no_tag): Remove.
8946         (type_name_or_error): Rename from type_name_no_tag_or_error.
8947         (lookup_struct_elt_type, check_typedef): Update.
8948         * expprint.c (print_subexp_standard): Update.
8949         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8950         * d-namespace.c (d_lookup_nested_symbol): Update.
8951         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8952         (cp_print_class_member): Update.
8953         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8954         * completer.c (add_struct_fields): Update.
8955         * c-typeprint.c (cp_type_print_derivation_info)
8956         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8957         Update.
8958         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8959         (ada_prefer_type, ada_is_exception_sym): Update.
8960
8961 2018-06-01  Tom Tromey  <tom@tromey.com>
8962
8963         * valops.c (enum_constant_from_type, value_namespace_elt)
8964         (value_maybe_namespace_elt): Update.
8965         * valarith.c (find_size_for_pointer_math): Update.
8966         * target-descriptions.c (make_gdb_type): Update.
8967         * symmisc.c (print_symbol): Update.
8968         * stabsread.c (define_symbol, read_type)
8969         (complain_about_struct_wipeout, add_undefined_type)
8970         (cleanup_undefined_types_1): Update.
8971         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8972         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8973         (rust_internal_print_type, rust_composite_type)
8974         (rust_evaluate_funcall, rust_evaluate_subexp)
8975         (rust_inclusive_range_type_p): Update.
8976         * python/py-type.c (typy_get_tag): Update.
8977         * p-typeprint.c (pascal_type_print_base): Update.
8978         * mdebugread.c (parse_symbol, parse_type): Update.
8979         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8980         Update.
8981         * guile/scm-type.c (gdbscm_type_tag): Update.
8982         * go-lang.c (sixg_string_p): Update.
8983         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8984         Update.
8985         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8986         (TYPE_TAG_NAME): Remove.
8987         * gdbtypes.c (type_name_no_tag): Simplify.
8988         (check_typedef, check_types_equal, recursive_dump_type)
8989         (copy_type_recursive, arch_composite_type): Update.
8990         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8991         in summary mode when needed.
8992         * eval.c (evaluate_funcall): Update.
8993         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8994         (process_structure_scope, read_enumeration_type)
8995         (read_namespace_type, read_module_type, determine_prefix): Update.
8996         * cp-support.c (inspect_type): Update.
8997         * coffread.c (process_coff_symbol, decode_base_type): Update.
8998         * c-varobj.c (c_is_path_expr_parent): Update.
8999         * c-typeprint.c (c_type_print_base_struct_union): Update.
9000         (c_type_print_base_1): Update.  Print struct/class/union/enum in
9001         summary when using C language.
9002         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
9003         (gen_maybe_namespace_elt): Update.
9004         * ada-lang.c (ada_type_name): Simplify.
9005         (empty_record, ada_template_to_fixed_record_type_1)
9006         (template_to_static_fixed_type)
9007         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
9008
9009 2018-06-01  Tom Tromey  <tom@tromey.com>
9010
9011         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
9012         c_print_type.
9013         * c-typeprint.c (c_print_type_1): Add "language" parameter.
9014         (c_print_type): Update.
9015         (c_print_type): New overload.
9016         (c_type_print_varspec_prefix, c_type_print_args)
9017         (c_type_print_varspec_suffix, c_print_type_no_offsets)
9018         (c_type_print_base_struct_union, c_type_print_base_1)
9019         (cp_type_print_method_args): Add "language" parameter.
9020         (c_type_print_base): Update.
9021         * c-lang.h (c_print_type): Add new overload.
9022
9023 2018-06-01  Tom Tromey  <tom@tromey.com>
9024
9025         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
9026         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
9027
9028 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
9029
9030         * aarch64-tdep.c (aarch64_sve_register_names): New const
9031         var.
9032         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
9033         (AARCH64_SVE_Z_REGS_NUM): New define.
9034         (AARCH64_SVE_P_REGS_NUM): Likewise.
9035         (AARCH64_SVE_NUM_REGS): Likewise.
9036
9037 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
9038
9039         * nat/linux-ptrace.h [__alpha__]
9040         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
9041         definitions.
9042
9043 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
9044
9045         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9046         the endianness selected.
9047         * NEWS: Document `set endian auto' mode operation update.
9048
9049 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9050
9051         * Makefile.in: Add new header.
9052         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9053         (sve_vl_from_vg): Likewise.
9054         (sve_vq_from_vl): Likewise.
9055         (sve_vl_from_vq): Likewise.
9056         (sve_vq_from_vg): Likewise.
9057         (sve_vg_from_vq): Likewise.
9058         * configure.nat: Add new c file.
9059         * nat/aarch64-sve-linux-ptrace.c: New file.
9060         * nat/aarch64-sve-linux-ptrace.h: New file.
9061
9062 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9063
9064         * aarch64-linux-nat.c (aarch64_linux_read_description):
9065         Add parmeter zero.
9066         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9067         Likewise.
9068         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9069         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9070         (aarch64_gdbarch_init): Add parmeter zero.
9071         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9072         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9073         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9074         parmeter.
9075         * doc/gdb.texinfo: Describe SVE feature
9076         * features/aarch64-sve.c: New file.
9077
9078 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9079
9080         PR gdb/23210
9081         * gdbarch.sh (significant_addr_bit): Default to zero when
9082         not set by target architecture.
9083         * gdbarch.c: Re-generated.
9084         * utils.c (address_significant): Update.
9085
9086 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9087
9088         * stack.c (func_command): Remove trailing newline in call to error.
9089
9090 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9091
9092         * regcache.h (regcache_raw_collect): Remove, update callers to
9093         use regcache::raw_collect.
9094         * regcache.c (regcache_raw_collect): Remove.
9095
9096 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9097
9098         * regcache.h (regcache_raw_supply): Remove, update callers to
9099         use detached_regcache::raw_supply.
9100         * regcache.c (regcache_raw_supply): Remove.
9101
9102 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9103
9104         * regcache.h (regcache_cooked_write_part): Remove, update
9105         callers to use regcache::cooked_write_part.
9106         * regcache.c (regcache_cooked_write_part): Remove.
9107
9108 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9109
9110         * regcache.h (regcache_cooked_read_part): Remove, update callers
9111         to use readable_regcache::cooked_read_part.
9112         * regcache.c (regcache_cooked_read_part): Remove.
9113
9114 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9115
9116         * regcache.h (regcache_cooked_read_value): Remove, update
9117         callers to use readable_regcache::cooked_read_value.
9118         * regcache.c (regcache_cooked_read_value): Remove.
9119
9120 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9121
9122         * regcache.h (regcache_cooked_write): Remove, update callers to
9123         use regcache::cooked_write.
9124         * regcache.c (regcache_cooked_write): Remove.
9125
9126 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9127
9128         * regcache.h (regcache_invalidate): Remove, update callers to
9129         use detached_regcache::invalidate instead.
9130         * regcache.c (regcache_invalidate): Remove.
9131
9132 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9133
9134         * regcache.h (regcache_raw_write_part): Remove, update callers
9135         to use regcache::raw_write_part instead.
9136         * regcache.c (regcache_raw_write_part): Remove.
9137
9138 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9139
9140         * regcache.h (regcache_raw_read_part): Remove, update callers to
9141         use readable_regcache::raw_read_part instead.
9142         * regcache.c (regcache_raw_read_part): Remove.
9143
9144 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9145
9146         * regcache.h (regcache_cooked_read): Remove, update callers to
9147         use readable_regcache::cooked_read instead.
9148         * regcache.c (regcache_cooked_read): Remove.
9149
9150 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9151
9152         * regcache.h (regcache_raw_write): Remove, update callers to use
9153         regcache::raw_write instead.
9154         * regcache.c (regcache_raw_write): Remove.
9155
9156 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9157
9158         * regcache.h (regcache_raw_read): Remove, update callers to use
9159         readable_regcache::raw_read instead.
9160         * regcache.c (regcache_raw_read): Remove.
9161
9162 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9163
9164         * regcache.h (regcache_raw_update): Remove, update callers to
9165         use readable_regcache::raw_update instead.
9166         * regcache.c (regcache_raw_update): Remove.
9167
9168 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9169
9170         * regcache.h (regcache_register_status): Remove, update callers
9171         to use reg_buffer::get_register_status directly instead.
9172         * regcache.c (regcache_register_status): Remove.
9173
9174 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9175
9176         * regcache.h (regcache_get_ptid): Remove, update all callers to
9177         call regcache::ptid instead.
9178         * regcache.c (regcache_get_ptid): Remove.
9179
9180 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9181
9182         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9183
9184 2018-05-30  Pedro Alves  <palves@redhat.com>
9185
9186         * common/common-exceptions.h (exception_rethrow): Use
9187         ATTRIBUTE_NORETURN.
9188
9189 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9190
9191         * breakpoint.c (print_solib_event, check_status_catch_solib):
9192         Remove struct keyword in range-based for loops.
9193         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9194         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9195         Likewise.
9196         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9197         Likewise.
9198         * symfile.c (addr_info_make_relative): Likewise.
9199         * thread.c (value_in_thread_stack_temporaries): Likewise.
9200
9201 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9202
9203         PR gdb/16841
9204         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9205         aggregate type to get its real type before accessing it.
9206
9207 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9208
9209         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9210         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9211         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9212         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9213         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9214         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9215         * printcmd.c (info_address_command): Likewise.
9216
9217 2018-05-29  Tom Tromey  <tom@tromey.com>
9218
9219         * windows-nat.c (handle_exception): Update fall-through comment.
9220
9221 2018-05-29  Tom Tromey  <tom@tromey.com>
9222
9223         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9224         (struct program_space) <added_solibs>: Now a std::vector.
9225         * breakpoint.c (print_solib_event): Update.
9226         (check_status_catch_solib): Update.
9227         * progspace.c (clear_program_space_solib_cache): Update.
9228         * solib.c (update_solib_list): Update.
9229
9230 2018-05-29  Tom Tromey  <tom@tromey.com>
9231
9232         * python/py-type.c (typy_richcompare): Update.
9233         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9234         * gdbtypes.h (types_deeply_equal): Return bool.
9235         (types_equal): Likewise.
9236         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9237         declare VEC.
9238         (check_types_equal): Change worklist to std::vector.  Return
9239         bool.
9240         (struct type_equality_entry): Add constructor.
9241         (compare_maybe_null_strings): Return bool.
9242         (check_types_worklist): Return bool.  Change worklist to
9243         std::vector.
9244         (types_deeply_equal): Use std::vector.
9245         (types_equal): Return bool.
9246         (compare_maybe_null_strings): Simplify.
9247
9248 2018-05-29  Tom Tromey  <tom@tromey.com>
9249
9250         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9251
9252 2018-05-29  Tom Tromey  <tom@tromey.com>
9253
9254         * objc-lang.h: Don't include cp-support.h.
9255         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9256         declare VEC.
9257
9258 2018-05-27  Tom Tromey  <tom@tromey.com>
9259
9260         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9261
9262 2018-05-25  Tom Tromey  <tom@tromey.com>
9263
9264         * value.c (value::location): Initialize.
9265
9266 2018-05-25  Tom Tromey  <tom@tromey.com>
9267
9268         * dbxread.c (init_bincl_list): Remove.
9269         (bincl_list): Now a std::vector.
9270         (bincls_allocated, next_bincl): Remove.
9271         (free_bincl_list, do_free_bincl_list_cleanup)
9272         (make_cleanup_free_bincl_list): Remove.
9273         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9274         unique_xmalloc_ptr.
9275         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9276         (struct header_file_location): Add constructor.
9277         (add_bincl_to_list): Remove.
9278
9279 2018-05-25  Tom Tromey  <tom@tromey.com>
9280
9281         * tui/tui.c (tui_enable): Update.
9282         * mi/mi-interp.c (mi_interp::init): Update.
9283         * interps.h (class interp) <name>: New method.
9284         <m_name>: Rename from name.
9285         (~scoped_restore_interp): Update.
9286         * interps.c (interp::interp): Update.
9287         (interp_add, interp_set, interp_lookup_existing)
9288         (current_interp_named_p): Update.
9289
9290 2018-05-25  Tom Tromey  <tom@tromey.com>
9291
9292         * interps.c (interp_name): Remove.
9293         * mi/mi-interp.c (mi_interp::init): Update.
9294         * interps.h (interp_name): Remove.
9295         (~scoped_restore_interp): Update.
9296         * tui/tui.c (tui_enable): Update.
9297
9298 2018-05-25  Tom Tromey  <tom@tromey.com>
9299
9300         * utils.c (fputs_maybe_filtered): Update.
9301         * linespec.c (decode_line_full): Update.
9302         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9303         (mi_print_breakpoint_for_event, mi_solib_loaded)
9304         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9305         (mi_user_selected_context_changed): Update.
9306         * mi/mi-main.c (mi_execute_command): Update.
9307         * cli/cli-script.c (execute_control_command): Update.
9308         * python/python.c (execute_gdb_command): Update.
9309         * solib.c (info_sharedlibrary_command): Update.
9310         * interps.c (interp_ui_out): Remove.
9311         * interps.h (interp_ui_out): Remove.
9312
9313 2018-05-25  Tom Tromey  <tom@tromey.com>
9314
9315         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9316         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9317         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9318
9319 2018-05-25  Tom Tromey  <tom@tromey.com>
9320
9321         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9322         * interps.c (interp_exec): Use scoped_restore.
9323
9324 2018-05-25  Tom Tromey  <tom@tromey.com>
9325
9326         * remote.c (remote_target::remote_file_get): Use
9327         gdb::byte_vector.
9328         (remote_target::remote_file_put): Likewise.
9329
9330 2018-05-25  Tom Tromey  <tom@tromey.com>
9331
9332         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9333         a std::string.
9334         (get_pe_section_index, add_pe_exported_sym): Update.
9335         (read_pe_exported_syms): Use gdb::def_vector.
9336
9337 2018-05-25  Tom Tromey  <tom@tromey.com>
9338
9339         * frame.c (remove_prev_frame): Remove.
9340         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9341
9342 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9343
9344         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9345         Remove prototypes.
9346         * mips-linux-nat.c (supply_fpregset): Always call
9347         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9348         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9349         `mips_fill_fpregset'.
9350         * mips-linux-tdep.c (mips_supply_fpregset)
9351         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9352         (mips_fill_fpregset_wrapper): Remove functions.
9353         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9354         (mips_linux_fpregset): Remove variable.
9355         (mips_linux_iterate_over_regset_sections): Use
9356         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9357         (mips_linux_o32_sigframe_init): Remove comment.
9358
9359 2018-05-25  Pedro Alves  <palves@redhat.com>
9360
9361         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9362         (struct readahead_cache, struct packet_reg, struct
9363         remote_arch_state, class remote_state): Move higher up in the
9364         file.
9365         (remote_target::m_remote_state): Now an object instead of a pointer.
9366         (remote_target::get_remote_state): Adjust.
9367
9368 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9369
9370         * stack.c (select_and_print_frame): Delete.
9371         (struct function_bounds): Move struct within function.
9372         (func_command): Most content moved into new function
9373         find_frame_for_function, use new function, print result, add
9374         function comment.
9375         (find_frame_for_function): New function, now returns a result.
9376
9377 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9378
9379         * stack.c (iterate_over_block_arg_vars): Fix comment.
9380         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9381
9382 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9383
9384         PR gdb/23203
9385         * frame.c
9386         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9387         Define.
9388         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9389         Define.
9390         * frame.h (class scoped_restore_selected_frame): New class.
9391         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9392         of any exception, use scoped_restore_selected_frame to restore the
9393         frame instead.
9394
9395 2018-05-24  Pedro Alves  <palves@redhat.com>
9396
9397         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9398         override.
9399
9400 2018-05-23  Tom Tromey  <tom@tromey.com>
9401
9402         * complaints.c (struct complaints): Remove.
9403         (symfile_complaint_book): Remove.
9404         (series): New global.
9405         (complaint_internal): Update.
9406         (clear_complaints): Update.
9407
9408 2018-05-23  Tom Tromey  <tom@tromey.com>
9409
9410         * complaints.c (counters): New global.
9411         (struct complain): Remove.
9412         (struct complaints) <root>: Remove.
9413         (complaint_sentinel): Remove.
9414         (symfile_complaint_book): Update.
9415         (find_complaint) Remove.
9416         (complaint_internal, clear_complaints): Update.
9417
9418 2018-05-23  Tom Tromey  <tom@tromey.com>
9419
9420         * complaints.c (struct complain) <file, line>: Remove.
9421         (find_complaint): Remove file, line parameters.
9422         (complaint_internal): Update.
9423
9424 2018-05-23  Tom Tromey  <tom@tromey.com>
9425
9426         * complaints.c (vcomplaint): Remove.
9427         (complaint_internal) Merge in contents of vcomplaint.
9428
9429 2018-05-23  Tom Tromey  <tom@tromey.com>
9430
9431         * complaints.c (struct complaints) <explanation>: Remove.
9432         (symfile_explanations): Remove.
9433         (symfile_complaint_book): Update.
9434         (vcomplaint): Update.
9435         (struct explanation): Remove.
9436
9437 2018-05-23  Tom Tromey  <tom@tromey.com>
9438
9439         * complaints.c (symfile_complaints): Remove.
9440         (complaint_internal): Remove "complaints" parameter.
9441         (clear_complaints, vcomplaint): Remove "c" parameter.
9442         (get_complaints): Remove.
9443         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9444         (dwarf2_debug_line_missing_file_complaint)
9445         (dwarf2_debug_line_missing_end_sequence_complaint)
9446         (dwarf2_complex_location_expr_complaint)
9447         (dwarf2_const_value_length_mismatch_complaint)
9448         (dwarf2_section_buffer_overflow_complaint)
9449         (dwarf2_macro_malformed_definition_complaint)
9450         (dwarf2_invalid_attrib_class_complaint)
9451         (create_addrmap_from_index, dw2_symtab_iter_next)
9452         (dw2_expand_marked_cus)
9453         (dw2_debug_names_iterator::find_vec_in_debug_names)
9454         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9455         (create_debug_type_hash_table, init_cutu_and_read_dies)
9456         (partial_die_parent_scope, add_partial_enumeration)
9457         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9458         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9459         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9460         (create_cus_hash_table, create_dwp_hash_table)
9461         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9462         (dwarf2_rnglists_process, dwarf2_ranges_process)
9463         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9464         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9465         (handle_struct_member_die, process_structure_scope)
9466         (read_array_type, read_common_block, read_module_type)
9467         (read_tag_pointer_type, read_typedef, read_base_type)
9468         (read_subrange_type, load_partial_dies, partial_die_info::read)
9469         (partial_die_info::read, partial_die_info::read)
9470         (partial_die_info::read, read_checked_initial_length_and_offset)
9471         (dwarf2_string_attr, read_formatted_entries)
9472         (dwarf_decode_line_header)
9473         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9474         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9475         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9476         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9477         (get_signatured_type, get_DW_AT_signature_type)
9478         (decode_locdesc, file_file_name, consume_improper_spaces)
9479         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9480         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9481         (dwarf2_symbol_mark_computed, set_die_type)
9482         (read_attribute_value): Update.
9483         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9484         Update.
9485         * dbxread.c (unknown_symtype_complaint)
9486         (lbrac_mismatch_complaint, repeated_header_complaint)
9487         (set_namestring, function_outside_compilation_unit_complaint)
9488         (read_dbx_symtab, process_one_symbol): Update.
9489         * gdbtypes.c (stub_noname_complaint): Update.
9490         * windows-nat.c (handle_unload_dll): Update.
9491         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9492         (decode_base_type): Update.
9493         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9494         (eb_complaint, record_include_begin, record_include_end)
9495         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9496         (process_xcoff_symbol, read_symbol)
9497         (function_outside_compilation_unit_complaint)
9498         (scan_xcoff_symtab): Update.
9499         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9500         * buildsym.c (finish_block_internal, make_blockvector)
9501         (end_symtab_get_static_block, augment_type_symtab): Update.
9502         * dtrace-probe.c (dtrace_process_dof)
9503         (dtrace_static_probe_ops::get_probes): Update.
9504         * complaints.h (struct complaint): Don't declare.
9505         (symfile_complaints): Remove.
9506         (complaint_internal): Remove "complaints" parameter.
9507         (complaint): Likewise.
9508         (clear_complaints): Likewise.
9509         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9510         (reread_symbols): Update.
9511         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9512         (dwarf2_frame_cache, decode_frame_entry): Update.
9513         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9514         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9515         (info_selectors_command): Update.
9516         * macrotab.c (macro_include, check_for_redefinition)
9517         (macro_undef): Update.
9518         * objfiles.c (filter_overlapping_sections): Update.
9519         * stabsread.c (invalid_cpp_abbrev_complaint)
9520         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9521         (define_symbol, error_type, read_type, rs6000_builtin_type)
9522         (stabs_method_name_from_physname, read_member_functions)
9523         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9524         (attach_fields_to_type, complain_about_struct_wipeout)
9525         (read_range_type, read_args, common_block_start)
9526         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9527         Update.
9528         * mdebugread.c (index_complaint, unknown_ext_complaint)
9529         (basic_type_complaint, bad_tag_guess_complaint)
9530         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9531         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9532         (parse_procedure, parse_lines)
9533         (function_outside_compilation_unit_complaint)
9534         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9535         (bad_tag_guess_complaint, reg_value_complaint): Update.
9536         * cp-support.c (demangled_name_complaint): Update.
9537         * macroscope.c (sal_macro_scope): Update.
9538         * dwarf-index-write.c (class debug_names): Update.
9539
9540 2018-05-23  Tom Tromey  <tom@tromey.com>
9541
9542         * complaints.c (clear_complaints): Remove "noisy" parameter.
9543         * complaints.h (clear_complaints): Update.
9544         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9545         (reread_symbols): Update.
9546
9547 2018-05-23  Tom Tromey  <tom@tromey.com>
9548
9549         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9550         SUBSEQUENT_MESSAGE.
9551         (vcomplaint, clear_complaints): Update.
9552         (symfile_explanations): Remove some messages.
9553
9554 2018-05-23  Tom Tromey  <tom@tromey.com>
9555
9556         * complaints.c (internal_complaint): Remove.
9557         * complaints.h (internal_complaint): Remove.
9558
9559 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9560
9561         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9562
9563 2018-05-22  Pedro Alves  <palves@redhat.com>
9564
9565         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9566         (remote_fileio_badfd, remote_fileio_return_errno)
9567         (remote_fileio_return_success, remote_fileio_func_open)
9568         (remote_fileio_func_open, remote_fileio_func_close)
9569         (remote_fileio_func_read, remote_fileio_func_write)
9570         (remote_fileio_func_lseek, remote_fileio_func_rename)
9571         (remote_fileio_func_unlink, remote_fileio_func_stat)
9572         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9573         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9574         remote_target parameter.
9575         (remote_fio_func_map) <func>: Add remote_target parameter.
9576         (do_remote_fileio_request, remote_fileio_request):
9577         * remote-fileio.h (remote_fileio_request):
9578         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9579         remote_target parameter.
9580         (remote_notif_process, handle_notification): Adjust to pass down
9581         the remote.
9582         (remote_notif_state_allocate): Add remote_target parameter.  Save
9583         it.
9584         * remote-notif.h (struct remote_target): Forward declare.
9585         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9586         remote_target parameter.
9587         (struct remote_notif_state) <remote>: New field.
9588         (remote_notif_ack, remote_notif_parse): Add remote_target
9589         parameter.
9590         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9591         remote_target parameter.
9592         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9593         (threads_listing_context, rmt_thread_action, protocol_feature)
9594         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9595         (packet_result, struct threads_listing_context, remote_state):
9596         Move definitions and declarations higher up.
9597         (remote_target) <~remote_target>: Declare.
9598         (remote_download_command_source, remote_file_put, remote_file_get)
9599         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9600         (remote_hostio_pread_vFile, remote_hostio_send_command)
9601         (remote_hostio_set_filesystem, remote_hostio_open)
9602         (remote_hostio_close, remote_hostio_unlink, remote_state)
9603         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9604         (get_memory_write_packet_size, get_memory_read_packet_size)
9605         (append_pending_thread_resumptions, remote_detach_1)
9606         (append_resumption, remote_resume_with_vcont)
9607         (add_current_inferior_and_thread, wait_ns, wait_as)
9608         (process_stop_reply, remote_notice_new_inferior)
9609         (process_initial_stop_replies, remote_add_thread)
9610         (btrace_sync_conf, remote_btrace_maybe_reopen)
9611         (remove_new_fork_children, kill_new_fork_children)
9612         (discard_pending_stop_replies, stop_reply_queue_length)
9613         (check_pending_events_prevent_wildcard_vcont)
9614         (discard_pending_stop_replies_in_queue, stop_reply)
9615         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9616         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9617         (remote_interrupt_as, remote_interrupt_ns)
9618         (remote_get_noisy_reply, remote_query_attached)
9619         (remote_add_inferior, remote_current_thread, get_current_thread)
9620         (set_thread, set_general_thread, set_continue_thread)
9621         (set_general_process, write_ptid)
9622         (remote_unpack_thread_info_response, remote_get_threadinfo)
9623         (parse_threadlist_response, remote_get_threadlist)
9624         (remote_threadlist_iterator, remote_get_threads_with_ql)
9625         (remote_get_threads_with_qxfer)
9626         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9627         (get_offsets, remote_check_symbols, remote_supported_packet)
9628         (remote_query_supported, remote_packet_size)
9629         (remote_serial_quit_handler, remote_detach_pid)
9630         (remote_vcont_probe, remote_resume_with_hc)
9631         (send_interrupt_sequence, interrupt_query)
9632         (remote_notif_get_pending_events, fetch_register_using_p)
9633         (send_g_packet, process_g_packet, fetch_registers_using_g)
9634         (store_register_using_P, store_registers_using_G)
9635         (set_remote_traceframe, check_binary_download)
9636         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9637         (remote_xfer_live_readonly_partial, remote_read_bytes)
9638         (remote_send_printf, remote_flash_write, readchar)
9639         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9640         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9641         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9642         (extended_remote_disable_randomization, extended_remote_run)
9643         (send_environment_packet, extended_remote_environment_support)
9644         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9645         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9646         (packet_command): Now methods of ...
9647         (remote_target): ... this class.
9648         (m_remote_state) <remote_target>: New field.
9649         (struct remote_state) <stop_reply_queue,
9650         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9651         fields.
9652         (remote_state::remote_state): Allocate stop_reply_queue.
9653         (remote_state): Delete global.
9654         (get_remote_state_raw): Delete.
9655         (remote_target::get_remote_state): Allocate m_remote_state on
9656         demand.
9657         (get_current_remote_target): New.
9658         (remote_ops, extended_remote_ops): Delete.
9659         (wait_forever_enabled_p, remote_async_inferior_event_token):
9660         Delete, moved to struct remote_state.
9661         (remote_target::close): Delete self.  Destruction bits split to
9662         ...
9663         (remote_target::~remote_target): ... this.
9664         (show_memory_packet_size): Adjust to use
9665         get_current_remote_target.
9666         (struct protocol_feature) <func>: Add remote_target parameter.
9667         All callers adjusted.
9668         (curr_quit_handler_target): New.
9669         (remote_serial_quit_handler): Reimplement.
9670         (remote_target::open_1): Adjust to use get_current_remote_target.
9671         Heap-allocate remote_target/extended_remote_target instances.
9672         (vcont_builder::vcont_builder): Add remote_target parameter, and
9673         save it in m_remote.  All callers adjusted.
9674         (vcont_builder::m_remote): New field.
9675         (vcont_builder::restart, vcont_builder::flush)
9676         (vcont_builder::push_action): Use it.
9677         (remote_target::commit_resume): Use it.
9678         (struct queue_iter_param) <remote>: New field.
9679         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9680         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9681         (check_pending_event_prevents_wildcard_vcont_callback)
9682         (remote_target::check_pending_events_prevent_wildcard_vcont)
9683         (remote_target::discard_pending_stop_replies)
9684         (remote_target::discard_pending_stop_replies_in_queue)
9685         (remote_target::remote_notif_remove_queued_reply): Fill in
9686         'remote' field.
9687         (remote_notif_get_pending_events): New.
9688         (remote_target::readchar, remote_target::remote_serial_write):
9689         Save/restore curr_quit_handler_target.
9690         (putpkt): New.
9691         (kill_new_fork_children): Fill in 'remote' field.
9692         (packet_command): Use get_current_remote_target, defer to
9693         remote_target method of same name.
9694         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9695         parameter, and save it in m_remote.  All callers adjusted.
9696         (scoped_remote_fd::release): Use m_remote.
9697         (scoped_remote_fd::m_remote): New field.
9698         (remote_file_put, remote_file_get, remote_file_delete): Use
9699         get_current_remote_target, defer to remote_target method of same
9700         name.
9701         (remote_btrace_reset): Add remote_state paremeter.  Update all
9702         callers.
9703         (remote_async_inferior_event_handler). Pass down 'data'.
9704         (remote_new_objfile): Use get_current_remote_target.
9705         (remote_target::vcont_r_supported): New.
9706         (set_range_stepping): Use get_current_remote_target and
9707         remote_target::vcont_r_supported.
9708         (_initialize_remote): Don't allocate 'remote_state' and
9709         'stop_reply_queue' globals.
9710         * remote.h (struct remote_target): Forward declare.
9711         (getpkt, putpkt, remote_notif_get_pending_events): Add
9712         'remote_target' parameter.
9713
9714 2018-05-22  Pedro Alves  <palves@redhat.com>
9715
9716         * remote.c (vcont_builder): Now a class.  Make all data members
9717         private.
9718         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9719         Declare methods.
9720         (vcont_builder_restart): Rename to ...
9721         (vcont_builder::restart): ... this.
9722         (vcont_builder_flush): Rename to ...
9723         (vcont_builder::flush): ... this.
9724         (vcont_builder_push_action): Rename to ...
9725         (vcont_builder::push_action): ... this.
9726         (remote_target::commit_resume): Adjust.
9727
9728 2018-05-22  Pedro Alves  <palves@redhat.com>
9729
9730         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9731         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9732         (get_fixed_memory_packet_size): New.
9733         (get_memory_packet_size): Use it.
9734         (set_memory_packet_size): Don't override the config size with
9735         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9736         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9737         Don't refer to get_memory_packet_size if not connected to a remote
9738         target.  Show "(default)" if configured size is 0.
9739
9740 2018-05-22  Pedro Alves  <palves@redhat.com>
9741
9742         * remote.c (remote_target::mourn_inferior): Move
9743         discard_pending_stop_replies call here from ...
9744         (_initialize_remote): ... here.
9745
9746 2018-05-22  Pedro Alves  <palves@redhat.com>
9747
9748         * remote.c (compare_section_command): Remove set_general_process
9749         call.
9750
9751 2018-05-22  Pedro Alves  <palves@redhat.com>
9752
9753         * remote.c (struct packet_reg, struct remote_arch_state):
9754         Move higher up in the file.
9755         (remote_state) <m_arch_states>: Store remote_arch_state values
9756         instead of remote_arch_state pointers.
9757         (remote_state::get_remote_arch_state): Adjust.
9758
9759 2018-05-22  Pedro Alves  <palves@redhat.com>
9760
9761         * remote.c: Include <unordered_map>.
9762         (remote_state): Now a class.
9763         (remote_state) <get_remote_arch_state>: Declare method.
9764         <get_remote_arch_state>: New field.
9765         (remote_arch_state) <remote_arch_state>: Declare ctor.
9766         <regs>: Now a unique_ptr.
9767         (remote_gdbarch_data_handle): Delete.
9768         (get_remote_arch_state): Delete.
9769         (remote_state::get_remote_arch_state): New.
9770         (get_remote_state): Adjust to call remote_state's
9771         get_remote_arch_state method.
9772         (init_remote_state): Delete, bits factored out to ...
9773         (remote_arch_state::remote_arch_state): ... this new method.
9774         (get_remote_packet_size, get_memory_packet_size)
9775         (process_g_packet, remote_target::fetch_registers)
9776         (remote_target::prepare_to_store, store_registers_using_G)
9777         (remote_target::store_registers, remote_target::get_trace_status):
9778         Adjust to call remote_state's method.
9779         (_initialize_remote): Remove reference to
9780         remote_gdbarch_data_handle.
9781
9782 2018-05-22  Pedro Alves  <palves@redhat.com>
9783
9784         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9785         pread>: New method declarations.
9786         (remote_target::open_1): Adjust.
9787         (readahead_cache_invalidate): Rename to ...
9788         (readahead_cache::invalidate): ... this, and adjust to be a class
9789         method.
9790         (readahead_cache_invalidate_fd): Rename to ...
9791         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9792         class method.
9793         (remote_hostio_pwrite): Adjust.
9794         (remote_hostio_pread_from_cache): Rename to ...
9795         (readahead_cache::pread): ... this, and adjust to be a class
9796         method.
9797         (remote_hostio_close): Adjust.
9798
9799 2018-05-22  Pedro Alves  <palves@redhat.com>
9800
9801         * remote.c (remote_hostio_close_cleanup): Delete.
9802         (class scoped_remote_fd): New.
9803         (remote_file_put, remote_file_get): Use it.
9804
9805 2018-05-22  Pedro Alves  <palves@redhat.com>
9806
9807         (struct vCont_action_support): Use bool and initialize all fields.
9808         (struct readahead_cache): Initialize all fields.
9809         (remote_state): Use bool and initialize all fields.
9810         (remote_state::remote_state, remote_state::~remote_state): New.
9811         (new_remote_state): Delete.
9812         (_initialize_remote): Use new to allocate remote_state.
9813
9814 2018-05-22  Pedro Alves  <palves@redhat.com>
9815             張俊芝  <zjz@zjz.name>
9816
9817         PR gdb/22973
9818         * c-exp.y: Include "c-support.h".
9819         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9820         of tolower.  Use c_ident_is_alpha to scan names.
9821         * c-lang.c: Include "c-support.h".
9822         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9823         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9824         * c-support.h: New file, with bits factored out from ...
9825         * cp-name-parser.y: ... this file.
9826         Include "c-support.h".
9827         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9828         c-support.h and renamed.
9829         (symbol_end, yylex): Adjust.
9830
9831 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9832
9833         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9834         parameter type to CORE_ADDR.
9835         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9836         parameter type in declaration to CORE_ADDR.
9837         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9838         target_auxv_search to get AT_HWCAP and use the result to get the
9839         target description.
9840         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9841         to CORE_ADDR. Remove the cast of the return value to unsigned
9842         long. Fix error predicate of target_auxv_search.
9843         (ppc_linux_nat_target::read_description): Change the type of the
9844         hwcap variable to CORE_ADDR.
9845
9846 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9847
9848         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9849         if the size of fpscr is larger than 32 bits.
9850
9851 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9852
9853         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9854         (ppc32_linux_vsxregmap): New global.
9855         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9856         regcache_supply_regset, and regcache_collect_regset.
9857         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9858         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9859         (fetch_vsx_register, store_vsx_register): Remove.
9860         (fetch_vsx_registers): Add regno parameter. Get regset using
9861         ppc_linux_vsxregset. Use regset to supply registers.
9862         (store_vsx_registers): Add regno parameter. Get regset using
9863         ppc_linux_vsxregset. Use regset to collect registers.
9864         (fetch_register): Call fetch_vsx_registers instead of
9865         fetch_vsx_register.
9866         (store_register): Call store_vsx_registers instead of
9867         store_vsx_register.
9868         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9869         new regno parameter.
9870         (store_ppc_registers): Call store_vsx_registers with -1 for the
9871         new regno parameter.
9872         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9873         (ppc_collect_vsxregset): Remove.
9874
9875 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9876
9877         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9878         offset fields.
9879         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9880         for vector register offset fields.
9881         (ppc64_fbsd_reg_offsets): Likewise.
9882         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9883         to vector register offset fields.
9884         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9885         to vector register offset fields.
9886         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9887         vector register offset fields.
9888         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9889         initializers for vector register offset fields.
9890         (rs6000_aix64_reg_offsets): Likewise.
9891         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9892         (ppc_supply_vrregset): Remove.
9893         (ppc_collect_vrregset): Remove.
9894         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9895         (ppc_linux_vrregset) : New function.
9896         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9897         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9898         (ppc32_linux_vrregset): Remove.
9899         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9900         and use result instead of ppc32_linux_vrregset.
9901         (ppc32_linux_reg_offsets): Remove initializers for vector register
9902         offset fields.
9903         (ppc64_linux_reg_offsets): Likewise.
9904         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9905         * ppc-linux-nat.c: Include regset.h.
9906         (gdb_vrregset_t): Adjust comment to account for little-endian
9907         mode.
9908         (supply_vrregset, fill_vrregset): Remove.
9909         (fetch_altivec_register, store_altivec_register): Remove.
9910         (fetch_altivec_registers): Add regno parameter. Get regset using
9911         ppc_linux_vrregset. Use regset to supply registers.
9912         (store_altivec_registers): Add regno parameter. Get regset using
9913         ppc_linux_vrregset. Use regset to collect registers.
9914         (fetch_register): Call fetch_altivec_registers instead of
9915         fetch_altivec_register.
9916         (store_register): Call store_altivec_registers instead of
9917         store_altivec_register.
9918         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9919         the new regno parameter.
9920         (store_ppc_registers): Call store_altivec_registers with -1 for
9921         the new regno parameter.
9922
9923 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9924
9925         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9926         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9927         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9928         (gdb_vrregset_t): Change array type size to
9929         PPC_LINUX_SIZEOF_VRREGSET.
9930         (gdb_vsxregset_t): Change array type size to
9931         PPC_LINUX_SIZEOF_VSXREGSET.
9932         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9933         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9934         PPC_LINUX_SIZEOF_VSXREGSET.
9935
9936 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9937
9938         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9939         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9940         nat/ppc-linux.c.
9941         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9942         ppc_linux_target_wordsize with tid.
9943         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9944         wordsize with tid.
9945         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9946         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9947         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9948         tid parameter. Remove static specifier.
9949         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9950         (ppc_linux_target_wordsize): New declaration.
9951
9952 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9953
9954         * arch/ppc-linux-common.c: New file.
9955         * arch/ppc-linux-common.h: New file.
9956         * arch/ppc-linux-tdesc.h: New file.
9957         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9958         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9959         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9960         arch/ppc-linux-tdesc.h.
9961         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9962         arch/ppc-linux-tdesc.h.
9963         (ppc_linux_nat_target::read_description): Remove target
9964         description matching code. Fill a ppc_linux_features struct and
9965         call ppc_linux_match_description with it. Move comment about ISA
9966         2.05 to ppc-linux-common.c.
9967         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9968         arch/ppc-linux-tdesc.h.
9969         (ppc_linux_core_read_description): Remove target description
9970         matching code. Fill a ppc_linux_features struct and call
9971         ppc_linux_match_description with it.
9972         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9973         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9974         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9975         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9976         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9977         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9978         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9979         (tdesc_powerpc_e500l): Remove.
9980
9981 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9982
9983         * ada-lang.c (catch_assert_command): Pass empty string instead
9984         of NULL for excep_string argument.
9985
9986 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9987
9988         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9989         the width of the requested register exceeds the width of the
9990         `ptrace' data type.
9991
9992 2018-05-21  Tom Tromey  <tom@tromey.com>
9993
9994         * printcmd.c (output_command): Remove.
9995         (output_command_const): Rename to output_command.
9996         * valprint.h (output_command): Rename from output_command_const.
9997         * tracepoint.c (trace_dump_actions): Call output_command.
9998
9999 2018-05-21  Tom Tromey  <tom@tromey.com>
10000
10001         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
10002         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
10003         * ada-lang.h (create_ada_exception_catchpoint): Update.
10004         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
10005         std::string.
10006         (create_excep_cond_exprs, ~ada_catchpoint)
10007         (should_stop_exception, print_one_exception)
10008         (print_mention_exception, print_recreate_exception): Update.
10009         (ada_get_next_arg): Remove.
10010         (catch_ada_exception_command_split): Use std::string.  Change type
10011         of "excep_string", "cond_string".
10012         (catch_ada_exception_command): Update.
10013         (create_ada_exception_catchpoint): Change type of excep_string.
10014         (ada_exception_sal): Remove excep_string parameter.
10015         (~ada_catchpoint): Remove.
10016
10017 2018-05-21  Tom Tromey  <tom@tromey.com>
10018
10019         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
10020         cleanup.
10021
10022 2018-05-21  Tom Tromey  <tom@tromey.com>
10023
10024         * ada-lang.c (ada_exception_message_1, ada_exception_message):
10025         Return unique_xmalloc_ptr.
10026         (print_it_exception): Update.
10027
10028 2018-05-21  Tom Tromey  <tom@tromey.com>
10029
10030         * tracepoint.c (trace_dump_actions): Use std::string.
10031
10032 2018-05-21  Tom Tromey  <tom@tromey.com>
10033
10034         * symfile.c (reread_symbols): Use std::string for original_name.
10035
10036 2018-05-21  Tom Tromey  <tom@tromey.com>
10037
10038         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
10039         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
10040         constructor.
10041
10042 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
10043
10044         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10045         instance to...
10046         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10047         * objfiles.c (get_objfile_bfd_data): Allocate
10048         objfile_per_bfd_storage with obstack_new when allocating on
10049         obstack.
10050
10051 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10052
10053         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10054         OBSTACK_ZALLOC.
10055         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10056         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10057         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10058         (add_pending): Likewise.
10059         (parse_symbol): Likewise.
10060         (parse_partial_symbols): Likewise.
10061         (psymtab_to_symtab_1): Likewise.
10062         (new_psymtab): Likewise.
10063         (elfmdebug_build_psymtabs): Likewise.
10064         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10065         * objfiles.c (get_objfile_bfd_data): Likewise.
10066         (objfile_register_static_link): Likewise.
10067         * psymtab.c (allocate_psymtab): Likewise.
10068         * stabsread.c (read_member_functions): Likewise.
10069         * xcoffread.c (xcoff_end_psymtab): Likewise.
10070
10071 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10072
10073         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10074         compiler supports std::is_trivially_constructible.
10075         * common/poison.h: Include obstack.h.
10076         (IsMallocable): Define to is_trivially_constructible if the
10077         compiler supports it, define to true_type otherwise.
10078         (xobnew): New.
10079         (XOBNEW): Redefine.
10080         (xobnewvec): New.
10081         (XOBNEWVEC): Redefine.
10082         * gdb_obstack.h (obstack_zalloc): New.
10083         (OBSTACK_ZALLOC): Redefine.
10084         (obstack_calloc): New.
10085         (OBSTACK_CALLOC): Redefine.
10086         (obstack_new): New.
10087         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10088         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10089         gdbarch.c.
10090         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10091         obstack_calloc/obstack_zalloc.
10092         (gdbarch_obstack_zalloc): Remove.
10093         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10094
10095 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10096
10097         * stack.c (backtrace_command_1): Remove useless variable int i.
10098
10099 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10100
10101         * stack.c (print_frame_info): Fix comment.
10102
10103 2018-05-18  Tom Tromey  <tom@tromey.com>
10104
10105         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10106         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10107         (~dwarf2_per_objfile): Update
10108         (dwarf2_get_dwz_file): Use new.
10109         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10110         unique_ptr.
10111
10112 2018-05-18  Tom Tromey  <tom@tromey.com>
10113
10114         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10115         unique_ptr.
10116         * dwarf2read.c (struct dwp_file): Add constructor and
10117         initializers.
10118         (open_and_init_dwp_file): Return a unique_ptr.
10119         (dwarf2_per_objfile, create_dwp_hash_table)
10120         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10121         (lookup_dwo_unit_in_dwp): Update.
10122         (open_and_init_dwp_file, get_dwp_file): Update.
10123
10124 2018-05-18  Tom Tromey  <tom@tromey.com>
10125
10126         * dwarf2read.c (dwarf2_per_objfile): Update.
10127         (struct mapped_index): Add initializers.
10128         (dwarf2_read_index): Use new.
10129         (dw2_symtab_iter_init): Update.
10130         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10131         unique_ptr.
10132
10133 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10134
10135         * dwarf2read.c (mapped_index) <total_size>: Remove.
10136
10137 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10138
10139         * unittests/format_pieces-selftests.c (test_format_specifier):
10140         Add ARI comments.
10141
10142 2018-05-18  Tom Tromey  <tom@tromey.com>
10143
10144         * c-typeprint.c (maybe_print_hole): New function.
10145         (c_print_type_struct_field_offset): Update.
10146         (c_type_print_base_struct_union): Call maybe_print_hole.
10147
10148 2018-05-17  Keith Seitz  <keiths@redhat.com>
10149
10150         * breakpoint.c (build_bpstat_chain): New function, moved from
10151         bpstat_stop_status.
10152         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10153         If no stop chain is passed, call build_bpstat_chain to build it.
10154         * breakpoint.h (build_bpstat_chain): Declare.
10155         (bpstat_stop_status): Move documentation here from breakpoint.c.
10156         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10157         build the stop chain and pass it to skip_inline_frames.
10158         Pass this stop chain to bpstat_stop_status.
10159         * inline-frame.c: Include breakpoint.h.
10160         (stopped_by_user_bp_inline_frame): New function.
10161         (skip_inline_frames): Add parameter `stop_chain'.
10162         Move documention to inline-frame.h.
10163         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10164         whether the frame should be elided.
10165         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10166         Add moved documentation and update for new parameter.
10167
10168 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10169
10170         PR cli/14975
10171         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10172         unittests/format_pieces-selftests.c.
10173         * common/format.h (format_piece) <operator==>: New.
10174         (format_pieces) <operator[]>: Remove.
10175         * common/format.c (format_pieces::format_pieces): Handle \e.
10176         * unittests/format_pieces-selftests.c: New.
10177
10178 2018-05-17  Tom Tromey  <tom@tromey.com>
10179
10180         PR symtab/23010:
10181         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10182         (dw2_instantiate_symtab): Add skip_partial parameter.
10183         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10184         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10185         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10186         (dw2_expand_symtabs_matching_one)
10187         (dw2_find_pc_sect_compunit_symtab)
10188         (dw2_debug_names_lookup_symbol)
10189         (dw2_debug_names_expand_symtabs_for_function): Update.
10190         (init_cutu_and_read_dies): Add skip_partial parameter.
10191         (process_psymtab_comp_unit, build_type_psymtabs_1)
10192         (process_skeletonless_type_unit, load_partial_comp_unit)
10193         (psymtab_to_symtab_1): Update.
10194         (load_full_comp_unit): Add skip_partial parameter.
10195         (process_imported_unit_die, dwarf2_read_addr_index)
10196         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10197         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10198         (read_signatured_type): Update.
10199
10200 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10201
10202         * value.c (release_value): Remove unused variable.
10203         (record_latest_value): Likewise.
10204         (access_value_history): Likewise.
10205         (preserve_values): Likewise.
10206
10207 2018-05-17  Tom Tromey  <tom@tromey.com>
10208
10209         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10210         Initialize.
10211
10212 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10213
10214         PR gdb/22286
10215         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10216         Also handle registers whose width is not a multiple of
10217         PTRACE_TYPE_RET.
10218         (linux_nat_trad_target::store_register): Likewise.
10219
10220 2018-05-16  Tom Tromey  <tom@tromey.com>
10221
10222         * gdbcore.h (core_bfd): Redefine.
10223         * corelow.c (core_target::close): Update.
10224         (core_target_open): Update.
10225         * progspace.h (struct program_space) <cbfd>: Now a
10226         gdb_bfd_ref_ptr.
10227
10228 2018-05-16  Tom Tromey  <tom@tromey.com>
10229
10230         PR cli/19551:
10231         * symfile-add-flags.h (enum symfile_add_flags)
10232         <SYMFILE_NOT_FILENAME>: New constant.
10233         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10234         objfile name from BFD.
10235         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10236         * minidebug.c (find_separate_debug_file_in_section): Put
10237         ".gnu_debugdata" into BFD's file name.
10238
10239 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10240
10241         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10242         Remove.
10243
10244 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10245
10246         PR binutils/21446
10247         * aarch64-tdep.c (aarch64_analyze_prologue,
10248         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10249         Indicate not interested in errors.
10250
10251 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10252
10253         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10254         Supply the MIPS_ZERO_REGNUM register.
10255
10256 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10257
10258         * mips-tdep.c (mask_address_var): Make variable static.
10259
10260 2018-05-14  Tom Tromey  <tom@tromey.com>
10261
10262         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10263
10264 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10265
10266         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10267         FXSAVE_ADDR for the mxcsr register.
10268
10269 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10270
10271         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10272
10273 2018-05-11  Pedro Alves  <palves@redhat.com>
10274
10275         * corelow.c (core_target) <core_target>: No longer inline.
10276         Initialize m_core_gdbarch, m_core_vec and build the section table
10277         here.
10278         <~core_target>: New.
10279         <core_gdbarch, get_core_register_section>: New methods.
10280         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10281         factored out from ...
10282         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10283         (core_ops): Delete.
10284         (sniff_core_bfd): Add gdbarch parameter.
10285         (core_close): Delete, merged into ...
10286         (core_target::close): ... here.  Delete self.
10287         (core_close_cleanup): Delete.
10288         (core_target_open): Allocate a core_target on the heap.  Use a
10289         unique_ptr instead of a cleanup.  Bits moved into the core_target
10290         ctor.  Adjust to use core_target methods instead of globals.
10291         (get_core_register_section): Rename to ...
10292         (core_target::get_core_register_section): ... this and adjust.
10293         (struct get_core_registers_cb_data): New.
10294         (get_core_registers_cb): Use it.  Use bool.
10295         (core_target::fetch_registers, core_target::files_info)
10296         (core_target::xfer_partial, core_target::read_description)
10297         (core_target::pid_to, core_target::thread_name): Adjust to
10298         reference class fields instead of globals.
10299         * target.h (struct target_ops_deleter, target_ops_up): New.
10300
10301 2018-05-11  Pedro Alves  <palves@redhat.com>
10302
10303         * corefile.c (core_file_command): Move to corelow.c.
10304         * corelow.c (the_core_target): Delete.
10305         (core_file_command): Moved from corefile.c.  Check exec_bfd
10306         instead of the_core_target.  Use target_detach instead of calling
10307         into the_core_target directly.
10308         (maybe_say_no_core_file_now): New.
10309         (core_target::detach): Use it.
10310         (_initialize_corelow): Remove references to the_core_target.
10311         * gdbcore.h (the_core_target): Delete.
10312
10313 2018-05-11  Tom Tromey  <tromey@redhat.com>
10314             Pedro Alves  <palves@redhat.com>
10315
10316         * corefile.c (core_bfd): Remove.
10317         * gdbcore.h (core_bfd): Now a macro.
10318         * progspace.h (struct program_space) <cbfd>: New field.
10319
10320 2018-05-11  Tom Tromey  <tom@tromey.com>
10321
10322         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10323         gdb::def_vector.
10324
10325 2018-05-10  Tom Tromey  <tom@tromey.com>
10326
10327         * configure: Rebuild.
10328         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10329
10330 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10331
10332         PR server/23158:
10333         * regformats/regdat.sh: Adjust script, following the addition
10334         of the new expedite_regs parameter to init_target_desc.
10335
10336 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10337     
10338         PR gdb/23127
10339         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10340         set_gdbarch_significant_addr_bit.
10341         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10342         set_gdbarch_significant_addr_bit.
10343         * utils.c (address_significant): Update to sign extend addr.
10344
10345 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10346
10347         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10348         (xtensa_linux_init_abi): Limit tdep->num_regs by
10349         tdep->num_nopriv_regs.
10350         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10351         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10352         not initialized.
10353
10354 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10355
10356         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10357
10358 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10359
10360         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10361         (I387_MXCSR_INIT_VAL): New constant.
10362         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10363         buffer if it was supplied by the inferior.
10364         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10365         (i387_xsave_get_clear_bv): New function.
10366         (i387_supply_xsave): Only read x87 control registers from the
10367         xsave buffer if the feature is enabled, and the state will have
10368         been written, otherwise, provide a suitable default.
10369         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10370         including x87 control registers.  Update control registers if they
10371         have changed from the default value, and mark features as enabled
10372         as required.
10373         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10374
10375 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10376
10377         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10378
10379 2018-05-07  Tom Tromey  <tom@tromey.com>
10380
10381         * configure: Rebuild.
10382         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10383
10384 2018-05-07  Tom Tromey  <tom@tromey.com>
10385
10386         PR tdep/20362:
10387         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10388         bit.  Use correct value for VDIV.
10389
10390 2018-05-04  Tom Tromey  <tom@tromey.com>
10391
10392         * configure: Rebuild.
10393         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10394
10395 2018-05-04  Tom Tromey  <tom@tromey.com>
10396
10397         * linux-record.c (record_linux_system_call) <case
10398         RECORD_SYS_RECVFROM>: Add "break".
10399
10400 2018-05-04  Tom Tromey  <tom@tromey.com>
10401
10402         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10403         Add missing "break".
10404         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10405         Add missing "break".
10406
10407 2018-05-04  Tom Tromey  <tom@tromey.com>
10408
10409         * rs6000-tdep.c (ppc_process_record_op4)
10410         (ppc_process_record_op63): Add fall-through comment.
10411
10412 2018-05-04  Tom Tromey  <tom@tromey.com>
10413
10414         * i386-tdep.c (i386_process_record): Add fall-through comment.
10415
10416 2018-05-04  Tom Tromey  <tom@tromey.com>
10417
10418         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10419         comment.
10420
10421 2018-05-04  Tom Tromey  <tom@tromey.com>
10422
10423         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10424         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10425         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10426         comment.
10427         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10428         comment.
10429         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10430         comment.
10431
10432 2018-05-04  Tom Tromey  <tom@tromey.com>
10433
10434         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10435
10436 2018-05-04  Tom Tromey  <tom@tromey.com>
10437
10438         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10439         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10440         * symfile.c (section_is_mapped): Fix fall-through comment.
10441         * stabsread.c (define_symbol, read_member_functions): Fix
10442         fall-through comment.
10443         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10444         comment.
10445         * remote.c (remote_wait_as): Fix fall-through comment.
10446         * p-exp.y (yylex): Fix fall-through comment.
10447         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10448         comment.
10449         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10450         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10451         * jv-exp.y (yylex): Fix fall-through comment.
10452         * go-exp.y (lex_one_token): Fix fall-through comment.
10453         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10454         fall-through comment.
10455         * f-exp.y (yylex): Fix fall-through comment.
10456         * dwarf2read.c (process_die): Fix fall-through comments.
10457         * dbxread.c (process_one_symbol): Fix fall-through comment.
10458         * d-exp.y (lex_one_token): Fix fall-through comment.
10459         * cp-name-parser.y (yylex): Fix fall-through comment.
10460         * coffread.c (coff_symtab_read): Fix fall-through comment.
10461         * c-exp.y (lex_one_token): Fix fall-through comment.
10462         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10463         comment.
10464         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10465         comment.
10466
10467 2018-05-04  Tom Tromey  <tom@tromey.com>
10468
10469         PR python/22730:
10470         * NEWS: Mention gdb.execute change.
10471         * gdbcmd.h (execute_control_command): Don't declare.
10472         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10473         execute_control_commands, execute_control_commands_to_string.
10474         * cli/cli-script.h (execute_control_commands)
10475         (execute_control_commands_to_string): Declare.
10476         (execute_control_command): Add from_tty parameter.
10477         * cli/cli-script.c (execute_control_commands)
10478         (execute_control_commands_to_string): New functions.
10479         (execute_user_command): Use execute_control_commands.
10480         (execute_control_command_1): Add "from_tty" parameter.  Update.
10481         (execute_control_command): Likewise.
10482
10483 2018-05-04  Tom Tromey  <tom@tromey.com>
10484
10485         PR python/22731:
10486         * NEWS: Mention that breakpoint commands are writable.
10487         * python/py-breakpoint.c (bppy_set_commands): New function.
10488         (breakpoint_object_getset) <"commands">: Use it.
10489
10490 2018-05-04  Tom Tromey  <tom@tromey.com>
10491
10492         * tracepoint.c (actions_command): Update.
10493         * mi/mi-cmd-break.c (mi_command_line_array)
10494         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10495         (mi_read_next_line): Remove.
10496         (mi_cmd_break_commands): Update.
10497         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10498         function_view.
10499         * cli/cli-script.c (get_command_line): Update.
10500         (process_next_line): Use function_view.  Constify.
10501         (recurse_read_control_structure, read_command_lines)
10502         (read_command_lines_1): Change argument types to function_view.
10503         (do_define_command, document_command): Update.
10504         * breakpoint.h (check_tracepoint_command): Don't declare.
10505         * breakpoint.c (check_tracepoint_command): Remove.
10506         (commands_command_1, create_tracepoint_from_upload): Update.
10507
10508 2018-05-04  Tom Tromey  <tom@tromey.com>
10509
10510         PR gdb/11750:
10511         * cli/cli-script.h (enum command_control_type) <define_control>:
10512         New constant.
10513         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10514         (build_command_line, execute_control_command_1)
10515         (process_next_line): Likewise.
10516         (do_define_command): New function, extracted from define_command.
10517         (define_command): Use it.
10518
10519 2018-05-04  Tom Tromey  <tom@tromey.com>
10520
10521         * tracepoint.c (actions_command): Update.
10522         * cli/cli-script.h (read_command_lines): Update.
10523         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10524         (MAX_TMPBUF): Remove define.
10525         (define_command): Use string_printf.
10526         (document_command): Likewise.
10527         * breakpoint.c (commands_command_1): Update.
10528
10529 2018-05-04  Tom Tromey  <tom@tromey.com>
10530
10531         * top.c (execute_command): Update.
10532         * cli/cli-script.h (print_command_lines): Now varargs.
10533         * cli/cli-script.c (print_command_lines): Now varargs.
10534         (execute_control_command_1) <case while_control, case if_control>:
10535         Update.
10536
10537 2018-05-04  Tom Tromey  <tom@tromey.com>
10538
10539         * tracepoint.c (all_tracepoint_actions): Rename from
10540         all_tracepoint_actions_and_cleanup.  Change return type.
10541         (actions_command, encode_actions_1, encode_actions)
10542         (trace_dump_actions, tdump_command): Update.
10543         * remote.c (remote_download_command_source): Update.
10544         * python/python.c (gdbpy_eval_from_control_command)
10545         (python_command, python_interactive_command): Update.
10546         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10547         * guile/guile.c (guile_command)
10548         (gdbscm_eval_from_control_command, guile_command): Update.
10549         * compile/compile.c (compile_code_command)
10550         (compile_print_command, compile_to_object): Update.
10551         * cli/cli-script.h (struct command_lines_deleter): New.
10552         (counted_command_line): New typedef.
10553         (struct command_line): Add constructor, destructor.
10554         <body_list>: Remove.
10555         <body_list_0, body_list_1>: New members.
10556         (command_line_up): Remove typedef.
10557         (read_command_lines, read_command_lines_1, get_command_line):
10558         Update.
10559         (copy_command_lines): Don't declare.
10560         * cli/cli-script.c (build_command_line): Use "new".
10561         (get_command_line): Return counted_command_line.
10562         (print_command_lines, execute_user_command)
10563         (execute_control_command_1, while_command, if_command): Update.
10564         (realloc_body_list): Remove.
10565         (process_next_line, recurse_read_control_structure): Update.
10566         (read_command_lines, read_command_lines_1): Return counted_command_line.
10567         (free_command_lines): Use "delete".
10568         (copy_command_lines): Remove.
10569         (define_command, document_command, show_user_1): Update.
10570         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10571         a counted_command_line.
10572         * breakpoint.h (counted_command_line): Remove typedef.
10573         (breakpoint_set_commands): Update.
10574         * breakpoint.c (check_no_tracepoint_commands)
10575         (validate_commands_for_breakpoint): Update.
10576         (breakpoint_set_commands): Change commands to be a
10577         counted_command_line.
10578         (commands_command_1, update_dprintf_command_list)
10579         (create_tracepoint_from_upload): Update.
10580
10581 2018-05-04  Tom Tromey  <tom@tromey.com>
10582
10583         * cli/cli-decode.h (cmd_list_element): New constructor.
10584         (~cmd_list_element): New destructor.
10585         (struct cmd_list_element): Add initializers.
10586         * cli/cli-decode.c (do_add_cmd): Use "new".
10587         (delete_cmd): Use "delete".
10588
10589 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10590             Pedro Alves <palves@redhat.com>
10591
10592         PR breakpoints/19806 and support for PR external/20207.
10593         * NEWS: Mention Aarch64 watchpoint improvements.
10594         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10595         watchpoints and PR external/20207 watchpoints.
10596         * nat/aarch64-linux-hw-point.c
10597         (kernel_supports_any_contiguous_range): New.
10598         (aarch64_watchpoint_offset): New.
10599         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10600         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10601         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10602         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10603         next_addr_orig_p.  Support PR external/20207 watchpoints.
10604         (aarch64_downgrade_regs): New.
10605         (aarch64_dr_state_insert_one_point): New parameters offset and
10606         addr_orig.
10607         (aarch64_dr_state_remove_one_point): Likewise.
10608         (aarch64_handle_breakpoint): Update caller.
10609         (aarch64_handle_aligned_watchpoint): Likewise.
10610         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10611         aligned_offset.
10612         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10613         aarch64_downgrade_regs.
10614         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10615         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10616         (DR_CONTROL_MASK): ... this.
10617         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10618         (unsigned int aarch64_watchpoint_offset): New prototype.
10619         (aarch64_linux_set_debug_regs): Remove const from state.
10620         * utils.c (align_up, align_down): Move to ...
10621         * common/common-utils.c (align_up, align_down): ... here.
10622         * utils.h (align_up, align_down): Move to ...
10623         * common/common-utils.h (align_up, align_down): ... here.
10624
10625 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10626
10627         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10628         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10629         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10630         Re-implement to match the ABI as summarized in GCC's
10631         gcc/config/sparc/sparc.c.  All callers updated.
10632         (sparc32_store_arguments): Remove assertion.
10633
10634 2018-05-04  Tom Tromey  <tom@tromey.com>
10635
10636         * printcmd.c: Don't include tui.h.
10637         (decode_format): Use skip_spaces.
10638
10639 2018-05-04  Tom Tromey  <tom@tromey.com>
10640
10641         PR gdb/22619:
10642         * printcmd.c (last_count): New global.
10643         (x_command): Use saved count when repeating.
10644
10645 2018-05-04  Tom Tromey  <tom@tromey.com>
10646
10647         * nto-procfs.c (do_closedir_cleanup): Remove.
10648         (procfs_pidlist): Use gdb_dir_up.
10649         * procfs.c (do_closedir_cleanup): Remove.
10650         (proc_update_threads): Use gdb_dir_up.
10651         * common/filestuff.h (struct gdb_dir_deleter): New.
10652         (gdb_dir_up): New typedef.
10653
10654 2018-05-04  Tom Tromey  <tom@tromey.com>
10655
10656         * ada-lang.c (print_mention_exception): Use std::string.
10657
10658 2018-05-04  Tom Tromey  <tom@tromey.com>
10659
10660         * ada-lang.c (create_excep_cond_exprs): Update.
10661         (ada_exception_catchpoint_cond_string): Use std::string.
10662
10663 2018-05-04  Tom Tromey  <tom@tromey.com>
10664
10665         * ada-lang.c (xget_renaming_scope): Return std::string.
10666         (old_renaming_is_invisible): Update.
10667
10668 2018-05-04  Tom Tromey  <tom@tromey.com>
10669
10670         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10671         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10672
10673 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10674
10675         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10676
10677 2018-05-04  Tom Tromey  <tom@tromey.com>
10678
10679         * remote.c (remote_query_supported_append): Change type.
10680         (remote_check_symbols): Update.
10681
10682 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10683
10684         PR gdb/11420
10685         * configure.ac: Prepend libpython.
10686         * python/python-config.py: Likewise.
10687         * configure: Regenerate.
10688
10689 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10690
10691         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10692
10693 2018-05-03  Pedro Alves  <palves@redhat.com>
10694
10695         * s390-linux-nat.c
10696         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10697         override.  Write 'true' instead of '1'.
10698         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10699         declaration.
10700
10701 2018-05-02  Pedro Alves  <palves@redhat.com>
10702
10703         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10704         add_inf_child_target.
10705         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10706         add_inf_child_target.
10707         * aix-thread.c (aix_thread_target_info): New.
10708         (aix_thread_target) <shortname, longname, doc>: Delete.
10709         <info>: New.
10710         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10711         add_inf_child_target.
10712         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10713         add_inf_child_target.
10714         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10715         add_inf_child_target.
10716         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10717         add_inf_child_target.
10718         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10719         add_inf_child_target.
10720         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10721         add_inf_child_target.
10722         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10723         add_inf_child_target.
10724         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10725         add_inf_child_target.
10726         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10727         add_inf_child_target.
10728         * bfd-target.c (target_bfd_target_info): New.
10729         (target_bfd) <shortname, longname, doc>: Delete.
10730         <info>: New.
10731         * bsd-kvm.c (bsd_kvm_target_info): New.
10732         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10733         <info>: New.
10734         (bsd_kvm_target::open): Rename to ...
10735         (bsd_kvm_target_open): ... this.  Adjust.
10736         * bsd-uthread.c (bsd_uthread_target_info): New.
10737         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10738         <info>: New.
10739         * corefile.c (core_file_command): Adjust.
10740         * corelow.c (core_target_info): New.
10741         (core_target) <shortname, longname, doc>: Delete.
10742         <info>: New.
10743         (core_target::open): Rename to ...
10744         (core_target_open): ... this.  Adjust.
10745         * ctf.c (ctf_target_info): New.
10746         (ctf_target) <shortname, longname, doc>: Delete.
10747         <info>: New.
10748         (ctf_target::open): Rename to ...
10749         (ctf_target_open): ... this.
10750         (_initialize_ctf): Adjust.
10751         * exec.c (exec_target_info): New.
10752         (exec_target) <shortname, longname, doc>: Delete.
10753         <info>: New.
10754         (exec_target::open): Rename to ...
10755         (exec_target_open): ... this.
10756         * gdbcore.h (core_target_open): Declare.
10757         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10758         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10759         add_inf_child_target.
10760         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10761         add_inf_child_target.
10762         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10763         add_inf_child_target.
10764         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10765         add_inf_child_target.
10766         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10767         add_inf_child_target.
10768         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10769         add_inf_child_target.
10770         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10771         add_inf_child_target.
10772         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10773         add_inf_child_target.
10774         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10775         add_inf_child_target.
10776         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10777         add_inf_child_target.
10778         * inf-child.c (inf_child_target_info): New.
10779         (inf_child_target::info): New.
10780         (inf_child_open_target): Remove 'target' parameter.  Use
10781         get_native_target instead.
10782         (inf_child_target::open): Delete.
10783         (add_inf_child_target): New.
10784         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10785         Delete.
10786         <info>: New.
10787         (add_inf_child_target): Declare.
10788         (inf_child_open_target): Declare.
10789         * linux-thread-db.c (thread_db_target_info): New.
10790         (thread_db_target) <shortname, longname, doc>: Delete.
10791         <info>: New.
10792         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10793         add_inf_child_target.
10794         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10795         add_inf_child_target.
10796         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10797         add_inf_child_target.
10798         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10799         add_inf_child_target.
10800         * make-target-delegates (print_class): Adjust.
10801         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10802         add_inf_child_target.
10803         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10804         add_inf_child_target.
10805         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10806         add_inf_child_target.
10807         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10808         add_inf_child_target.
10809         * nto-procfs.c (nto_native_target_info): New.
10810         (nto_procfs_target_native) <shortname, longname, doc>:
10811         Delete.
10812         <info>: New.
10813         (nto_procfs_target_info): New.
10814         (nto_procfs_target_procfs) <shortname, longname, doc>:
10815         Delete.
10816         <info>: New.
10817         (init_procfs_targets): Adjust.
10818         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10819         add_inf_child_target.
10820         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10821         add_inf_child_target.
10822         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10823         add_inf_child_target.
10824         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10825         add_inf_child_target.
10826         * ravenscar-thread.c (ravenscar_target_info): New.
10827         (ravenscar_thread_target) <shortname, longname, doc>:
10828         Delete.
10829         <info>: New.
10830         * record-btrace.c (record_btrace_target_info):
10831         (record_btrace_target) <shortname, longname, doc>: Delete.
10832         <info>: New.
10833         (record_btrace_target::open): Rename to ...
10834         (record_btrace_target_open): ... this.  Adjust.
10835         * record-full.c (record_longname, record_doc): New.
10836         (record_full_base_target) <shortname, longname, doc>: Delete.
10837         <info>: New.
10838         (record_full_target_info): New.
10839         (record_full_target): <shortname>: Delete.
10840         <info>: New.
10841         (record_full_core_open_1, record_full_open_1): Update comments.
10842         (record_full_base_target::open): Rename to ...
10843         (record_full_open): ... this.
10844         (cmd_record_full_restore): Update.
10845         (_initialize_record_full): Update.
10846         * remote-sim.c (remote_sim_target_info): New.
10847         (gdbsim_target) <shortname, longname, doc>: Delete.
10848         <info>: New.
10849         (gdbsim_target::open): Rename to ...
10850         (gdbsim_target_open): ... this.
10851         (_initialize_remote_sim): Adjust.
10852         * remote.c (remote_doc): New.
10853         (remote_target_info): New.
10854         (remote_target) <shortname, longname, doc>: Delete.
10855         <info>: New.
10856         (extended_remote_target_info): New.
10857         (extended_remote_target) <shortname, longname, doc>: Delete.
10858         <info>: New.
10859         (remote_target::open_1): Make static.  Adjust.
10860         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10861         * s390-linux-nat.c (_initialize_s390_nat): Use
10862         add_inf_child_target.
10863         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10864         add_inf_child_target.
10865         * sol-thread.c (thread_db_target_info): New.
10866         (sol_thread_target) <shortname, longname, doc>: Delete.
10867         <info>: New.
10868         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10869         add_inf_child_target.
10870         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10871         add_inf_child_target.
10872         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10873         add_inf_child_target.
10874         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10875         add_inf_child_target.
10876         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10877         add_inf_child_target.
10878         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10879         add_inf_child_target.
10880         * spu-linux-nat.c (_initialize_spu_nat): Use
10881         add_inf_child_target.
10882         * spu-multiarch.c (spu_multiarch_target_info): New.
10883         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10884         <info>: New.
10885         * target-delegates.c: Regenerate.
10886         * target.c: Include <unordered_map>.
10887         (target_ops_p): Delete.
10888         (DEF_VEC_P(target_ops_p)): Delete.
10889         (target_factories): New.
10890         (test_target_info): New.
10891         (test_target_ops::info): New.
10892         (open_target): Adjust to use target_factories.
10893         (add_target_with_completer): Rename to ...
10894         (add_target): ... this.  Change prototype.  Register target_info
10895         and open callback in target_factories.  Register target_info in
10896         command context instead of target_ops.
10897         (add_target): Delete old implementation.
10898         (add_deprecated_target_alias): Change prototype.  Adjust.
10899         (the_native_target): New.
10900         (set_native_target, get_native_target): New.
10901         (find_default_run_target): Use the_native_target.
10902         (find_attach_target, find_run_target): Simplify.
10903         (target_ops::open): Delete.
10904         (dummy_target_info): New.
10905         (dummy_target::shortname, dummy_target::longname)
10906         (dummy_target::doc): Delete.
10907         (dummy_target::info): New.
10908         (debug_target::shortname, debug_target::longname)
10909         (debug_target::doc): Delete.
10910         (debug_target::info): New.
10911         * target.h (struct target_info): New.
10912         (target_ops::~target_ops): Add comment.
10913         (target_ops::info): New.
10914         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10915         longer virtual.  Implement in terms of target_info.
10916         (set_native_target, get_native_target): Declare.
10917         (target_open_ftype): New.
10918         (add_target, add_target_with_completer)
10919         (add_deprecated_target_alias): Change prototype.
10920         (test_target) <shortname, longname, doc>: Delete.
10921         <info>: New.
10922         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10923         add_inf_child_target.
10924         * tracefile-tfile.c (tfile_target_info): New.
10925         (tfile_target) <shortname, longname, doc>: Delete.
10926         <info>: New.
10927         (tfile_target::open): Rename to ...
10928         (tfile_target_open): ... this.
10929         (_initialize_tracefile_tfile): Adjust.
10930         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10931         add_inf_child_target.
10932         * windows-nat.c (_initialize_windows_nat): Use
10933         add_inf_child_target.
10934         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10935         add_inf_child_target.
10936
10937 2018-05-02  Pedro Alves  <palves@redhat.com>
10938
10939         * linux-nat.h (linux_nat_target) <low_new_thread,
10940         low_delete_thread, low_new_fork, low_forget_process,
10941         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10942         New virtual methods.
10943         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10944         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10945         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10946         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10947         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10948         Delete.
10949         * linux-fork.c (delete_fork): Adjust to call low method.
10950         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10951         (linux_nat_new_fork, linux_nat_forget_process_hook)
10952         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10953         (linux_nat_status_is_event):
10954         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10955         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10956         to call low method.
10957         (sigtrap_is_event): Rename to ...
10958         (linux_nat_target::low_status_is_event): ... this.
10959         (linux_nat_set_status_is_event): Delete.
10960         (save_stop_reason, linux_nat_wait_1)
10961         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10962         low methods.
10963         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10964         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10965         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10966         (linux_nat_set_prepare_to_resume): Delete.
10967         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10968         low virtual methods.
10969         * amd64-linux-nat.c: Likewise.
10970         * arm-linux-nat.c: Likewise.
10971         * i386-linux-nat.c: Likewise.
10972         * ia64-linux-nat.c: Likewise.
10973         * mips-linux-nat.c: Likewise.
10974         * ppc-linux-nat.c: Likewise.
10975         * s390-linux-nat.c: Likewise.
10976         * sparc64-linux-nat.c: Likewise.
10977         * x86-linux-nat.c: Likewise.
10978         * x86-linux-nat.h: Include "nat/x86-linux.h".
10979         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10980         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10981         Override methods.
10982
10983 2018-05-02  Pedro Alves  <palves@redhat.com>
10984
10985         * target.h (target_ops)
10986         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10987         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10988         stopped_by_watchpoint, have_continuable_watchpoint,
10989         stopped_data_address, watchpoint_addr_within_range,
10990         can_accel_watchpoint_condition, can_run, thread_alive,
10991         has_all_memory, has_memory, has_stack, has_registers,
10992         has_execution, can_async_p, is_async_p, supports_non_stop,
10993         always_non_stop_p, can_execute_reverse, supports_multi_process,
10994         supports_enable_disable_tracepoint,
10995         supports_disable_randomization, supports_string_tracing,
10996         supports_evaluation_of_breakpoint_conditions,
10997         can_run_breakpoint_commands, filesystem_is_local,
10998         can_download_tracepoint, get_trace_state_variable_value,
10999         set_trace_notes, get_tib_address, use_agent, can_use_agent,
11000         record_is_replaying, record_will_replay,
11001         augmented_libraries_svr4_read>: Adjust to return bool.
11002         * aarch64-linux-nat.c: All implementations adjusted.
11003         * aix-thread.c: All implementations adjusted.
11004         * arm-linux-nat.c: All implementations adjusted.
11005         * breakpoint.c: All implementations adjusted.
11006         * bsd-kvm.c: All implementations adjusted.
11007         * bsd-uthread.c: All implementations adjusted.
11008         * corelow.c: All implementations adjusted.
11009         * ctf.c: All implementations adjusted.
11010         * darwin-nat.c: All implementations adjusted.
11011         * darwin-nat.h: All implementations adjusted.
11012         * exec.c: All implementations adjusted.
11013         * fbsd-nat.c: All implementations adjusted.
11014         * fbsd-nat.h: All implementations adjusted.
11015         * gnu-nat.c: All implementations adjusted.
11016         * gnu-nat.h: All implementations adjusted.
11017         * go32-nat.c: All implementations adjusted.
11018         * ia64-linux-nat.c: All implementations adjusted.
11019         * inf-child.c: All implementations adjusted.
11020         * inf-child.h: All implementations adjusted.
11021         * inf-ptrace.c: All implementations adjusted.
11022         * inf-ptrace.h: All implementations adjusted.
11023         * linux-nat.c: All implementations adjusted.
11024         * linux-nat.h: All implementations adjusted.
11025         * mips-linux-nat.c: All implementations adjusted.
11026         * nto-procfs.c: All implementations adjusted.
11027         * ppc-linux-nat.c: All implementations adjusted.
11028         * procfs.c: All implementations adjusted.
11029         * ravenscar-thread.c: All implementations adjusted.
11030         * record-btrace.c: All implementations adjusted.
11031         * record-full.c: All implementations adjusted.
11032         * remote-sim.c: All implementations adjusted.
11033         * remote.c: All implementations adjusted.
11034         * s390-linux-nat.c: All implementations adjusted.
11035         * sol-thread.c: All implementations adjusted.
11036         * spu-multiarch.c: All implementations adjusted.
11037         * target-delegates.c: All implementations adjusted.
11038         * target.c: All implementations adjusted.
11039         * target.h: All implementations adjusted.
11040         * tracefile-tfile.c: All implementations adjusted.
11041         * tracefile.c: All implementations adjusted.
11042         * tracefile.h: All implementations adjusted.
11043         * windows-nat.c: All implementations adjusted.
11044         * x86-linux-nat.h: All implementations adjusted.
11045         * x86-nat.h: All implementations adjusted.
11046
11047 2018-05-02  Pedro Alves  <palves@redhat.com>
11048
11049         * make-target-delegates (scan_target_h): Don't trim lines here.
11050         Replace sequences of tabs and/or whitespace with a single
11051         whitespace.
11052         (top level, parsing methods): Trim each line before processing it
11053         here.
11054
11055 2018-05-02  Pedro Alves  <palves@redhat.com>
11056             John Baldwin  <jhb@freebsd.org>
11057
11058         * target.h (enum strata) <debug_stratum>: New.
11059         (struct target_ops) <all delegation methods>: Replace by C++
11060         virtual methods, and drop "to_" prefix.  All references updated
11061         throughout.
11062         <to_shortname, to_longname, to_doc, to_data,
11063         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11064         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11065         virtual methods.  All references updated throughout.
11066         <can_attach, supports_terminal_ours, can_create_inferior,
11067         get_thread_control_capabilities, attach_no_wait>: New
11068         virtual methods.
11069         <insert_breakpoint, remove_breakpoint>: Now
11070         TARGET_DEFAULT_NORETURN methods.
11071         <info_proc>: Now returns bool.
11072         <to_magic>: Delete.
11073         (OPS_MAGIC): Delete.
11074         (current_target): Delete.  All references replaced by references
11075         to ...
11076         (target_stack): ... this.  New.
11077         (target_shortname, target_longname): Adjust.
11078         (target_can_run): Now a function declaration.
11079         (default_child_has_all_memory, default_child_has_memory)
11080         (default_child_has_stack, default_child_has_registers)
11081         (default_child_has_execution): Remove target_ops parameter.
11082         (complete_target_initialization): Delete.
11083         (memory_breakpoint_target): New template class.
11084         (test_target_ops): Refactor as a C++ class with virtual methods.
11085         * make-target-delegates (NAME_PART): Tighten.
11086         (POINTER_PART, CP_SYMBOL): New.
11087         (SIMPLE_RETURN_PART): Reimplement.
11088         (VEC_RETURN_PART): Expect less.
11089         (RETURN_PART, VIRTUAL_PART): New.
11090         (METHOD): Adjust to C++ virtual methods.
11091         (scan_target_h): Remove reference to C99.
11092         (dname): Output "target_ops::" prefix.
11093         (write_function_header): Adjust to output a C++ class method.
11094         (write_declaration): New.
11095         (write_delegator): Adjust to output a C++ class method.
11096         (tdname): Output "dummy_target::" prefix.
11097         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11098         method.
11099         (tdefault_names, debug_names): Delete.
11100         (return_types, tdefaults, styles, argtypes_array): New.
11101         (top level): All methods are delegators.
11102         (print_class): New.
11103         (top level): Print dummy_target and debug_target classes.
11104         * target-delegates.c: Regenerate.
11105         * target-debug.h (target_debug_print_enum_info_proc_what)
11106         (target_debug_print_thread_control_capabilities)
11107         (target_debug_print_thread_info_p): New.
11108         * target.c (dummy_target): Delete.
11109         (the_dummy_target, the_debug_target): New.
11110         (target_stack): Now extern.
11111         (set_targetdebug): Push/unpush debug target.
11112         (default_child_has_all_memory, default_child_has_memory)
11113         (default_child_has_stack, default_child_has_registers)
11114         (default_child_has_execution): Remove target_ops parameter.
11115         (complete_target_initialization): Delete.
11116         (add_target_with_completer): No longer call
11117         complete_target_initialization.
11118         (target_supports_terminal_ours): Use regular delegation.
11119         (update_current_target): Delete.
11120         (push_target): No longer check magic number.  Don't call
11121         update_current_target.
11122         (unpush_target): Don't call update_current_target.
11123         (target_is_pushed): No longer check magic number.
11124         (target_require_runnable): Skip for all stratums over
11125         process_stratum.
11126         (target_ops::info_proc): New.
11127         (target_info_proc): Use find_target_at and
11128         find_default_run_target.
11129         (target_supports_disable_randomization): Use regular delegation.
11130         (target_get_osdata): Use find_target_at.
11131         (target_ops::open, target_ops::close, target_ops::can_attach)
11132         (target_ops::attach, target_ops::can_create_inferior)
11133         (target_ops::create_inferior, target_ops::can_run)
11134         (target_can_run): New.
11135         (default_fileio_target): Use regular delegation.
11136         (target_ops::fileio_open, target_ops::fileio_pwrite)
11137         (target_ops::fileio_pread, target_ops::fileio_fstat)
11138         (target_ops::fileio_close, target_ops::fileio_unlink)
11139         (target_ops::fileio_readlink): New.
11140         (target_fileio_open_1, target_fileio_unlink)
11141         (target_fileio_readlink): Always call the target method.  Handle
11142         FILEIO_ENOSYS.
11143         (return_zero, return_zero_has_execution): Delete.
11144         (init_dummy_target): Delete.
11145         (dummy_target::dummy_target, dummy_target::shortname)
11146         (dummy_target::longname, dummy_target::doc)
11147         (debug_target::debug_target, debug_target::shortname)
11148         (debug_target::longname, debug_target::doc): New.
11149         (target_supports_delete_record): Use regular delegation.
11150         (setup_target_debug): Delete.
11151         (maintenance_print_target_stack): Skip debug_stratum.
11152         (initialize_targets): Instantiate the_dummy_target and
11153         the_debug_target.
11154         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11155         use target_stack.
11156         (target_auxv_search, fprint_target_auxv): Adjust.
11157         (info_auxv_command): Adjust to use target_stack.
11158         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11159         * exceptions.c (print_flush): Handle a NULL target_stack.
11160         * regcache.c (target_ops_no_register): Refactor as class with
11161         virtual methods.
11162
11163         * exec.c (exec_target): New class.
11164         (exec_ops): Now an exec_target.
11165         (exec_open, exec_close_1, exec_get_section_table)
11166         (exec_xfer_partial, exec_files_info, exec_has_memory)
11167         (exec_make_note_section): Refactor as exec_target methods.
11168         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11169         Delete.
11170         (exec_target::find_memory_regions): New.
11171         (_initialize_exec): Don't call init_exec_ops.
11172         * gdbcore.h (exec_file_clear): Delete.
11173
11174         * corefile.c (core_target): Delete.
11175         (core_file_command): Adjust.
11176         * corelow.c (core_target): New class.
11177         (the_core_target): New.
11178         (core_close): Remove target_ops parameter.
11179         (core_close_cleanup): Adjust.
11180         (core_target::close): New.
11181         (core_open, core_detach, get_core_registers, core_files_info)
11182         (core_xfer_partial, core_thread_alive, core_read_description)
11183         (core_pid_to_str, core_thread_name, core_has_memory)
11184         (core_has_stack, core_has_registers, core_info_proc): Rework as
11185         core_target methods.
11186         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11187         (_initialize_corelow): Initialize the_core_target.
11188         * gdbcore.h (core_target): Delete.
11189         (the_core_target): New.
11190
11191         * ctf.c: (ctf_target): New class.
11192         (ctf_ops): Now a ctf_target.
11193         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11194         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11195         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11196         methods.
11197         (init_ctf_ops): Delete.
11198         (_initialize_ctf): Don't call it.
11199         * tracefile-tfile.c (tfile_target): New class.
11200         (tfile_ops): Now a tfile_target.
11201         (tfile_open, tfile_close, tfile_files_info)
11202         (tfile_get_tracepoint_status, tfile_trace_find)
11203         (tfile_fetch_registers, tfile_xfer_partial)
11204         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11205         Refactor as tfile_target methods.
11206         (tfile_xfer_partial_features): Remove target_ops parameter.
11207         (init_tfile_ops): Delete.
11208         (_initialize_tracefile_tfile): Don't call it.
11209         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11210         (tracefile_has_stack, tracefile_has_registers)
11211         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11212         tracefile_target methods.
11213         (init_tracefile_ops): Delete.
11214         (tracefile_target::tracefile_target): New.
11215         * tracefile.h: Include "target.h".
11216         (tracefile_target): New class.
11217         (init_tracefile_ops): Delete.
11218
11219         * spu-multiarch.c (spu_multiarch_target): New class.
11220         (spu_ops): Now a spu_multiarch_target.
11221         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11222         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11223         (spu_search_memory, spu_mourn_inferior): Refactor as
11224         spu_multiarch_target methods.
11225         (init_spu_ops): Delete.
11226         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11227         complete_target_initialization.
11228
11229         * ravenscar-thread.c (ravenscar_thread_target): New class.
11230         (ravenscar_ops): Now a ravenscar_thread_target.
11231         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11232         (ravenscar_thread_alive, ravenscar_pid_to_str)
11233         (ravenscar_fetch_registers, ravenscar_store_registers)
11234         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11235         (ravenscar_stopped_by_hw_breakpoint)
11236         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11237         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11238         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11239         methods.
11240         (init_ravenscar_thread_ops): Delete.
11241         (_initialize_ravenscar): Remove references to
11242         init_ravenscar_thread_ops and complete_target_initialization.
11243
11244         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11245         (bsd_uthread_target): New class.
11246         (bsd_uthread_ops): Now a bsd_uthread_target.
11247         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11248         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11249         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11250         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11251         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11252         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11253         (bsd_uthread_target): Delete function.
11254         (_initialize_bsd_uthread): Remove reference to
11255         complete_target_initialization.
11256
11257         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11258         (target_bfd): ... this new class.
11259         (target_bfd_xfer_partial, target_bfd_get_section_table)
11260         (target_bfd_close): Refactor as target_bfd methods.
11261         (target_bfd::~target_bfd): New.
11262         (target_bfd_reopen): Adjust.
11263         (target_bfd::close): New.
11264
11265         * record-btrace.c (record_btrace_target): New class.
11266         (record_btrace_ops): Now a record_btrace_target.
11267         (record_btrace_open, record_btrace_stop_recording)
11268         (record_btrace_disconnect, record_btrace_close)
11269         (record_btrace_async, record_btrace_info)
11270         (record_btrace_insn_history, record_btrace_insn_history_range)
11271         (record_btrace_insn_history_from, record_btrace_call_history)
11272         (record_btrace_call_history_range)
11273         (record_btrace_call_history_from, record_btrace_record_method)
11274         (record_btrace_is_replaying, record_btrace_will_replay)
11275         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11276         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11277         (record_btrace_store_registers, record_btrace_prepare_to_store)
11278         (record_btrace_to_get_unwinder)
11279         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11280         (record_btrace_commit_resume, record_btrace_wait)
11281         (record_btrace_stop, record_btrace_can_execute_reverse)
11282         (record_btrace_stopped_by_sw_breakpoint)
11283         (record_btrace_supports_stopped_by_sw_breakpoint)
11284         (record_btrace_stopped_by_hw_breakpoint)
11285         (record_btrace_supports_stopped_by_hw_breakpoint)
11286         (record_btrace_update_thread_list, record_btrace_thread_alive)
11287         (record_btrace_goto_begin, record_btrace_goto_end)
11288         (record_btrace_goto, record_btrace_stop_replaying_all)
11289         (record_btrace_execution_direction)
11290         (record_btrace_prepare_to_generate_core)
11291         (record_btrace_done_generating_core): Refactor as
11292         record_btrace_target methods.
11293         (init_record_btrace_ops): Delete.
11294         (_initialize_record_btrace): Remove reference to
11295         init_record_btrace_ops.
11296         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11297         the execution_direction global.
11298         (record_full_base_target, record_full_target)
11299         (record_full_core_target): New classes.
11300         (record_full_ops): Now a record_full_target.
11301         (record_full_core_ops): Now a record_full_core_target.
11302         (record_full_target::detach, record_full_target::disconnect)
11303         (record_full_core_target::disconnect)
11304         (record_full_target::mourn_inferior, record_full_target::kill):
11305         New.
11306         (record_full_open, record_full_close, record_full_async): Refactor
11307         as methods of the record_full_base_target class.
11308         (record_full_resume, record_full_commit_resume): Refactor
11309         as methods of the record_full_target class.
11310         (record_full_wait, record_full_stopped_by_watchpoint)
11311         (record_full_stopped_data_address)
11312         (record_full_stopped_by_sw_breakpoint)
11313         (record_full_supports_stopped_by_sw_breakpoint)
11314         (record_full_stopped_by_hw_breakpoint)
11315         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11316         methods of the record_full_base_target class.
11317         (record_full_store_registers, record_full_xfer_partial)
11318         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11319         Refactor as methods of the record_full_target class.
11320         (record_full_can_execute_reverse, record_full_get_bookmark)
11321         (record_full_goto_bookmark, record_full_execution_direction)
11322         (record_full_record_method, record_full_info, record_full_delete)
11323         (record_full_is_replaying, record_full_will_replay)
11324         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11325         (record_full_stop_replaying): Refactor as methods of the
11326         record_full_base_target class.
11327         (record_full_core_resume, record_full_core_kill)
11328         (record_full_core_fetch_registers)
11329         (record_full_core_prepare_to_store)
11330         (record_full_core_store_registers, record_full_core_xfer_partial)
11331         (record_full_core_insert_breakpoint)
11332         (record_full_core_remove_breakpoint)
11333         (record_full_core_has_execution): Refactor
11334         as methods of the record_full_core_target class.
11335         (record_full_base_target::supports_delete_record): New.
11336         (init_record_full_ops): Delete.
11337         (init_record_full_core_ops): Delete.
11338         (record_full_save): Refactor as method of the
11339         record_full_base_target class.
11340         (_initialize_record_full): Remove references to
11341         init_record_full_ops and init_record_full_core_ops.
11342
11343         * remote.c (remote_target, extended_remote_target): New classes.
11344         (remote_ops): Now a remote_target.
11345         (extended_remote_ops): Now an extended_remote_target.
11346         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11347         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11348         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11349         (remote_pass_signals, remote_set_syscall_catchpoint)
11350         (remote_program_signals, )
11351         (remote_thread_always_alive): Remove target_ops parameter.
11352         (remote_thread_alive, remote_thread_name)
11353         (remote_update_thread_list, remote_threads_extra_info)
11354         (remote_static_tracepoint_marker_at)
11355         (remote_static_tracepoint_markers_by_strid)
11356         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11357         (remote_open): Refactor as methods of remote_target.
11358         (extended_remote_open, extended_remote_detach)
11359         (extended_remote_attach, extended_remote_post_attach):
11360         (extended_remote_supports_disable_randomization)
11361         (extended_remote_create_inferior): : Refactor as method of
11362         extended_remote_target.
11363         (remote_set_permissions, remote_open_1, remote_detach)
11364         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11365         (remote_resume, remote_commit_resume, remote_stop)
11366         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11367         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11368         (remote_prepare_to_store, remote_store_registers)
11369         (remote_flash_erase, remote_flash_done, remote_files_info)
11370         (remote_kill, remote_mourn, remote_insert_breakpoint)
11371         (remote_remove_breakpoint, remote_insert_watchpoint)
11372         (remote_watchpoint_addr_within_range)
11373         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11374         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11375         (remote_supports_stopped_by_sw_breakpoint)
11376         (remote_stopped_by_hw_breakpoint)
11377         (remote_supports_stopped_by_hw_breakpoint)
11378         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11379         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11380         (remote_verify_memory): Refactor as methods of remote_target.
11381         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11382         parameter.
11383         (remote_xfer_partial, remote_get_memory_xfer_limit)
11384         (remote_search_memory, remote_rcmd, remote_memory_map)
11385         (remote_pid_to_str, remote_get_thread_local_address)
11386         (remote_get_tib_address, remote_read_description): Refactor as
11387         methods of remote_target.
11388         (remote_target::fileio_open, remote_target::fileio_pwrite)
11389         (remote_target::fileio_pread, remote_target::fileio_close): New.
11390         (remote_hostio_readlink, remote_hostio_fstat)
11391         (remote_filesystem_is_local, remote_can_execute_reverse)
11392         (remote_supports_non_stop, remote_supports_disable_randomization)
11393         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11394         (remote_supports_enable_disable_tracepoint)
11395         (remote_supports_string_tracing)
11396         (remote_can_run_breakpoint_commands, remote_trace_init)
11397         (remote_download_tracepoint, remote_can_download_tracepoint)
11398         (remote_download_trace_state_variable, remote_enable_tracepoint)
11399         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11400         (remote_trace_start, remote_get_trace_status)
11401         (remote_get_tracepoint_status, remote_trace_stop)
11402         (remote_trace_find, remote_get_trace_state_variable_value)
11403         (remote_save_trace_data, remote_get_raw_trace_data)
11404         (remote_set_disconnected_tracing, remote_core_of_thread)
11405         (remote_set_circular_trace_buffer, remote_traceframe_info)
11406         (remote_get_min_fast_tracepoint_insn_len)
11407         (remote_set_trace_buffer_size, remote_set_trace_notes)
11408         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11409         (remote_disable_btrace, remote_teardown_btrace)
11410         (remote_read_btrace, remote_btrace_conf)
11411         (remote_augmented_libraries_svr4_read, remote_load)
11412         (remote_pid_to_exec_file, remote_can_do_single_step)
11413         (remote_execution_direction, remote_thread_handle_to_thread_info):
11414         Refactor as methods of remote_target.
11415         (init_remote_ops, init_extended_remote_ops): Delete.
11416         (remote_can_async_p, remote_is_async_p, remote_async)
11417         (remote_thread_events, remote_upload_tracepoints)
11418         (remote_upload_trace_state_variables): Refactor as methods of
11419         remote_target.
11420         (_initialize_remote): Remove references to init_remote_ops and
11421         init_extended_remote_ops.
11422
11423         * remote-sim.c (gdbsim_target): New class.
11424         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11425         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11426         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11427         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11428         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11429         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11430         Refactor as methods of gdbsim_target.
11431         (gdbsim_ops): Now a gdbsim_target.
11432         (init_gdbsim_ops): Delete.
11433         (gdbsim_cntrl_c): Adjust.
11434         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11435
11436         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11437         (the_amd64_linux_nat_target): New.
11438         (amd64_linux_fetch_inferior_registers)
11439         (amd64_linux_store_inferior_registers): Refactor as methods of
11440         amd64_linux_nat_target.
11441         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11442         * i386-linux-nat.c: Don't include "linux-nat.h".
11443         (i386_linux_nat_target): New class.
11444         (the_i386_linux_nat_target): New.
11445         (i386_linux_fetch_inferior_registers)
11446         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11447         as methods of i386_linux_nat_target.
11448         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11449         * inf-child.c (inf_child_ops): Delete.
11450         (inf_child_fetch_inferior_registers)
11451         (inf_child_store_inferior_registers): Delete.
11452         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11453         methods of inf_child_target.
11454         (inf_child_target::supports_terminal_ours)
11455         (inf_child_target::terminal_init)
11456         (inf_child_target::terminal_inferior)
11457         (inf_child_target::terminal_ours_for_output)
11458         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11459         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11460         New.
11461         (inf_child_open, inf_child_disconnect, inf_child_close)
11462         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11463         (inf_child_post_startup_inferior, inf_child_can_run)
11464         (inf_child_pid_to_exec_file): Refactor as methods of
11465         inf_child_target.
11466         (inf_child_follow_fork): Delete.
11467         (inf_child_target::can_create_inferior)
11468         (inf_child_target::can_attach): New.
11469         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11470         (inf_child_target::has_stack, inf_child_target::has_registers)
11471         (inf_child_target::has_execution): New.
11472         (inf_child_fileio_open, inf_child_fileio_pwrite)
11473         (inf_child_fileio_pread, inf_child_fileio_fstat)
11474         (inf_child_fileio_close, inf_child_fileio_unlink)
11475         (inf_child_fileio_readlink, inf_child_use_agent)
11476         (inf_child_can_use_agent): Refactor as methods of
11477         inf_child_target.
11478         (return_zero, inf_child_target): Delete.
11479         (inf_child_target::inf_child_target): New.
11480         * inf-child.h: Include "target.h".
11481         (inf_child_target): Delete function prototype.
11482         (inf_child_target): New class.
11483         (inf_child_open_target, inf_child_mourn_inferior)
11484         (inf_child_maybe_unpush_target): Delete.
11485         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11486         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11487         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11488         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11489         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11490         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11491         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11492         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11493         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11494         methods of inf_ptrace_target.
11495         (inf_ptrace_target): Delete function.
11496         * inf-ptrace.h: Include "inf-child.h".
11497         (inf_ptrace_target): Delete function declaration.
11498         (inf_ptrace_target): New class.
11499         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11500         * linux-nat.c (linux_target): New.
11501         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11502         (linux_nat_target::~linux_nat_target): New.
11503         (linux_child_post_attach, linux_child_post_startup_inferior)
11504         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11505         (linux_child_remove_fork_catchpoint)
11506         (linux_child_insert_vfork_catchpoint)
11507         (linux_child_remove_vfork_catchpoint)
11508         (linux_child_insert_exec_catchpoint)
11509         (linux_child_remove_exec_catchpoint)
11510         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11511         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11512         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11513         (linux_nat_stopped_data_address)
11514         (linux_nat_stopped_by_sw_breakpoint)
11515         (linux_nat_supports_stopped_by_sw_breakpoint)
11516         (linux_nat_stopped_by_hw_breakpoint)
11517         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11518         (linux_nat_kill, linux_nat_mourn_inferior)
11519         (linux_nat_xfer_partial, linux_nat_thread_alive)
11520         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11521         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11522         (linux_child_static_tracepoint_markers_by_strid)
11523         (linux_nat_is_async_p, linux_nat_can_async_p)
11524         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11525         (linux_nat_supports_multi_process)
11526         (linux_nat_supports_disable_randomization, linux_nat_async)
11527         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11528         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11529         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11530         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11531         methods of linux_nat_target.
11532         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11533         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11534         parameter.
11535         (check_stopped_by_watchpoint): Adjust.
11536         (linux_xfer_partial): Delete.
11537         (linux_target_install_ops, linux_target, linux_nat_add_target):
11538         Delete.
11539         (linux_nat_target::linux_nat_target): New.
11540         * linux-nat.h: Include "inf-ptrace.h".
11541         (linux_nat_target): New.
11542         (linux_target, linux_target_install_ops, linux_nat_add_target):
11543         Delete function declarations.
11544         (linux_target): Declare global.
11545         * linux-thread-db.c (thread_db_target): New.
11546         (thread_db_target::thread_db_target): New.
11547         (thread_db_ops): Delete.
11548         (the_thread_db_target): New.
11549         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11550         (thread_db_update_thread_list, thread_db_pid_to_str)
11551         (thread_db_extra_thread_info)
11552         (thread_db_thread_handle_to_thread_info)
11553         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11554         (thread_db_resume): Refactor as methods of thread_db_target.
11555         (init_thread_db_ops): Delete.
11556         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11557         * x86-linux-nat.c: Don't include "linux-nat.h".
11558         (super_post_startup_inferior): Delete.
11559         (x86_linux_nat_target::~x86_linux_nat_target): New.
11560         (x86_linux_child_post_startup_inferior)
11561         (x86_linux_read_description, x86_linux_enable_btrace)
11562         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11563         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11564         methods of x86_linux_nat_target.
11565         (x86_linux_create_target): Delete.  Bits folded ...
11566         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11567         pointer.
11568         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11569         (x86_linux_nat_target): New class.
11570         (x86_linux_create_target): Delete.
11571         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11572         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11573         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11574         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11575         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11576         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11577         make extern.
11578         (x86_use_watchpoints): Delete.
11579         * x86-nat.h: Include "breakpoint.h" and "target.h".
11580         (x86_use_watchpoints): Delete.
11581         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11582         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11583         (x86_insert_watchpoint, x86_remove_watchpoint)
11584         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11585         (x86_stopped_by_hw_breakpoint): New declarations.
11586         (x86_nat_target): New template class.
11587
11588         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11589         (the_ppc_linux_nat_target): New.
11590         (ppc_linux_fetch_inferior_registers)
11591         (ppc_linux_can_use_hw_breakpoint)
11592         (ppc_linux_region_ok_for_hw_watchpoint)
11593         (ppc_linux_ranged_break_num_registers)
11594         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11595         (ppc_linux_insert_mask_watchpoint)
11596         (ppc_linux_remove_mask_watchpoint)
11597         (ppc_linux_can_accel_watchpoint_condition)
11598         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11599         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11600         (ppc_linux_watchpoint_addr_within_range)
11601         (ppc_linux_masked_watch_num_registers)
11602         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11603         (ppc_linux_read_description): Refactor as methods of
11604         ppc_linux_nat_target.
11605         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11606
11607         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11608         (procfs_target): New class.
11609         (the_procfs_target): New.
11610         (procfs_target): Delete function.
11611         (procfs_auxv_parse, procfs_attach, procfs_detach)
11612         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11613         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11614         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11615         (procfs_create_inferior, procfs_update_thread_list)
11616         (procfs_thread_alive, procfs_pid_to_str)
11617         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11618         (procfs_stopped_data_address, procfs_insert_watchpoint)
11619         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11620         (proc_find_memory_regions, procfs_info_proc)
11621         (procfs_make_note_section): Refactor as methods of procfs_target.
11622         (_initialize_procfs): Adjust.
11623         * sol-thread.c (sol_thread_target): New class.
11624         (sol_thread_ops): Now a sol_thread_target.
11625         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11626         (sol_thread_fetch_registers, sol_thread_store_registers)
11627         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11628         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11629         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11630         (init_sol_thread_ops): Delete.
11631         (_initialize_sol_thread): Adjust.  Remove references to
11632         init_sol_thread_ops and complete_target_initialization.
11633
11634         * windows-nat.c (windows_nat_target): New class.
11635         (windows_fetch_inferior_registers)
11636         (windows_store_inferior_registers, windows_resume, windows_wait)
11637         (windows_attach, windows_detach, windows_pid_to_exec_file)
11638         (windows_files_info, windows_create_inferior)
11639         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11640         (windows_close, windows_pid_to_str, windows_xfer_partial)
11641         (windows_get_tib_address, windows_get_ada_task_ptid)
11642         (windows_thread_name, windows_thread_alive): Refactor as
11643         windows_nat_target methods.
11644         (do_initial_windows_stuff): Adjust.
11645         (windows_target): Delete function.
11646         (_initialize_windows_nat): Adjust.
11647
11648         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11649         (darwin_mourn_inferior, darwin_kill_inferior)
11650         (darwin_create_inferior, darwin_attach, darwin_detach)
11651         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11652         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11653         (darwin_supports_multi_process): Refactor as darwin_nat_target
11654         methods.
11655         (darwin_resume_to, darwin_files_info): Delete.
11656         (_initialize_darwin_inferior): Rename to ...
11657         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11658         * darwin-nat.h: Include "inf-child.h".
11659         (darwin_nat_target): New class.
11660         (darwin_complete_target): Delete.
11661         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11662         (darwin_target): New.
11663         (i386_darwin_fetch_inferior_registers)
11664         (i386_darwin_store_inferior_registers): Refactor as methods of
11665         darwin_nat_target.
11666         (darwin_complete_target): Delete, with ...
11667         (_initialize_i386_darwin_nat): ... bits factored out here.
11668
11669         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11670         (the_alpha_linux_nat_target): New.
11671         (alpha_linux_register_u_offset): Refactor as
11672         alpha_linux_nat_target method.
11673         (_initialize_alpha_linux_nat): Adjust.
11674         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11675         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11676         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11677         methods of linux_nat_trad_target.
11678         (linux_trad_target): Delete.
11679         * linux-nat-trad.h (linux_trad_target): Delete function.
11680         (linux_nat_trad_target): New class.
11681         * mips-linux-nat.c (mips_linux_nat_target): New class.
11682         (super_fetch_registers, super_store_registers, super_close):
11683         Delete.
11684         (the_mips_linux_nat_target): New.
11685         (mips64_linux_regsets_fetch_registers)
11686         (mips64_linux_regsets_store_registers)
11687         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11688         (mips_linux_register_u_offset, mips_linux_read_description)
11689         (mips_linux_can_use_hw_breakpoint)
11690         (mips_linux_stopped_by_watchpoint)
11691         (mips_linux_stopped_data_address)
11692         (mips_linux_region_ok_for_hw_watchpoint)
11693         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11694         (mips_linux_close): Refactor as methods of mips_linux_nat.
11695         (_initialize_mips_linux_nat): Adjust to C++ification.
11696
11697         * aix-thread.c (aix_thread_target): New class.
11698         (aix_thread_ops): Now an aix_thread_target.
11699         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11700         (aix_thread_fetch_registers, aix_thread_store_registers)
11701         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11702         (aix_thread_thread_alive, aix_thread_pid_to_str)
11703         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11704         Refactor as methods of aix_thread_target.
11705         (init_aix_thread_ops): Delete.
11706         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11707         and complete_target_initialization.
11708         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11709         (rs6000_nat_target): New class.
11710         (the_rs6000_nat_target): New.
11711         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11712         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11713         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11714         (super_create_inferior): Delete.
11715         (_initialize_rs6000_nat): Adjust to C++ification.
11716
11717         * arm-linux-nat.c (arm_linux_nat_target): New class.
11718         (the_arm_linux_nat_target): New.
11719         (arm_linux_fetch_inferior_registers)
11720         (arm_linux_store_inferior_registers, arm_linux_read_description)
11721         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11722         (arm_linux_remove_hw_breakpoint)
11723         (arm_linux_region_ok_for_hw_watchpoint)
11724         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11725         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11726         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11727         arm_linux_nat_target.
11728         (_initialize_arm_linux_nat): Adjust to C++ification.
11729
11730         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11731         (the_aarch64_linux_nat_target): New.
11732         (aarch64_linux_fetch_inferior_registers)
11733         (aarch64_linux_store_inferior_registers)
11734         (aarch64_linux_child_post_startup_inferior)
11735         (aarch64_linux_read_description)
11736         (aarch64_linux_can_use_hw_breakpoint)
11737         (aarch64_linux_insert_hw_breakpoint)
11738         (aarch64_linux_remove_hw_breakpoint)
11739         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11740         (aarch64_linux_region_ok_for_hw_watchpoint)
11741         (aarch64_linux_stopped_data_address)
11742         (aarch64_linux_stopped_by_watchpoint)
11743         (aarch64_linux_watchpoint_addr_within_range)
11744         (aarch64_linux_can_do_single_step): Refactor as methods of
11745         aarch64_linux_nat_target.
11746         (super_post_startup_inferior): Delete.
11747         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11748
11749         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11750         (the_hppa_linux_nat_target): New.
11751         (hppa_linux_fetch_inferior_registers)
11752         (hppa_linux_store_inferior_registers): Refactor as methods of
11753         hppa_linux_nat_target.
11754         (_initialize_hppa_linux_nat): Adjust to C++ification.
11755
11756         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11757         (the_ia64_linux_nat_target): New.
11758         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11759         (ia64_linux_stopped_data_address)
11760         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11761         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11762         ia64_linux_nat_target methods.
11763         (super_xfer_partial): Delete.
11764         (_initialize_ia64_linux_nat): Adjust to C++ification.
11765
11766         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11767         (the_m32r_linux_nat_target): New.
11768         (m32r_linux_fetch_inferior_registers)
11769         (m32r_linux_store_inferior_registers): Refactor as
11770         m32r_linux_nat_target methods.
11771         (_initialize_m32r_linux_nat): Adjust to C++ification.
11772
11773         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11774         (the_m68k_linux_nat_target): New.
11775         (m68k_linux_fetch_inferior_registers)
11776         (m68k_linux_store_inferior_registers): Refactor as
11777         m68k_linux_nat_target methods.
11778         (_initialize_m68k_linux_nat): Adjust to C++ification.
11779
11780         * s390-linux-nat.c (s390_linux_nat_target): New class.
11781         (the_s390_linux_nat_target): New.
11782         (s390_linux_fetch_inferior_registers)
11783         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11784         (s390_insert_watchpoint, s390_remove_watchpoint)
11785         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11786         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11787         (s390_auxv_parse, s390_read_description): Refactor as methods of
11788         s390_linux_nat_target.
11789         (_initialize_s390_nat): Adjust to C++ification.
11790
11791         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11792         (the_sparc_linux_nat_target): New.
11793         (_initialize_sparc_linux_nat): Adjust to C++ification.
11794         * sparc-nat.c (sparc_fetch_inferior_registers)
11795         (sparc_store_inferior_registers): Remove target_ops parameter.
11796         * sparc-nat.h (sparc_fetch_inferior_registers)
11797         (sparc_store_inferior_registers): Remove target_ops parameter.
11798         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11799         (the_sparc64_linux_nat_target): New.
11800         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11801
11802         * spu-linux-nat.c (spu_linux_nat_target): New class.
11803         (the_spu_linux_nat_target): New.
11804         (spu_child_post_startup_inferior, spu_child_post_attach)
11805         (spu_child_wait, spu_fetch_inferior_registers)
11806         (spu_store_inferior_registers, spu_xfer_partial)
11807         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11808         methods.
11809         (_initialize_spu_nat): Adjust to C++ification.
11810
11811         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11812         (the_tilegx_linux_nat_target): New.
11813         (fetch_inferior_registers, store_inferior_registers):
11814         Refactor as methods.
11815         (_initialize_tile_linux_nat): Adjust to C++ification.
11816
11817         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11818         (the_xtensa_linux_nat_target): New.
11819         (xtensa_linux_fetch_inferior_registers)
11820         (xtensa_linux_store_inferior_registers): Refactor as
11821         xtensa_linux_nat_target methods.
11822         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11823
11824         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11825         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11826         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11827         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11828         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11829         (fbsd_stopped_by_sw_breakpoint)
11830         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11831         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11832         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11833         (fbsd_post_startup_inferior, fbsd_post_attach)
11834         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11835         (fbsd_set_syscall_catchpoint)
11836         (super_xfer_partial, super_resume, super_wait)
11837         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11838         (fbsd_handle_debug_trap): Remove target_ops parameter.
11839         (fbsd_nat_add_target): Delete.
11840         * fbsd-nat.h: Include "inf-ptrace.h".
11841         (fbsd_nat_add_target): Delete.
11842         (USE_SIGTRAP_SIGINFO): Define.
11843         (fbsd_nat_target): New class.
11844
11845         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11846         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11847         (amd64bsd_target): Delete.
11848         * amd64-bsd-nat.h: New file.
11849         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11850         "x86-bsd-nat.h".
11851         (amd64_fbsd_nat_target): New class.
11852         (the_amd64_fbsd_nat_target): New.
11853         (amd64fbsd_read_description): Refactor as method of
11854         amd64_fbsd_nat_target.
11855         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11856         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11857         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11858         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11859         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11860         (i386bsd_target): Delete.
11861         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11862         (i386bsd_fetch_inferior_registers)
11863         (i386bsd_store_inferior_registers): Declare.
11864         (i386_bsd_nat_target): New class.
11865         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11866         (the_i386_fbsd_nat_target): New.
11867         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11868         i386_fbsd_nat_target methods.
11869         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11870         (_initialize_i386fbsd_nat): Adjust to C++ification.
11871         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11872         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11873         (_initialize_x86_bsd_nat): Adjust to C++ification.
11874         * x86-bsd-nat.h: Include "x86-nat.h".
11875         (x86bsd_target): Delete declaration.
11876         (x86bsd_nat_target): New class.
11877
11878         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11879         (the_aarch64_fbsd_nat_target): New.
11880         (aarch64_fbsd_fetch_inferior_registers)
11881         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11882         aarch64_fbsd_nat_target.
11883         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11884         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11885         (the_alpha_bsd_nat_target): New.
11886         (alphabsd_fetch_inferior_registers)
11887         (alphabsd_store_inferior_registers): Refactor as
11888         alpha_bsd_nat_target methods.
11889         (_initialize_alphabsd_nat): Refactor as methods of
11890         alpha_bsd_nat_target.
11891         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11892         (the_amd64_nbsd_nat_target): New.
11893         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11894         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11895         (the_amd64_obsd_nat_target): New.
11896         (_initialize_amd64obsd_nat): Adjust to C++ification.
11897         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11898         (the_arm_fbsd_nat_target): New.
11899         (arm_fbsd_fetch_inferior_registers)
11900         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11901         (_initialize_arm_fbsd_nat): Refactor as methods of
11902         arm_fbsd_nat_target.
11903         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11904         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11905         (the_arm_netbsd_nat_target): New.
11906         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11907         arm_netbsd_nat_target.
11908         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11909         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11910         (the_hppa_nbsd_nat_target): New.
11911         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11912         hppa_nbsd_nat_target methods.
11913         (_initialize_hppanbsd_nat): Adjust to C++ification.
11914         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11915         (the_hppa_obsd_nat_target): New.
11916         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11917         methods of hppa_obsd_nat_target.
11918         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11919         add_target.
11920         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11921         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11922         add_target.
11923         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11924         (_initialize_i386obsd_nat): Use add_target.
11925         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11926         (the_m68k_bsd_nat_target): New.
11927         (m68kbsd_fetch_inferior_registers)
11928         (m68kbsd_store_inferior_registers): Refactor as methods of
11929         m68k_bsd_nat_target.
11930         (_initialize_m68kbsd_nat): Adjust to C++ification.
11931         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11932         (the_mips_fbsd_nat_target): New.
11933         (mips_fbsd_fetch_inferior_registers)
11934         (mips_fbsd_store_inferior_registers): Refactor as methods of
11935         mips_fbsd_nat_target.
11936         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11937         add_target.
11938         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11939         (the_mips_nbsd_nat_target): New.
11940         (mipsnbsd_fetch_inferior_registers)
11941         (mipsnbsd_store_inferior_registers): Refactor as methods of
11942         mips_nbsd_nat_target.
11943         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11944         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11945         (the_mips64_obsd_nat_target): New.
11946         (mips64obsd_fetch_inferior_registers)
11947         (mips64obsd_store_inferior_registers): Refactor as methods of
11948         mips64_obsd_nat_target.
11949         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11950         add_target.
11951         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11952         nbsd_nat_target.
11953         * nbsd-nat.h: Include "inf-ptrace.h".
11954         (nbsd_nat_target): New class.
11955         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11956         (obsd_wait): Refactor as methods of obsd_nat_target.
11957         (obsd_add_target): Delete.
11958         * obsd-nat.h: Include "inf-ptrace.h".
11959         (obsd_nat_target): New class.
11960         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11961         (the_ppc_fbsd_nat_target): New.
11962         (ppcfbsd_fetch_inferior_registers)
11963         (ppcfbsd_store_inferior_registers): Refactor as methods of
11964         ppc_fbsd_nat_target.
11965         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11966         add_target.
11967         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11968         (the_ppc_nbsd_nat_target): New.
11969         (ppcnbsd_fetch_inferior_registers)
11970         (ppcnbsd_store_inferior_registers): Refactor as methods of
11971         ppc_nbsd_nat_target.
11972         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11973         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11974         (the_ppc_obsd_nat_target): New.
11975         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11976         methods of ppc_obsd_nat_target.
11977         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11978         add_target.
11979         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11980         (the_sh_nbsd_nat_target): New.
11981         (shnbsd_fetch_inferior_registers)
11982         (shnbsd_store_inferior_registers): Refactor as methods of
11983         sh_nbsd_nat_target.
11984         (_initialize_shnbsd_nat): Adjust to C++ification.
11985         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11986         (inf_ptrace_xfer_partial): Delete.
11987         (sparc_xfer_partial, sparc_target): Delete.
11988         * sparc-nat.h (sparc_fetch_inferior_registers)
11989         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11990         (sparc_target): Delete function declaration.
11991         (sparc_target): New template class.
11992         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11993         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11994         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11995         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11996         add_target.
11997         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11998         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11999         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
12000         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
12001         add_target.
12002         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
12003         (the_vax_bsd_nat_target): New.
12004         (vaxbsd_fetch_inferior_registers)
12005         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
12006         methods.
12007         (_initialize_vaxbsd_nat): Adjust to C++ification.
12008
12009         * bsd-kvm.c (bsd_kvm_target): New class.
12010         (bsd_kvm_ops): Now a bsd_kvm_target.
12011         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
12012         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
12013         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
12014         bsd_kvm_target.
12015         (bsd_kvm_return_one): Delete.
12016         (bsd_kvm_add_target): Adjust to C++ification.
12017
12018         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
12019         (nto_procfs_target_procfs): New classes.
12020         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
12021         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
12022         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
12023         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
12024         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
12025         (procfs_remove_hw_breakpoint, procfs_resume)
12026         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
12027         (procfs_kill_inferior, procfs_store_registers)
12028         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
12029         as methods of nto_procfs_target.
12030         (nto_procfs_ops): Now an nto_procfs_target_procfs.
12031         (nto_native_ops): Delete.
12032         (procfs_open, procfs_native_open): Delete.
12033         (nto_native_ops): Now an nto_procfs_target_native.
12034         (init_procfs_targets): Adjust to C++ification.
12035         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
12036         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
12037         Refactor as methods of nto_procfs_target.
12038
12039         * go32-nat.c (go32_nat_target): New class.
12040         (the_go32_nat_target): New.
12041         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
12042         (go32_store_registers, go32_xfer_partial, go32_files_info)
12043         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
12044         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12045         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12046         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12047         (go32_target): Delete.
12048         (_initialize_go32_nat): Adjust to C++ification.
12049
12050         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12051         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12052         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12053         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12054         gnu_nat_target.
12055         (gnu_target): Delete.
12056         * gnu-nat.h (gnu_target): Delete.
12057         (gnu_nat_target): New class.
12058         * i386-gnu-nat.c (gnu_base_target): New.
12059         (i386_gnu_nat_target): New class.
12060         (the_i386_gnu_nat_target): New.
12061         (_initialize_i386gnu_nat): Adjust to C++ification.
12062
12063 2018-05-02  Pedro Alves  <palves@redhat.com>
12064
12065         * bfd-target.c (target_bfd_xclose): Rename to ...
12066         (target_bfd_close): ... this.
12067         (target_bfd_reopen): Adjust.
12068         * target.c (target_close): Remove references to to_xclose.
12069         * target.h (target_ops::to_xclose): Delete.
12070         (target_ops::to_close): Update comments.
12071
12072 2018-05-02  Pedro Alves  <palves@redhat.com>
12073
12074         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12075         "linux-nat.h".
12076         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12077         * inf-ptrace.c (inf_ptrace_register_u_offset)
12078         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12079         (inf_ptrace_store_register, inf_ptrace_store_registers)
12080         (inf_ptrace_trad_target): Move to ...
12081         * linux-nat-trad.c: ... this new file.
12082         * linux-nat-trad.h: New file.
12083         * linux-nat.c (linux_target_install_ops): Make extern.
12084         (linux_trad_target): Delete.
12085         * linux-nat.h (linux_trad_target): Delete declaration.
12086         (linux_target_install_ops): Declare.
12087         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12088         "linux-nat.h".
12089
12090 2018-05-02  Pedro Alves  <palves@redhat.com>
12091
12092         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12093         procfs_target/add_target here.
12094         * procfs.c (procfs_target): Make static.
12095         (_initialize_procfs): Call add_target here.
12096         * procfs.h (struct target_ops): Remove forward declaration.
12097         (procfs_target): Remove declaration.
12098         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12099
12100 2018-05-02  Pedro Alves  <palves@redhat.com>
12101
12102         * procfs.c (procfs_stopped_by_watchpoint)
12103         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12104         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12105         Forward declare.
12106         (procfs_use_watchpoints): Delete, move contents...
12107         (procfs_target): ... here.
12108         * procfs.h (procfs_use_watchpoints): Delete declaration.
12109         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12110         procfs_use_watchpoints.
12111         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12112         procfs_use_watchpoints.
12113
12114 2018-05-02  Tom Tromey  <tom@tromey.com>
12115
12116         PR python/20084:
12117         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12118         and var_zuinteger_unlimited.
12119         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12120         and PARAM_ZUINTEGER_UNLIMITED.
12121         (set_parameter_value): Handle var_zuinteger and
12122         var_zuinteger_unlimited.
12123         (add_setshow_generic): Likewise.
12124         (parmpy_init): Likewise.
12125
12126 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12127
12128         PR rust/23124
12129         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12130         pointer is not null before dereferencing it.
12131
12132 2018-04-30  Tom Tromey  <tom@tromey.com>
12133
12134         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12135         is_mi_like_p.
12136
12137 2018-04-30  Tom Tromey  <tom@tromey.com>
12138
12139         * breakpoint.c (mention): Remove use of is_mi_like_p.
12140         (print_mention_ranged_breakpoint): Likewise.
12141         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12142         of is_mi_like_p.
12143
12144 2018-04-30  Tom Tromey  <tom@tromey.com>
12145
12146         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12147
12148 2018-04-30  Tom Tromey  <tom@tromey.com>
12149
12150         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12151         (info_spu_event_command): Remove some uses of is_mi_like_p.
12152
12153 2018-04-30  Tom Tromey  <tom@tromey.com>
12154
12155         * python/py-framefilter.c (py_print_single_arg)
12156         (enumerate_locals, py_print_args, py_print_frame): Remove some
12157         uses of is_mi_like_p.
12158
12159 2018-04-30  Tom Tromey  <tom@tromey.com>
12160
12161         * ui-out.c: Update.
12162         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12163         * ui-out.h (ui_out::is_mi_like_p): Now const.
12164         (ui_out::do_is_mi_like_p): Now const.
12165         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12166
12167 2018-04-30  Tom Tromey  <tom@tromey.com>
12168
12169         * varobj.c (varobj_set_visualizer): Use new_reference.
12170         * python/python.c (gdbpy_decode_line): Use new_reference.
12171         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12172         new_reference.
12173
12174 2018-04-30  Tom Tromey  <tom@tromey.com>
12175
12176         * varobj.c (install_new_value): Use new_reference.
12177         * value.h (value_incref): Return void.  Swap intro comment with
12178         value_decref.
12179         * value.c (set_value_parent): Use new_reference.
12180         (value_incref): Return void.  Update intro comment.
12181         (release_value): Use new_reference.
12182         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12183
12184 2018-04-30  Tom Tromey  <tom@tromey.com>
12185
12186         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12187         * gdb_bfd.h (new_bfd_ref): Remove.
12188         (gdb_bfd_open): Update comment.
12189         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12190         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12191         (gdb_bfd_fdopenr): Use new_reference.
12192         * exec.c (exec_file_attach): Use new_reference.
12193
12194 2018-04-30  Tom Tromey  <tom@tromey.com>
12195
12196         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12197         method.
12198
12199 2018-04-30  Tom Tromey  <tom@tromey.com>
12200
12201         * jit.c (jit_read_code_entry): Use type_align.
12202         * i386-tdep.c (i386_gdbarch_init): Don't call
12203         set_gdbarch_long_long_align_bit.
12204         * gdbarch.sh: Remove long_long_align_bit.
12205         * gdbarch.c, gdbarch.h: Rebuild.
12206         * arc-tdep.c (arc_type_align): New function.
12207         (arc_gdbarch_init): Use arc_type_align.  Don't call
12208         set_gdbarch_long_long_align_bit.
12209
12210 2018-04-30  Tom Tromey  <tom@tromey.com>
12211
12212         * rust-lang.c (rust_type_alignment): Remove.
12213         (rust_composite_type): Use type_align.
12214
12215 2018-04-30  Tom Tromey  <tom@tromey.com>
12216
12217         * NEWS: Mention Type.align.
12218         * python/py-type.c (typy_get_alignof): New function.
12219         (type_object_getset): Add "alignof".
12220
12221 2018-04-30  Tom Tromey  <tom@tromey.com>
12222
12223         PR exp/17095:
12224         * NEWS: Update.
12225         * std-operator.def (UNOP_ALIGNOF): New operator.
12226         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12227         New.
12228         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12229         * c-lang.c (c_op_print_tab): Add alignof.
12230         * c-exp.y (ALIGNOF): New token.
12231         (exp): Add "ALIGNOF" production.
12232         (ident_tokens): Add _Alignof and alignof.
12233
12234 2018-04-30  Tom Tromey  <tom@tromey.com>
12235
12236         * i386-tdep.c (i386_type_align): New function.
12237         (i386_gdbarch_init): Update.
12238         * gdbarch.sh (type_align): New method.
12239         * gdbarch.c, gdbarch.h: Rebuild.
12240         * arch-utils.h (default_type_align): Declare.
12241         * arch-utils.c (default_type_align): New function.
12242         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12243         (struct type) <align_log2>: New field.
12244         <instance_flags>: Now a bitfield.
12245         (TYPE_RAW_ALIGN): New macro.
12246         (type_align, type_raw_align, set_type_align): Declare.
12247         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12248         functions.
12249         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12250         (get_alignment, maybe_set_alignment): New functions.
12251         (read_structure_type, read_enumeration_type, read_array_type)
12252         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12253         (read_subrange_type, read_base_type): Set type alignment.
12254
12255 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12256
12257         * dwarf2read.c (read_index_from_section): Use bool.
12258
12259 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12260
12261         PR gdb/22950
12262         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12263         with #ifdef.
12264
12265 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12266
12267         PR build/22873
12268         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12269         last step, and do it atomically.
12270
12271 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12272
12273         * compile/compile-c-types.c (convert_int, convert_float):
12274         Update for C FE v1.
12275
12276 2018-04-27  Tom Tromey  <tom@tromey.com>
12277
12278         PR rust/22545:
12279         * rust-lang.c (rust_inclusive_range_type_p): New function.
12280         (rust_range): Handle inclusive ranges.
12281         (rust_compute_range): Likewise.
12282         * rust-exp.y (struct rust_op) <inclusive>: New field.
12283         (DOTDOTEQ): New constant.
12284         (range_expr): Add "..=" productions.
12285         (operator_tokens): Add "..=" token.
12286         (ast_range): Add "inclusive" parameter.
12287         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12288         ranges.
12289         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12290         bounds values.
12291         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12292         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12293         Update comments.
12294         * expprint.c (print_subexp_standard): Handle new bounds values.
12295         (dump_subexp_body_standard): Likewise.
12296
12297 2018-04-27  Tom Tromey  <tom@tromey.com>
12298
12299         * configure: Rebuild.
12300         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12301         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12302         "OVERRIDE".
12303         (class symbol_needs_eval_context): Likewise.
12304         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12305         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12306         "virtual".
12307         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12308         "override".
12309         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12310         * aarch64-tdep.c (instruction_reader::read): Use "override".
12311         (instruction_reader_test::read): Likewise.
12312         * arm-tdep.c (instruction_reader::read): Use "override".
12313         (instruction_reader_thumb::read): Likewise.
12314
12315 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12316
12317         PR remote/9665
12318         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12319         instead of remote_send.
12320         (remote_send): Remove.
12321
12322 2018-04-26  Pedro Alves  <palves@redhat.com>
12323
12324         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12325         find_function_start_sal instead of find_pc_line.
12326
12327 2018-04-26  Pedro Alves  <palves@redhat.com>
12328
12329         * breakpoint.c (set_breakpoint_location_function): Handle
12330         mst_data_gnu_ifunc.
12331         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12332         * elfread.c (elf_symtab_read): Give data symbols with
12333         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12334         (elf_rel_plt_read): Update comment.
12335         * linespec.c (convert_linespec_to_sals): Handle
12336         mst_data_gnu_ifunc.
12337         (minsym_found): Handle mst_data_gnu_ifunc.
12338         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12339         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12340         * parse.c (find_minsym_type_and_address): Handle
12341         mst_data_gnu_ifunc.
12342         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12343         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12344         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12345         comment.
12346         <mst_data_gnu_ifunc>: New enumerator.
12347
12348 2018-04-26  Pedro Alves  <palves@redhat.com>
12349
12350         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12351         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12352         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12353         Handle it.
12354         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12355         (lookup_minimal_symbol_by_pc): Adjust.
12356         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12357         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12358         * minsyms.h (lookup_msym_prefer): New enum.
12359         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12360         parameter by a lookup_msym_prefer parameter.
12361
12362 2018-04-26  Pedro Alves  <palves@redhat.com>
12363
12364         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12365         ends in "@plt" instead of looking at the symbol's section.
12366
12367 2018-04-26  Pedro Alves  <palves@redhat.com>
12368
12369         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12370         all references.
12371         (find_pc_partial_function_gnu_ifunc): Rename to ...
12372         (find_pc_partial_function): ... this, and remove references to
12373         'is_gnu_ifunc_p'.
12374         (find_pc_partial_function): Delete old implementation.
12375         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12376
12377 2018-04-26  Pedro Alves  <palves@redhat.com>
12378
12379         * linespec.c (struct bound_minimal_symbol_search_key): New.
12380         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12381         skip first line if we found a GNU ifunc minimal symbol by name.
12382         (compare_msymbols): Change parameters to work with a destructured
12383         lhs minsym.
12384         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12385         functions.
12386
12387 2018-04-26  Pedro Alves  <palves@redhat.com>
12388
12389         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12390         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12391         address/name.
12392         (add_location_to_breakpoint): Store the minsym and the objfile in
12393         the breakpoint location.
12394         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12395         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12396         Record the minsym in the sal.
12397         * symtab.h (symtab_and_line) <msymbol>: New field.
12398
12399 2018-04-26  Pedro Alves  <palves@redhat.com>
12400
12401         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12402         unless we actually resolved the ifunc.
12403
12404 2018-04-26  Pedro Alves  <palves@redhat.com>
12405
12406         * c-exp.y (variable production): Prefer ifunc minsyms over
12407         regular function symbols.
12408         * symtab.c (find_gnu_ifunc): New function.
12409         * minsyms.h (lookup_msym_prefer): New enum.
12410         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12411         parameter by a lookup_msym_prefer parameter.
12412         * symtab.h (find_gnu_ifunc): New declaration.
12413
12414 2018-04-26  Pedro Alves  <palves@redhat.com>
12415
12416         * blockframe.c (find_gnu_ifunc_target_type): New function.
12417         (find_function_type): New.
12418         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12419         return a value with a memory address.
12420         (eval_call): For calls to GNU ifunc functions, try to find the
12421         type of the target function from the type that the resolver
12422         returns.
12423         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12424         symbols.
12425         * infcall.c (find_function_return_type): Delete.
12426         (find_function_addr): Add 'function_type' parameter.  For calls to
12427         GNU ifunc functions, try to find the type of the target function
12428         from the type that the resolver returns, and return it via
12429         FUNCTION_TYPE.
12430         (call_function_by_hand_dummy): Adjust to use the function type
12431         returned by find_function_addr.
12432         (find_function_addr): Add 'function_type' parameter and move
12433         description here.
12434         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12435         declarations.
12436
12437 2018-04-26  Pedro Alves  <palves@redhat.com>
12438
12439         * c-exp.y (variable production): Skip finding an alias for ifunc
12440         symbols.
12441
12442 2018-04-26  Pedro Alves  <palves@redhat.com>
12443
12444         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12445
12446 2018-04-25  Pedro Alves  <palves@redhat.com>
12447
12448         * infcmd.c (kill_command): Print the pid as string, not the whole
12449         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12450         message.
12451         * remote.c (remote_detach_1): Print the pid as string, not the
12452         whole thread's ptid.
12453
12454 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12455             Sergio Durigan Junior  <sergiodj@redhat.com>
12456             Pedro Alves  <palves@redhat.com>
12457
12458         * infcmd.c (kill_command): Print message when inferior has
12459         been killed.
12460         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12461         '1'.
12462         (add_inferior): Improve message printed when
12463         'print_inferior_events' is on.
12464         (exit_inferior): Remove message printed when
12465         'print_inferior_events' is on.
12466         (detach_inferior): Improve message printed when
12467         'print_inferior_events' is on.
12468         (initialize_inferiors): Use 'add_inferior_silent' to set
12469         'current_inferior_'.
12470         * inferior.h (print_inferior_events): Declare here as
12471         'extern'.
12472         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12473         '[Detaching...]' messages when 'print_inferior_events' is on.
12474         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12475         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12476         'Detaching after fork from child...', replace it by '... from
12477         parent...'.
12478         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12479         prefix/suffix when printing 'Detaching...' messages.  Print
12480         them when 'print_inferior_events' is on.
12481         * remote.c (remote_detach_1): Print message when detaching
12482         from inferior and '!is_fork_parent'.
12483
12484 2018-04-24  Tom Tromey  <tom@tromey.com>
12485
12486         * cli-out.h: Reindent.
12487
12488 2018-04-24  Tom Tromey  <tom@tromey.com>
12489
12490         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12491         (cli_ui_out::do_field_string): Use fputs_filtered.
12492         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12493
12494 2018-04-23  Tom Tromey  <tom@tromey.com>
12495
12496         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12497         gdb::unique_xmalloc_ptr.
12498
12499 2018-04-23  Tom Tromey  <tom@tromey.com>
12500
12501         * configure: Rebuild.
12502
12503 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12504
12505         PR gdb/23095
12506         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12507         prepare_for_testing.  Set normal_bp to r_debug_state if target
12508         is bsd.
12509
12510 2018-04-21  Pedro Alves  <palves@redhat.com>
12511             Rajendra SY  <rajendra.sy@gmail.com>
12512
12513         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12514         * remote.c (extended_remote_attach): In all-stop mode, mark the
12515         thread as executing.
12516
12517 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12518
12519         * thread.c (thread_apply_all_command): Fix comment.
12520         (thread_command): Fix comment.
12521
12522 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12523
12524         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12525         parameter.
12526         * features/aarch64-core.c (create_feature_aarch64_core):
12527         Regenerate.
12528         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12529         Likewise.
12530         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12531         Likewise.
12532         * features/i386/32bit-avx512.c
12533         (create_feature_i386_32bit_avx512): Likewise.
12534         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12535         Likewise.
12536         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12537         Likewise.
12538         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12539         Likewise.
12540         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12541         Likewise.
12542         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12543         Likewise.
12544         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12545         Likewise.
12546         * features/i386/64bit-avx512.c
12547         (create_feature_i386_64bit_avx512): Likewise.
12548         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12549         Likewise.
12550         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12551         Likewise.
12552         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12553         Likewise.
12554         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12555         Likewise.
12556         * features/i386/64bit-segments.c
12557         (create_feature_i386_64bit_segments): Likewise.
12558         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12559         Likewise.
12560         * features/i386/x32-core.c
12561         (create_feature_i386_x32_core): Likewise.
12562         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12563         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12564         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12565         * target-descriptions.c: In generated code, don't pass xml
12566         filename.
12567
12568 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12569
12570         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12571         (print_xml_feature::visit_post): Likewise.
12572         (print_xml_feature::visit): Likewise.
12573         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12574         (print_xml_feature): Add new class.
12575         * regformats/regdat.sh: Null xmltarget on feature targets.
12576         * target-descriptions.c (struct target_desc): Add xmltarget.
12577         (maintenance_check_tdesc_xml_convert): Add unittest function.
12578         (tdesc_get_features_xml): Add function to get xml.
12579         (maintenance_check_xml_descriptions): Test xml generation.
12580         * xml-tdesc.c (string_read_description_xml): Add function.
12581         * xml-tdesc.h (string_read_description_xml): Add declaration.
12582
12583 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12584
12585         * features/Makefile: Add feature marker to targets with new style
12586         target descriptions.
12587         * regformats/aarch64.dat: Regenerate.
12588         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12589         * regformats/i386/amd64-avx-linux.dat: Likewise.
12590         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12591         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12592         * regformats/i386/amd64-linux.dat: Likewise.
12593         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12594         * regformats/i386/amd64.dat: Likewise.
12595         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12596         * regformats/i386/i386-avx-linux.dat: Likewise.
12597         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12598         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12599         * regformats/i386/i386-linux.dat: Likewise.
12600         * regformats/i386/i386-mmx-linux.dat: Likewise.
12601         * regformats/i386/i386-mpx-linux.dat: Likewise.
12602         * regformats/i386/i386.dat: Likewise.
12603         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12604         * regformats/i386/x32-avx-linux.dat: Likewise.
12605         * regformats/i386/x32-linux.dat: Likewise.
12606         * regformats/tic6x-c62x-linux.dat: Likewise.
12607         * regformats/tic6x-c64x-linux.dat: Likewise.
12608         * regformats/tic6x-c64xp-linux.dat: Likewise.
12609         * regformats/regdat.sh: Parse feature marker.
12610
12611 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12612
12613         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12614         (tdesc_osabi_name): Likewise.
12615         * target-descriptions.c (tdesc_architecture_name): Add new
12616         function.
12617         (tdesc_osabi_name): Likewise.
12618
12619 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12620
12621         * common/tdesc.c (tdesc_predefined_type): Move to here.
12622         (tdesc_named_type): Likewise.
12623         (tdesc_create_vector): Likewise.
12624         (tdesc_create_struct): Likewise.
12625         (tdesc_set_struct_size): Likewise.
12626         (tdesc_create_union): Likewise.
12627         (tdesc_create_flags): Likewise.
12628         (tdesc_create_enum): Likewise.
12629         (tdesc_add_field): Likewise.
12630         (tdesc_add_typed_bitfield): Likewise.
12631         (tdesc_add_bitfield): Likewise.
12632         (tdesc_add_flag): Likewise.
12633         (tdesc_add_enum_value): Likewise.
12634         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12635         (struct tdesc_type_vector): Likewise.
12636         (struct tdesc_type_field): Likewise.
12637         (struct tdesc_type_with_fields): Likewise.
12638         (tdesc_create_enum): Add declaration.
12639         (tdesc_add_typed_bitfield): Likewise.
12640         (tdesc_add_enum_value): Likewise.
12641         * target-descriptions.c (tdesc_type_field): Move from here.
12642         (tdesc_type_builtin): Likewise.
12643         (tdesc_type_vector): Likewise.
12644         (tdesc_type_with_fields): Likewise.
12645         (tdesc_predefined_types): Likewise.
12646         (tdesc_named_type): Likewise.
12647         (tdesc_create_vector): Likewise.
12648         (tdesc_create_struct): Likewise.
12649         (tdesc_set_struct_size): Likewise.
12650         (tdesc_create_union): Likewise.
12651         (tdesc_create_flags): Likewise.
12652         (tdesc_create_enum): Likewise.
12653         (tdesc_add_field): Likewise.
12654         (tdesc_add_typed_bitfield): Likewise.
12655         (tdesc_add_bitfield): Likewise.
12656         (tdesc_add_flag): Likewise.
12657         (tdesc_add_enum_value): Likewise.
12658         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12659         (tdesc_add_typed_bitfield): Likewise.
12660         (tdesc_add_enum_value): Likewise.
12661
12662 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12663
12664         * common/tdesc.c (tdesc_feature::accept): Move to here.
12665         (tdesc_feature::operator==): Likewise.
12666         (tdesc_create_reg): Likewise.
12667         * common/tdesc.h (tdesc_type_kind): Likewise.
12668         (struct tdesc_type): Likewise.
12669         (struct tdesc_feature): Likewise.
12670         * regformats/regdat.sh: Create a feature.
12671         * target-descriptions.c (tdesc_type_kind): Move from here.
12672         (tdesc_type): Likewise.
12673         (tdesc_type_up): Likewise.
12674         (tdesc_feature): Likewise.
12675         (tdesc_create_reg): Likewise.
12676
12677 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12678
12679         * Makefile.in: Add arch/tdesc.c
12680         * common/tdesc.c: New file.
12681         * common/tdesc.h (tdesc_element_visitor): Move to here.
12682         (tdesc_element): Likewise.
12683         (tdesc_reg): Likewise.
12684         (tdesc_reg_up): Likewise.
12685         * regformats/regdef.h (reg): Add offset to constructors.
12686         * target-descriptions.c (tdesc_element_visitor): Move from here.
12687         (tdesc_element): Likewise.
12688         (tdesc_reg): Likewise.
12689         (tdesc_reg_up): Likewise.
12690
12691 2018-04-17  Tom Tromey  <tom@tromey.com>
12692
12693         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12694         discriminant field.
12695
12696 2018-04-17  Tom Tromey  <tom@tromey.com>
12697
12698         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12699
12700 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12701
12702         * symtab.c (print_symbol_info): Skip printing filename and line
12703         number when `last' is NULL.
12704         (symtab_symbol_info): Use empty string instead of NULL for first
12705         invocation of print_symbol_info.
12706         (rbreak_command): Pass NULL to `last' parameter of
12707         print_symbol_info.
12708
12709 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12710
12711         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12712         instead of nullptr.
12713
12714 2018-04-16  Pedro Alves  <palves@redhat.com>
12715
12716         * MAINTAINERS (sh): Remove.
12717         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12718         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12719         (ALLDEPFILES): Remove sh64-tdep.c.
12720         * NEWS: Mentions that support for SH-5/SH64 is removed.
12721         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12722         (sh*-*-openbsd*): Ditto.
12723         (sh64-*-elf*): Remove.
12724         (sh*): Remove.
12725         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12726         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12727         * sh-tdep.c: No longer include "sh64-tdep.h".
12728         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12729         * sh64-tdep.c, sh64-tdep.h: Remove files.
12730
12731 2018-04-16  Pedro Alves  <palves@redhat.com>
12732
12733         * MAINTAINERS: Remove m88k.
12734         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12735         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12736         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12737         * NEWS: Mention that support for m88k was removed.
12738         * configure.host (m88*-*-*): Remove support.
12739         * configure.nat (m88k-*-*): Remove support.
12740         * configure.tgt (m88*-*-openbsd*): Remove.
12741         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12742
12743 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12744
12745         * configure.tgt (x86_tobjs): New variable.
12746         (amd64_tobjs, i386_tobjs): Use it.
12747
12748 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12749
12750         * symtab.c (print_symbol_info): Precede the symbol definition by
12751         the line number when available.
12752         * NEWS: Advertise this enhancement.
12753
12754 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12755
12756         * NEWS (New options): announce set/show record btrace cpu.
12757         * btrace.c: Include record-btrace.h.
12758         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12759         the vendor is unknown.
12760         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12761         Maybe overwrite the btrace configuration's cpu.
12762         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12763         (btrace_fetch): Add cpu parameter.  Update callers.
12764         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12765         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12766         errata workarounds if the vendor is unknown.
12767         * python/py-record-btrace.c: Include record-btrace.h.
12768         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12769         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12770         * record-btrace.c (record_btrace_cpu_state_kind): New.
12771         (record_btrace_cpu): New.
12772         (set_record_btrace_cpu_cmdlist): New.
12773         (record_btrace_get_cpu): New.
12774         (require_btrace_thread, record_btrace_info)
12775         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12776         (cmd_set_record_btrace_cpu_none): New.
12777         (cmd_set_record_btrace_cpu_auto): New.
12778         (cmd_set_record_btrace_cpu): New.
12779         (cmd_show_record_btrace_cpu): New.
12780         (_initialize_record_btrace): Initialize set/show record btrace cpu
12781         commands.
12782         * record-btrace.h (record_btrace_get_cpu): New.
12783
12784 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12785
12786         * record.c (set_record_command): Fix typo in message.
12787
12788 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12789
12790         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12791
12792 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12793
12794         * infrun.c (process_event_stop_test): Call
12795         gdbarch_in_indirect_branch_thunk.
12796         * gdbarch.sh (in_indirect_branch_thunk): New.
12797         * gdbarch.c: Regenerated.
12798         * gdbarch.h: Regenerated.
12799         * x86-tdep.h: New.
12800         * x86-tdep.c: New.
12801         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12802         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12803         (ALLDEPFILES): Add x86-tdep.c.
12804         * arch-utils.h (default_in_indirect_branch_thunk): New.
12805         * arch-utils.c (default_in_indirect_branch_thunk): New.
12806         * i386-tdep: Include x86-tdep.h.
12807         (i386_in_indirect_branch_thunk): New.
12808         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12809         function.
12810         * amd64-tdep: Include x86-tdep.h.
12811         (amd64_in_indirect_branch_thunk): New.
12812         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12813
12814 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12815
12816         PR gdb/23053
12817         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12818         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12819         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12820         regression.
12821
12822 2018-04-12  Tom Tromey  <tom@tromey.com>
12823
12824         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12825         (rust_evaluate_subexp): Likewise.
12826
12827 2018-04-12  Pedro Alves  <palves@redhat.com>
12828
12829         * procfs.c (procfs_detach): Make forward declaration's prototype
12830         match definition's protototype.
12831         (proc_get_LDT_entry): Remove stale do_cleanups call.
12832
12833 2018-04-12  Pedro Alves  <palves@redhat.com>
12834
12835         * target.h (target_ops::to_has_exited): Delete.
12836         (target_has_exited): Delete.
12837         * target-delegates.c: Regenerate.
12838
12839 2018-04-11  Pedro Alves  <palves@redhat.com>
12840
12841         * target.c (fileio_fh_t::t): Add comment.
12842         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12843         (target_fileio_close): Handle a NULL target.
12844         (invalidate_fileio_fh): New.
12845         (target_close): Call it.
12846         * remote.c (remote_hostio_send_command): No longer check whether
12847         remote_desc is open.
12848
12849 2018-04-11  Pedro Alves  <palves@redhat.com>
12850
12851         * target.c (fileio_fh_t): Make it a named struct instead of a
12852         typedef.
12853         (fileio_fh_t::is_closed): New method.
12854         (DEF_VEC_O (fileio_fh_t)): Remove.
12855         (fileio_fhandles): Now a std::vector.
12856         (is_closed_fileio_fh): Delete.
12857         (acquire_fileio_fd): Adjust.  Rename parameters.
12858         (release_fileio_fd): Adjust.
12859         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12860         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12861         (target_fileio_close): Adjust.
12862
12863 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12864
12865         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12866         index.
12867
12868 2018-04-10  Pedro Alves  <palves@redhat.com>
12869
12870         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12871         (scoped_finish_thread_state): New class.
12872         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12873         cleanup.
12874         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12875         (fetch_inferior_event, normal_stop): Likewise.
12876         * thread.c (finish_thread_state_cleanup): Delete.
12877
12878 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12879             Pedro Alves  <palves@redhat.com>
12880
12881         * value.c: Include "selftest.h" and "common/array-view.h".
12882         (struct range) <operator ==>: New.
12883         (test_ranges_contain): New.
12884         (check_ranges_vector): New.
12885         (test_insert_into_bit_range_vector): New.
12886         (_initialize_values): Register selftests.
12887         * common/array-view.h (operator==, operator!=): New.
12888
12889 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12890
12891         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12892         an iterator.
12893         * inline-frame.c: Include <algorithm>.
12894         (struct inline_state): Add constructor.
12895         (inline_state_s): Remove.
12896         (DEF_VEC_O(inline_state_s)): Remove.
12897         (inline_states): Change type to std::vector.
12898         (find_inline_frame_state): Adjust to std::vector.
12899         (allocate_inline_frame_state): Remove.
12900         (clear_inline_frame_state): Adjust to std::vector.
12901         (skip_inline_frames): Adjust to std::vector.
12902
12903 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12904
12905         * tracepoint.h (struct trace_state_variable): Add constructor.
12906         <name>: Change type to std::string.
12907         * tracepoint.c (tsv_s): Remove.
12908         (DEF_VEC_O(tsv_s)): Remove.
12909         (tvariables): Change to std::vector.
12910         (create_trace_state_variable): Adjust to std::vector.
12911         (find_trace_state_variable): Likewise.
12912         (find_trace_state_variable_by_number): Likewise.
12913         (delete_trace_state_variable): Likewise.
12914         (trace_variable_command): Adjust to std::string.
12915         (delete_trace_variable_command): Likewise.
12916         (tvariables_info_1): Adjust to std::vector.
12917         (save_trace_state_variables): Likewise.
12918         (start_tracing): Likewise.
12919         (merge_uploaded_trace_state_variables): Adjust to std::vector
12920         and std::string.
12921         * target.h (struct target_ops)
12922         <to_download_trace_state_variable>: Pass reference to
12923         trace_state_variable.
12924         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12925         * target-delegates.c: Re-generate.
12926         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12927         (mi_tsv_deleted): Likewise.
12928         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12929         * remote.c (remote_download_trace_state_variable): Change
12930         pointer to reference and adjust.
12931         * make-target-delegates (parse_argtypes): Handle references.
12932         (write_function_header): Likewise.
12933         (munge_type): Likewise.
12934
12935 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12936
12937         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12938         string_view-selftests.c.
12939         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12940         testsuite.
12941         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12942         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12943         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12944         * unittests/basic_string_view/element_access/char/1.cc:
12945         Likewise.
12946         * unittests/basic_string_view/element_access/char/empty.cc:
12947         Likewise.
12948         * unittests/basic_string_view/element_access/char/front_back.cc:
12949         Likewise.
12950         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12951         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12952         Likewise.
12953         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12954         Likewise.
12955         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12956         Likewise.
12957         * unittests/basic_string_view/operations/compare/char/1.cc:
12958         Likewise.
12959         * unittests/basic_string_view/operations/compare/char/13650.cc:
12960         Likewise.
12961         * unittests/basic_string_view/operations/copy/char/1.cc:
12962         Likewise.
12963         * unittests/basic_string_view/operations/data/char/1.cc:
12964         Likewise.
12965         * unittests/basic_string_view/operations/find/char/1.cc:
12966         Likewise.
12967         * unittests/basic_string_view/operations/find/char/2.cc:
12968         Likewise.
12969         * unittests/basic_string_view/operations/find/char/3.cc:
12970         Likewise.
12971         * unittests/basic_string_view/operations/find/char/4.cc:
12972         Likewise.
12973         * unittests/basic_string_view/operations/rfind/char/1.cc:
12974         Likewise.
12975         * unittests/basic_string_view/operations/rfind/char/2.cc:
12976         Likewise.
12977         * unittests/basic_string_view/operations/rfind/char/3.cc:
12978         Likewise.
12979         * unittests/basic_string_view/operations/substr/char/1.cc:
12980         Likewise.
12981         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12982         * unittests/string_view-selftests.c: New file.
12983
12984 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12985
12986         * unittests/basic_string_view/capacity/1.cc: New file.
12987         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12988         * unittests/basic_string_view/cons/char/1.cc: New file.
12989         * unittests/basic_string_view/cons/char/2.cc: New file.
12990         * unittests/basic_string_view/cons/char/3.cc: New file.
12991         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12992         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12993         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12994         * unittests/basic_string_view/element_access/char/1.cc: New file.
12995         * unittests/basic_string_view/element_access/char/2.cc: New file.
12996         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12997         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12998         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12999         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
13000         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
13001         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
13002         * unittests/basic_string_view/include.cc: New file.
13003         * unittests/basic_string_view/inserters/char/1.cc: New file.
13004         * unittests/basic_string_view/inserters/char/2.cc: New file.
13005         * unittests/basic_string_view/inserters/char/3.cc: New file.
13006         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
13007         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
13008         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
13009         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
13010         * unittests/basic_string_view/literals/types.cc: New file.
13011         * unittests/basic_string_view/literals/values.cc: New file.
13012         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
13013         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
13014         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
13015         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
13016         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
13017         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
13018         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
13019         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
13020         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
13021         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
13022         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
13023         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
13024         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
13025         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
13026         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
13027         * unittests/basic_string_view/operations/data/char/1.cc: New file.
13028         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
13029         * unittests/basic_string_view/operations/find/char/1.cc: New file.
13030         * unittests/basic_string_view/operations/find/char/2.cc: New file.
13031         * unittests/basic_string_view/operations/find/char/3.cc: New file.
13032         * unittests/basic_string_view/operations/find/char/4.cc: New file.
13033         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
13034         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
13035         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
13036         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
13037         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
13038         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
13039         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
13040         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
13041         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
13042         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
13043         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
13044         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13045         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13046         * unittests/basic_string_view/operators/char/2.cc: New file.
13047         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13048         * unittests/basic_string_view/range_access/char/1.cc: New file.
13049         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13050         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13051         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13052         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13053         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13054         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13055         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13056         * unittests/basic_string_view/typedefs.cc: New file.
13057         * unittests/basic_string_view/types/1.cc: New file.
13058
13059 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13060
13061         * common/gdb_string_view.h: Remove libstdc++ implementation
13062         details, adjust to gdb reality.
13063         * common/gdb_string_view.tcc: Likewise.
13064         * cli/cli-script.c (struct string_view): Remove.
13065         (user_args) <m_args>: Change element type to gdb::string_view.
13066         (user_args::insert_args): Adjust.
13067
13068 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13069
13070         * common/gdb_string_view.h: New file.
13071         * common/gdb_string_view.tcc: New file.
13072
13073 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13074
13075         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13076         * configure: Re-generate.
13077
13078 2018-04-09  Pedro Alves  <palves@redhat.com>
13079
13080         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13081         (set_target_gdbarch): Call
13082         gdb::observers::architecture_changed.notify instead of
13083         observer_notify_architecture_changed.
13084
13085 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13086
13087         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13088         (do_restore_current_traceframe_cleanup): Remove.
13089         (restore_current_traceframe_cleanup_dtor): Remove.
13090         (make_cleanup_restore_current_traceframe): Remove.
13091         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13092         New.
13093         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13094         * infrun.c (fetch_inferior_event): Use
13095         scoped_restore_current_traceframe.
13096
13097 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13098
13099         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13100         Remove.
13101         <n_allocated_type_units>: Remove.
13102         <all_type_units>: Change to std::vector.
13103         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13104         to std::vector change.
13105         (dwarf2_per_objfile::get_cutu): Likewise.
13106         (dwarf2_per_objfile::get_tu): Likewise.
13107         (create_signatured_type_table_from_index): Likewise.
13108         (create_signatured_type_table_from_debug_names): Likewise.
13109         (dw2_symtab_iter_next): Likewise.
13110         (dw2_print_stats): Likewise.
13111         (dw2_expand_all_symtabs): Likewise.
13112         (dw2_expand_marked_cus): Likewise.
13113         (dw2_debug_names_iterator::next): Likewise.
13114         (dwarf2_initialize_objfile): Likewise.
13115         (add_signatured_type_cu_to_table): Likewise.
13116         (create_all_type_units): Likewise.
13117         (add_type_unit): Likewise.
13118         (struct tu_abbrev_offset): Add constructor.
13119         (build_type_psymtabs_1): Adjust to std::vector change.
13120         (print_tu_stats): Likewise.
13121         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13122         (write_debug_names): Likewise.
13123
13124 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13125
13126         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13127         Make an std::vector.
13128         <n_comp_units>: Remove.
13129         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13130         to std::vector change.
13131         (dwarf2_per_objfile::get_cutu): Likewise.
13132         (dwarf2_per_objfile::get_cu): Likewise.
13133         (create_cus_from_index): Likewise.
13134         (create_addrmap_from_index): Likewise.
13135         (create_addrmap_from_aranges): Likewise.
13136         (dwarf2_read_index): Likewise.
13137         (dw2_find_last_source_symtab): Likewise.
13138         (dw2_map_symtabs_matching_filename): Likewise.
13139         (dw2_symtab_iter_next): Likewise.
13140         (dw2_print_stats): Likewise.
13141         (dw2_expand_all_symtabs): Likewise.
13142         (dw2_expand_symtabs_with_fullname): Likewise.
13143         (dw2_expand_marked_cus): Likewise.
13144         (dw2_map_symbol_filenames): Likewise.
13145         (create_cus_from_debug_names): Likewise.
13146         (dwarf2_read_debug_names): Likewise.
13147         (dw2_debug_names_iterator::next): Likewise.
13148         (dwarf2_initialize_objfile): Likewise.
13149         (set_partial_user): Likewise.
13150         (dwarf2_build_psymtabs_hard): Likewise.
13151         (read_comp_units_from_section): Remove arguments, adjust to
13152         std::vector change.
13153         (create_all_comp_units): Adjust to std::vector and
13154         read_comp_units_from_section changes.
13155         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13156         change.
13157         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13158         (psyms_seen_size): Likewise.
13159         (write_gdbindex): Likewise.
13160         (write_debug_names): Likewise.
13161
13162 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13163
13164         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13165         with dwarf2_per_objfile.
13166         (create_cus_from_index): Likewise.
13167         (create_signatured_type_table_from_index): Likewise.
13168         (dwarf2_read_index): Likewise.
13169         (dwarf2_initialize_objfile): Likewise.
13170         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13171         per_cu rather than get_dwarf2_per_objfile.
13172
13173 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13174
13175         * dwarf2read.h (struct signatured_type): Forward declare.
13176         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13177         New methods.
13178         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13179         (dw2_get_cutu): ...this.
13180         (dwarf2_per_objfile::get_cu): Rename from...
13181         (dw2_get_cu): ...this.
13182         (dwarf2_per_objfile::get_tu): New.
13183         (create_addrmap_from_index): Adjust.
13184         (create_addrmap_from_aranges): Adjust.
13185         (dw2_find_last_source_symtab): Adjust.
13186         (dw2_map_symtabs_matching_filename): Adjust.
13187         (dw2_symtab_iter_next): Adjust.
13188         (dw2_print_stats): Adjust.
13189         (dw2_expand_all_symtabs): Adjust.
13190         (dw2_expand_symtabs_with_fullname): Adjust.
13191         (dw2_expand_marked_cus): Adjust.
13192         (dw_expand_symtabs_matching_file_matcher): Adjust.
13193         (dw2_map_symbol_filenames): Adjust.
13194         (dw2_debug_names_iterator::next): Adjust.
13195         (dwarf2_initialize_objfile): Adjust.
13196         (set_partial_user): Adjust.
13197         (dwarf2_build_psymtabs_hard): Adjust.
13198
13199 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13200
13201         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13202         Remove unused variables.
13203         (dw2_map_symtabs_matching_filename): Likewise.
13204         (dwarf2_record_block_ranges): Likewise.
13205         (dwarf2_read_addr_index): Likewise.
13206         (follow_die_offset): Likewise.
13207
13208 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13209
13210         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13211         to symbol_file_add_main.
13212
13213 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13214
13215         PR mi/22299
13216         * mi/mi-console.c (do_fputc_async_safe): New.
13217         (mi_console_file::write_async_safe): New.
13218         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13219         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13220         New.
13221         * ui-file.c (ui_file::putstrn): Adjust call to
13222         fputstrn_unfiltered.
13223         * utils.c (printchar): Replace do_fputs and do_fprintf
13224         parameters by do_fputc.
13225         (fputstr_filtered): Adjust call to printchar.
13226         (fputstr_unfiltered): Likewise.
13227         (fputstrn_filtered): Likewise.
13228         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13229         printchar.
13230         * utils.h (do_fputc_ftype): New typedef.
13231         (fputstrn_unfiltered): Add do_fputc parameter.
13232
13233 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13234
13235         * regformats/i386/i386-avx.dat: Remove.
13236
13237 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13238
13239         PR gdb/22979
13240         * amd64-tdep.c (amd64_none_init_abi): New function.
13241         (amd64_x32_none_init_abi): New function.
13242         (_initialize_amd64_tdep): Register handlers for x86-64 and
13243         x64_32 with GDB_OSABI_NONE.
13244         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13245         GDB_OSABI_NONE osabi.
13246
13247 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13248
13249         PR gdb/22980
13250         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13251         GDB_OSABI_NONE.
13252         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13253         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13254
13255 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13256
13257         * common/byte-vector.h (char_vector): New type.
13258         * target.h (target_read_alloc): Return
13259         gdb::optional<byte_vector>.
13260         (target_read_stralloc): Return gdb::optional<char_vector>.
13261         (target_get_osdata): Return gdb::optional<char_vector>.
13262         * target.c (target_read_alloc_1): Templatize.  Replacement
13263         manual memory management with vector.
13264         (target_read_alloc): Change return type, adjust.
13265         (target_read_stralloc): Change return type, adjust.
13266         (target_get_osdata): Change return type, adjust.
13267         * auxv.c (struct auxv_info) <length>: Remove.
13268         <data>: Change type to gdb::optional<byte_vector>.
13269         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13270         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13271         (target_auxv_search): Adjust.
13272         (fprint_target_auxv): Adjust.
13273         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13274         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13275         (linux_make_corefile_notes): Adjust.
13276         * osdata.c (get_osdata): Adjust.
13277         * remote.c (remote_get_threads_with_qxfer): Adjust.
13278         (remote_memory_map): Adjust.
13279         (remote_traceframe_info): Adjust.
13280         (btrace_read_config): Adjust.
13281         (remote_read_btrace): Adjust.
13282         (remote_pid_to_exec_file): Adjust.
13283         * solib-aix.c (solib_aix_get_library_list): Adjust.
13284         * solib-dsbt.c (decode_loadmap): Don't free buf.
13285         (dsbt_get_initial_loadmaps): Adjust.
13286         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13287         * solib-target.c (solib_target_current_sos): Adjust.
13288         * tracepoint.c (sdata_make_value): Adjust.
13289         * xml-support.c (xinclude_start_include): Adjust.
13290         (xml_fetch_content_from_file): Adjust.
13291         * xml-support.h (xml_fetch_another): Change return type.
13292         (xml_fetch_content_from_file): Change return type.
13293         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13294         * xml-tdesc.c (file_read_description_xml): Adjust.
13295         (fetch_available_features_from_target): Change return type.
13296         (target_fetch_description_xml): Adjust.
13297         (target_read_description_xml): Adjust.
13298
13299 2018-04-06  Tom Tromey  <tom@tromey.com>
13300
13301         * value.c (~value): Update.
13302         (struct value) <contents>: Now unique_xmalloc_ptr.
13303         (value_contents_bits_eq, allocate_value_contents)
13304         (value_contents_raw, value_contents_all_raw)
13305         (value_contents_for_printing, value_contents_for_printing_const)
13306         (set_value_enclosing_type): Update.
13307
13308 2018-04-06  Tom Tromey  <tom@tromey.com>
13309
13310         * value.c (range_s): Remove typedef, VEC.
13311         (struct range): Add operator<.
13312         (range_lessthan): Remove.
13313         (ranges_contain): Change type.
13314         (~value): Update.
13315         (struct value) <unavailable, optimized_out>: Now std::vector.
13316         (value_entirely_available)
13317         (value_entirely_covered_by_range_vector)
13318         (value_entirely_unavailable, value_entirely_optimized_out):
13319         Update.
13320         (insert_into_bit_range_vector): Change argument type.
13321         (find_first_range_overlap): Likewise.
13322         (struct ranges_and_idx, value_contents_bits_eq)
13323         (require_not_optimized_out, require_available): Update.
13324         (ranges_copy_adjusted): Change argument types.
13325         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13326
13327 2018-04-06  Tom Tromey  <tom@tromey.com>
13328
13329         * value.c (~value): Update.
13330         (struct value) <parent>: Now a value_ref_ptr.
13331         (value_parent, set_value_parent, value_address, value_copy):
13332         Update.
13333
13334 2018-04-06  Tom Tromey  <tom@tromey.com>
13335
13336         * value.c (struct value): Add constructor, destructor, and member
13337         initializers.
13338         (allocate_value_lazy, value_decref): Update.
13339
13340 2018-04-06  Tom Tromey  <tom@tromey.com>
13341
13342         * value.c (struct value) <released, next>: Remove.
13343         (all_values): Now a std::vector.
13344         (allocate_value_lazy): Update.
13345         (value_next): Remove.
13346         (value_mark, value_free_to_mark, release_value)
13347         (value_release_to_mark): Update.
13348
13349 2018-04-06  Tom Tromey  <tom@tromey.com>
13350
13351         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13352         (free_value_chain): Remove.
13353         * value.c (free_value_chain): Remove.
13354         (value_release_to_mark): Return a std::vector.
13355         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13356         std::vector.
13357         (check_condition): Update.
13358         * eval.c (fetch_subexp_value): Change "val_chain" to a
13359         std::vector.
13360         * breakpoint.c (update_watchpoint): Update.
13361         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13362
13363 2018-04-06  Tom Tromey  <tom@tromey.com>
13364
13365         * value.h (free_all_values): Remove.
13366         * value.c (free_all_values): Remove.
13367
13368 2018-04-06  Tom Tromey  <tom@tromey.com>
13369
13370         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13371         (value_history_chain, value_history_count): Remove.
13372         (value_history): New global.
13373         (record_latest_value, access_value_history, show_values)
13374         (preserve_values): Update.
13375
13376 2018-04-06  Tom Tromey  <tom@tromey.com>
13377
13378         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13379         * varobj.c (varobj_set_display_format, varobj_set_value)
13380         (install_default_visualizer, construct_visualizer)
13381         (install_new_value, ~varobj, varobj_get_value_type)
13382         (my_value_of_variable, varobj_editable_p): Update.
13383         * c-varobj.c (c_describe_child, c_value_of_variable)
13384         (cplus_number_of_children, cplus_describe_child): Update.
13385         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13386         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13387         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13388
13389 2018-04-06  Tom Tromey  <tom@tromey.com>
13390
13391         * printcmd.c (last_examine_address): Change type to
13392         value_ref_ptr.
13393         (do_examine, x_command): Update.
13394
13395 2018-04-06  Tom Tromey  <tom@tromey.com>
13396
13397         * value.c (release_value): Update.
13398         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13399         (struct bpstats) <val>: Now a value_ref_ptr.
13400         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13401         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13402         (~watchpoint, print_it_watchpoint, watch_command_1)
13403         (invalidate_bp_value_on_memory_change): Update.
13404
13405 2018-04-06  Tom Tromey  <tom@tromey.com>
13406
13407         * varobj.c (varobj_clear_saved_item)
13408         (update_dynamic_varobj_children, install_new_value, ~varobj):
13409         Update.
13410         * value.h (value_incref): Move declaration earlier.
13411         (value_decref): Rename from value_free.
13412         (struct value_ref_policy): New.
13413         (value_ref_ptr): New typedef.
13414         (struct value_deleter): Remove.
13415         (gdb_value_up): Remove typedef.
13416         (release_value): Change return type.
13417         (release_value_or_incref): Remove.
13418         * value.c (set_value_parent): Update.
13419         (value_incref): Change return type.
13420         (value_decref): Rename from value_free.
13421         (value_free_to_mark, free_all_values, free_value_chain): Update.
13422         (release_value): Return value_ref_ptr.
13423         (release_value_or_incref): Remove.
13424         (record_latest_value, set_internalvar, clear_internalvar):
13425         Update.
13426         * stack.c (info_frame_command): Don't call value_free.
13427         * python/py-value.c (valpy_dealloc, valpy_new)
13428         (value_to_value_object): Update.
13429         * printcmd.c (do_examine): Update.
13430         * opencl-lang.c (lval_func_free_closure): Update.
13431         * mi/mi-main.c (register_changed_p): Don't call value_free.
13432         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13433         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13434         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13435         value_free.
13436         * guile/scm-value.c (vlscm_free_value_smob)
13437         (vlscm_scm_from_value): Update.
13438         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13439         (frame_unwind_register_unsigned, get_frame_register_bytes)
13440         (put_frame_register_bytes): Don't call value_free.
13441         * findvar.c (address_from_register): Don't call value_free.
13442         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13443         * dwarf2loc.c (entry_data_value_free_closure)
13444         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13445         (dwarf2_evaluate_loc_desc_full): Update.
13446         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13447         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13448         (~watchpoint, watch_command_1)
13449         (invalidate_bp_value_on_memory_change): Update.
13450         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13451
13452 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13453
13454         PR gdb/23022
13455         * warning.m4: Add -Wno-error=deprecated-register.
13456         * configure: Re-generate.
13457
13458 2018-04-05  Tom Tromey  <tom@tromey.com>
13459
13460         * linespec.h: Remove include of "vec.h".
13461
13462 2018-04-05  Tom Tromey  <tom@tromey.com>
13463
13464         * linespec.c (typep): Remove typedef.
13465         (find_methods, find_superclass_methods): Take a std::vector.
13466         (find_method): Use std::vector.
13467
13468 2018-04-05  Tom Tromey  <tom@tromey.com>
13469
13470         * utils.c (compare_strings): Remove.
13471         * utils.h (compare_strings): Remove.
13472         * objc-lang.h (find_imps): Update.
13473         * objc-lang.c (find_methods): Take a std::vector.
13474         (uniquify_strings, find_imps): Likewise.
13475         * linespec.c (find_methods): Take a std::vector.
13476         (decode_objc): Use std::vector.
13477         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13478         a std::vector.
13479         (find_method, find_function_symbols): Use std::vector.
13480
13481 2018-04-05  Tom Tromey  <tom@tromey.com>
13482
13483         * completer.c (completion_tracker::completion_tracker): Remove
13484         cast.
13485         (completion_tracker::discard_completions): Likewise.
13486         * breakpoint.c (ambiguous_names_p): Remove cast.
13487         * ada-lang.c (_initialize_ada_language): Remove cast.
13488         * utils.h (streq): Update.
13489         (streq_hash): Add new declaration.
13490         * utils.c (streq): Return bool.
13491         (streq_hash): New function.
13492
13493 2018-04-05  Tom Tromey  <tom@tromey.com>
13494
13495         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13496         Remove a string copy.
13497
13498 2018-04-05  Tom Tromey  <tom@tromey.com>
13499
13500         * linespec.c (filter_results): Use std::vector.
13501         (decode_line_2, decode_line_full): Update.
13502
13503 2018-04-05  Tom Tromey  <tom@tromey.com>
13504
13505         * linespec.c (canonical_to_fullform): Return std::string.
13506         (filter_results): Update.
13507         (struct decode_line_2_item): Add constructor.
13508         <fullform, displayform>: Now std::string.
13509         (decode_line_2_compare_items): Now a std::sort comparator.
13510         (decode_line_2): Update.
13511
13512 2018-04-05  Tom Tromey  <tom@tromey.com>
13513
13514         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13515         (unexpected_linespec_error): Update.
13516         (linespec_parse_basic, parse_linespec): Update.
13517
13518 2018-04-05  Tom Tromey  <tom@tromey.com>
13519
13520         * linespec.c (linespec_parse_basic): Reindent.
13521
13522 2018-04-05  Tom Tromey  <tom@tromey.com>
13523
13524         * minsyms.h (iterate_over_minimal_symbols): Update.
13525         * minsyms.c (iterate_over_minimal_symbols): Take a
13526         gdb::function_view.
13527         * linespec.c (struct collect_minsyms): Remove.
13528         (compare_msyms): Now a std::sort comparator.
13529         (add_minsym): Add parameters.
13530         (search_minsyms_for_name): Update.  Use std::vector.
13531
13532 2018-04-03  Tom Tromey  <tom@tromey.com>
13533
13534         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13535         gdb::byte_vector.
13536
13537 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13538
13539         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13540
13541 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13542
13543         PR gdb/16959
13544         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13545         printing static type.
13546
13547 2018-04-01  Tom Tromey  <tom@tromey.com>
13548
13549         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13550         (rs6000_xfer_shared_libraries): Update.
13551
13552 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13553
13554         * common/gdb_vecs.h (char_ptr): Remove.
13555         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13556
13557 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13558
13559         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13560         with std::vector.
13561         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13562
13563 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13564
13565         * tracepoint.h (struct uploaded_tp): Initialize fields.
13566         <actions, step_actions, cmd_strings>: Change type to
13567         std::vector<char *>.
13568         * tracepoint.c (get_uploaded_tp): Allocate with new.
13569         (free_uploaded_tps): Free with delete.
13570         (parse_tracepoint_definition): Adjust to std::vector change.
13571         * breakpoint.c (read_uploaded_action): Likewise.
13572         (create_tracepoint_from_upload): Likewise.
13573         * ctf.c (ctf_write_uploaded_tp): Likewise.
13574         (SET_ARRAY_FIELD): Likewise.
13575         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13576
13577 2018-03-30  Tom Tromey  <tom@tromey.com>
13578
13579         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13580         std::unique_ptr.
13581         (svr4_keep_data_in_core): Update.
13582         (svr4_read_so_list): Update.
13583
13584 2018-03-30  Tom Tromey  <tom@tromey.com>
13585
13586         * windows-nat.c (handle_output_debug_string, handle_exception):
13587         Update.
13588         * target.h (target_read_string): Update.
13589         * target.c (target_read_string): Change "string" to
13590         unique_xmalloc_ptr.
13591         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13592         Update.
13593         * solib-frv.c (frv_current_sos): Update.
13594         * solib-dsbt.c (dsbt_current_sos): Update.
13595         * solib-darwin.c (darwin_current_sos): Update.
13596         * linux-thread-db.c (inferior_has_bug): Update.
13597         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13598         Update.  Remove alloca.
13599         * ada-lang.c (ada_main_name): Update.
13600
13601 2018-03-30  Tom Tromey  <tom@tromey.com>
13602
13603         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13604         (struct dwo_file_deleter): New.
13605         (dwo_file_up): New typedef.
13606         (open_and_init_dwo_file): Use dwo_file_up.
13607         (free_dwo_file_cleanup): Remove.
13608
13609 2018-03-30  Tom Tromey  <tom@tromey.com>
13610
13611         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13612         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13613
13614 2018-03-30  Tom Tromey  <tom@tromey.com>
13615
13616         * dwarf2read.c (class free_cached_comp_units): New class.
13617         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13618         (free_cached_comp_units): Remove function.
13619
13620 2018-03-30  Tom Tromey  <tom@tromey.com>
13621
13622         * utils.h (make_cleanup_unpush_target): Remove.
13623         * inf-ptrace.c (struct target_unpusher): New.
13624         (target_unpush_up) New typedef.
13625         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13626         target_unpush_up.
13627         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13628
13629 2018-03-27  Tom Tromey  <tom@tromey.com>
13630
13631         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13632
13633 2018-03-27  Pedro Alves  <palves@redhat.com>
13634             Tom Tromey  <tom@tromey.com>
13635
13636         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13637         destructor.  Now a class.
13638         (gdb_readline_wrapper_cleanup): Remove function.
13639         (gdb_readline_wrapper): Remove cleanups.
13640
13641 2018-03-27  Tom Tromey  <tom@tromey.com>
13642
13643         * typeprint.h (struct type_print_options) <local_typedefs,
13644         global_typedefs>: Remove "struct" keyword.
13645         (class typedef_hash_table): New class.
13646         (recursively_update_typedef_hash, add_template_parameters)
13647         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13648         (find_typedef_in_hash): Don't declare.
13649         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13650         (typedef_hash_table::recursively_update): Rename from
13651         recursively_update_typedef_hash.  Now a member.
13652         (typedef_hash_table::add_template_parameters): Rename from
13653         add_template_parameters.  Now a member.
13654         (typedef_hash_table::typedef_hash_table): Now a constructor;
13655         rename from create_typedef_hash.
13656         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13657         rename from free_typedef_hash.
13658         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13659         (do_free_global_table): Remove.
13660         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13661         from copy_type_recursive.
13662         (create_global_typedef_table): Remove.
13663         (typedef_hash_table::find_global_typedef): Now a member of
13664         typedef_hash_table.
13665         (typedef_hash_table::find_typedef): Rename from
13666         find_typedef_in_hash; now a member.
13667         (whatis_exp): Update.
13668         * extension.h (struct ext_lang_type_printers): Add constructor and
13669         destructor.
13670         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13671         declare.
13672         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13673         Now a constructor; rename from start_ext_lang_type_printers.
13674         (ext_lang_type_printers): Now a destructor; rename from
13675         free_ext_lang_type_printers.
13676         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13677         Update.
13678         (c_type_print_base_struct_union): Update.  Remove cleanups.
13679
13680 2018-03-27  Tom Tromey  <tom@tromey.com>
13681
13682         * dwarf-index-write.c: Include <cmath>.
13683
13684 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13685
13686         * NEWS: Add entry describing new "set|show varsize-limit" command.
13687         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13688         command.
13689         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13690         "set variable".
13691
13692 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13693
13694         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13695         dwarf-index-write.c
13696         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13697         * dwarf-index-common.c: New file.
13698         * dwarf-index-common.h: New file.
13699         * dwarf-index-write.c: New file.
13700         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13701         (struct dwarf2_section_info): Move from here.
13702         (dwarf2_section_info_def): Likewise.
13703         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13704         (offset_type): Likewise.
13705         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13706         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13707         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13708         (byte_swap): Likewise.
13709         (MAYBE_SWAP): Likewise.
13710         (dwarf2_per_cu_ptr): Likewise.
13711         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13712         (struct tu_stats): Likewise.
13713         (struct dwarf2_per_objfile): Likewise.
13714         (struct dwarf2_per_cu_data): Likewise.
13715         (struct signatured_type): Likewise.
13716         (sig_type_ptr): Likewise.
13717         (DEF_VEC_P (sig_type_ptr)): Likewise.
13718         (INDEX4_SUFFIX): Likewise.
13719         (INDEX5_SUFFIX): Likewise.
13720         (DEBUG_STR_SUFFIX): Likewise.
13721         (dwarf2_read_section): Make non-static.
13722         (mapped_index_string_hash): Move from here.
13723         (dwarf5_djb_hash): Likewise.
13724         (file_write): Likewise.
13725         (class data_buf): Likewise.
13726         (struct symtab_index_entry): Likewise.
13727         (struct mapped_symtab): Likewise.
13728         (find_slot): Likewise.
13729         (hash_expand): Likewise.
13730         (add_index_entry): Likewise.
13731         (uniquify_cu_indices): Likewise.
13732         (class c_str_view): Likewise.
13733         (class c_str_view_hasher): Likewise.
13734         (class vector_hasher): Likewise.
13735         (write_hash_table): Likewise.
13736         (psym_index_map): Likewise.
13737         (struct addrmap_index_data): Likewise.
13738         (add_address_entry): Likewise.
13739         (add_address_entry_worker): Likewise.
13740         (write_address_map): Likewise.
13741         (symbol_kind): Likewise.
13742         (write_psymbols): Likewise.
13743         (struct signatured_type_index_data): Likewise.
13744         (write_one_signatured_type): Likewise.
13745         (recursively_count_psymbols): Likewise.
13746         (recursively_write_psymbols): Likewise.
13747         (class debug_names): Likewise.
13748         (check_dwarf64_offsets): Likewise.
13749         (psyms_seen_size): Likewise.
13750         (write_gdbindex): Likewise.
13751         (write_debug_names): Likewise.
13752         (assert_file_size): Likewise.
13753         (write_psymtabs_to_index): Likewise.
13754         (save_gdb_index_command): Likewise.
13755         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13756         command.
13757         * dwarf2read.h: New file.
13758
13759 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13760
13761         PR gdb/22670
13762         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13763         symbol name if the CU's language stores symbol names in linkage
13764         format.
13765         * language.h (struct language_defn)
13766         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13767         all instances of this struct.
13768
13769 2018-03-26  Tom Tromey  <tom@tromey.com>
13770
13771         * stack.c (backtrace_command_1): Remove verbose code.
13772
13773 2018-03-26  Tom Tromey  <tom@tromey.com>
13774
13775         * python/py-framefilter.c (py_print_type): Don't catch
13776         exceptions.  Return void.
13777         (py_print_value): Likewise.
13778         (py_print_single_arg): Likewise.
13779         (enumerate_args): Don't catch exceptions.
13780         (py_print_args): Likewise.
13781         (py_print_frame): Likewise.
13782         (gdbpy_apply_frame_filter): Catch exceptions here.
13783
13784 2018-03-26  Tom Tromey  <tom@tromey.com>
13785
13786         * stack.c (_initialize_stack): Remove trailing newlines from help
13787         text.  Add "Usage" line to "backtrace" help.
13788
13789 2018-03-26  Tom Tromey  <tom@tromey.com>
13790
13791         PR python/16486:
13792         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13793
13794 2018-03-26  Tom Tromey  <tom@tromey.com>
13795
13796         * python/py-framefilter.c (py_print_single_arg): Return
13797         EXT_LANG_BT_ERROR from catch.
13798
13799 2018-03-26  Tom Tromey  <tom@tromey.com>
13800
13801         PR backtrace/15584:
13802         * stack.c (backtrace_command_1): Move some code into no-filters
13803         "if".
13804
13805 2018-03-26  Tom Tromey  <tom@tromey.com>
13806
13807         * python/py-framefilter.c (throw_quit_or_print_exception): New
13808         function.
13809         (gdbpy_apply_frame_filter): Use it.
13810
13811 2018-03-26  Tom Tromey  <tom@tromey.com>
13812
13813         PR cli/17716:
13814         * python/py-framefilter.c (py_print_type, py_print_value)
13815         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13816         RETURN_MASK_ERROR.
13817
13818 2018-03-26  Tom Tromey  <tom@tromey.com>
13819
13820         * python/py-framefilter.c (enumerate_args): Use
13821         gdb::unique_xmalloc_ptr.
13822
13823 2018-03-26  Tom Tromey  <tom@tromey.com>
13824
13825         * python/py-framefilter.c (py_print_frame): Return
13826         EXT_LANG_BT_OK.
13827         (gdbpy_apply_frame_filter): Update comment.
13828         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13829         Remove.
13830         <EXT_LANG_BT_NO_FILTERS>: Change value.
13831
13832 2018-03-26  Tom Tromey  <tom@tromey.com>
13833
13834         PR backtrace/15582:
13835         * stack.c (backtrace_command): Parse "hide" argument.
13836         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13837         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13838         constant.
13839
13840 2018-03-26  Tom Tromey  <tom@tromey.com>
13841
13842         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13843         add "flags".
13844         (backtrace_command): Remove "fulltrace", add "flags".
13845
13846 2018-03-26  Tom Tromey  <tom@tromey.com>
13847
13848         * stack.c (backtrace_command): Rewrite command line parsing.
13849
13850 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13851
13852         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13853
13854 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13855
13856         * filename-seen-cache.h: Add include guard.
13857
13858 2018-03-26  Keith Seitz  <keiths@redhat.com>
13859
13860         * symfile.c (place_section): Remove "struct" from section_addr_info
13861         in comment.
13862         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13863         "struct" keyword from section_addr_info.
13864
13865 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13866
13867         * regformats/regdef.h (reg): Add constructors.
13868
13869 2018-03-25  Pedro Alves  <palves@redhat.com>
13870
13871         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13872         if then/else bodies in var_func_name extraction.
13873
13874 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13875
13876         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13877         lookup_minimal_symbol() to find symbol entry.
13878         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13879
13880 2018-03-23  Keith Seitz  <keiths@redhat.com>
13881
13882         PR c++/22968
13883         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13884         nested type definitions for C++, too.
13885
13886 2018-03-23  Tom Tromey  <tom@tromey.com>
13887
13888         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13889         a typedef.
13890         (macho_register_oso): Remove.
13891         (macho_symtab_read): Take a std::vector.
13892         (oso_el_compare_name): Now a std::sort comparator.
13893         (macho_symfile_read_all_oso): Take a std::vector.
13894         (macho_symfile_read): Use std::vector.  Remove cleanups.
13895
13896 2018-03-22  Tom Tromey  <tom@tromey.com>
13897
13898         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13899         (record_full_goto_bookmark): Use std::string.
13900
13901 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13902
13903         PR tdep/18295
13904         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13905         a single mask.
13906
13907 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13908
13909         * rs6000-tdep.c (store_insn_p): New function.
13910         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13911         and cr_reg to their unshifted values. Use store_insn_p to
13912         match LR saves using either R1 or fdata->alloca_reg. Use
13913         store_insn_p to match CR saves. Set alloca_reg_offset
13914         when alloca_reg and framep are set. Remove lr_reg shift
13915         when assigning to fdata->lr_register.
13916
13917 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13918
13919         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13920         command line args instead of emitting a warning.
13921
13922 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13923
13924         * tracepoint.h (struct static_tracepoint_marker): Initialize
13925         fields, define default constructor, move constructor and move
13926         assignment, disable the rest.
13927         <str_id, extra>: Make std::string.
13928         (release_static_tracepoint_marker): Remove.
13929         (free_current_marker): Remove.
13930         * tracepoint.c (free_current_marker): Remove.
13931         (parse_static_tracepoint_marker_definition): Adjust to
13932         std::string, use new hex2str overload.
13933         (release_static_tracepoint_marker): Remove.
13934         (print_one_static_tracepoint_marker): Get marker by reference
13935         and adjust to std::string.
13936         (info_static_tracepoint_markers_command): Adjust to std::vector
13937         changes
13938         * target.h (static_tracepoint_marker_p): Remove typedef.
13939         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13940         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13941         bool.
13942         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13943         * target-debug.h
13944         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13945         (target_debug_print_std_vector_static_tracepoint_marker): New.
13946         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13947         to...
13948         (target_debug_print_static_tracepoint_marker_p): ... this.
13949         * target-delegates.c: Re-generate.
13950         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13951         Make std::string.
13952         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13953         (decode_static_tracepoint_spec): Adjust to std::vector.
13954         (tracepoint_print_one_detail): Adjust to std::string.
13955         (strace_marker_decode_location): Adjust to std::string.
13956         (update_static_tracepoint): Adjust to std::string, remove call
13957         to release_static_tracepoint_marker.
13958         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13959         Adjust to std::vector.
13960         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13961         (remote_static_tracepoint_markers_by_strid): Adjust to
13962         std::vector.
13963         * common/rsp-low.h (hex2str): New overload with explicit count
13964         of bytes.
13965         * common/rsp-low.c (hex2str): New overload with explicit count
13966         of bytes.
13967         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13968         (_initialize_rsp_low_selftests): Add test_hex2str test.
13969         * unittests/tracepoint-selftests.c
13970         (test_parse_static_tracepoint_marker_definition): Adjust to
13971         std::string.
13972
13973 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13974
13975         * tracepoint.c (parse_static_tracepoint_marker_definition):
13976         Consider case where the definition is followed by more
13977         definitions.
13978         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13979         tracepoint-selftests.c.
13980         * unittests/tracepoint-selftests.c: New.
13981
13982 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13983
13984         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13985         Carvalho.
13986
13987 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13988
13989         * symtab.c (find_pc_sect_line): fixed indentation.
13990
13991 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13992
13993         * symtab.c (find_pc_sect_line): now uses binary search.
13994
13995 2018-03-19  Tom Tromey  <tom@tromey.com>
13996
13997         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13998         "IDENT" production.
13999
14000 2018-03-19  Pedro Alves  <palves@redhat.com>
14001             Tom Tromey  <tom@tromey.com>
14002
14003         * unittests/observable-selftests.c: New file.
14004         * common/observable.h: New file.
14005         * observable.h: New file.
14006         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
14007         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
14008         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
14009         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
14010         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
14011         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
14012         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
14013         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
14014         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
14015         python/py-breakpoint.c, python/py-finishbreakpoint.c,
14016         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
14017         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
14018         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
14019         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
14020         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
14021         tui/tui-interp.c, valops.c: Update all users.
14022         * tui/tui-hooks.c (tui_bp_created_observer)
14023         (tui_bp_deleted_observer, tui_bp_modified_observer)
14024         (tui_inferior_exit_observer, tui_before_prompt_observer)
14025         (tui_normal_stop_observer, tui_register_changed_observer):
14026         Remove.
14027         (tui_observers_token): New global.
14028         (attach_or_detach, tui_attach_detach_observers): New functions.
14029         (tui_install_hooks, tui_remove_hooks): Use
14030         tui_attach_detach_observers.
14031         * record-btrace.c (record_btrace_thread_observer): Remove.
14032         (record_btrace_thread_observer_token): New global.
14033         * observer.sh: Remove.
14034         * observer.c: Rename to observable.c.
14035         * observable.c (namespace gdb_observers): Define new objects.
14036         (observer_debug): Move into gdb_observers namespace.
14037         (struct observer, struct observer_list, xalloc_observer_list_node)
14038         (xfree_observer_list_node, generic_observer_attach)
14039         (generic_observer_detach, generic_observer_notify): Remove.
14040         (_initialize_observer): Update.
14041         Don't include observer.inc.
14042         * Makefile.in (generated_files): Remove observer.h, observer.inc.
14043         (clean mostlyclean): Likewise.
14044         (observer.h, observer.inc): Remove targets.
14045         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14046         (COMMON_SFILES): Use observable.c, not observer.c.
14047         * .gitignore: Remove observer.h.
14048
14049 2018-03-18  Tom Tromey  <tom@tromey.com>
14050
14051         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14052         gdb::def_vector.
14053         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14054
14055 2018-03-17  Tom Tromey  <tom@tromey.com>
14056
14057         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14058
14059 2018-03-17  Tom Tromey  <tom@tromey.com>
14060
14061         * target.c (class scoped_target_fd): New.
14062         (target_fileio_close_cleanup): Remove.
14063         (target_fileio_read_alloc_1): Use scoped_target_fd.
14064
14065 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14066
14067         * silent-rules.mk: New.
14068         * Makefile.in: Include silent-rules.mk
14069         (srcdir, VPATH, top_srcdir): Move up.
14070         (COMPILE): Add ECHO_CXX.
14071         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14072         (init.c): Add ECHO_INIT_C.
14073         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14074         (version.c): Add ECHO_GEN.
14075         (printcmd.o): Add ECHO_CXX.
14076         (target-float.o): Add ECHO_CXX.
14077         (ada-exp.o): Add ECHO_CXX.
14078         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14079         (insight$(EXEEXT)): Add ECHO_CXXLD.
14080         * gnulib/configure.ac: Add AM_SILENT_RULES.
14081         * gnulib/aclocal.m4: Re-generate.
14082         * gnulib/configure: Re-generate.
14083         * gnulib/import/Makefile.in: Re-generate.
14084
14085 2018-03-16  Tom Tromey  <tom@tromey.com>
14086
14087         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14088         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14089         * utils.c (do_free_section_addr_info)
14090         (make_cleanup_free_section_addr_info): Remove.
14091         * symfile.h (struct other_sections): Add constructor.
14092         (struct section_addr_info): Remove.
14093         (section_addr_info): New typedef.
14094         (struct sym_fns) <sym_offsets>: Change type of parameter.
14095         (build_section_addr_info_from_objfile)
14096         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14097         (default_symfile_offsets, symbol_file_add)
14098         (symbol_file_add_from_bfd)
14099         (build_section_addr_info_from_section_table): Update.
14100         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14101         * symfile.c (alloc_section_addr_info): Remove.
14102         (build_section_addr_info_from_section_table): Change return type.
14103         Update.
14104         (build_section_addr_info_from_bfd)
14105         (build_section_addr_info_from_objfile): Likewise.
14106         (free_section_addr_info): Remove.
14107         (relative_addr_info_to_section_offsets): Change type of "addrs".
14108         (addrs_section_compar): Now a std::sort comparator.
14109         (addrs_section_sort): Change return type.
14110         (addr_info_make_relative): Change type of "addrs".  Update.
14111         (default_symfile_offsets, syms_from_objfile_1)
14112         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14113         (symbol_file_add_separate): Update.
14114         (symbol_file_add): Change type of "addrs".  Update.
14115         (add_symbol_file_command): Update.  Remove cleanups.
14116         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14117         cleanups.
14118         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14119         * solib.c (solib_read_symbols): Update.
14120         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14121         * machoread.c (macho_symfile_offsets): Update.
14122         * jit.c (jit_bfd_try_read_symtab): Update.
14123
14124 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14125
14126         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14127         unittests/utils-selftests.c.
14128         * unittests/utils-selftests.c: New file.
14129
14130 2018-03-14  Tom Tromey  <tom@tromey.com>
14131
14132         PR cli/14977:
14133         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14134         for NULL.
14135
14136 2018-03-14  Tom Tromey  <tom@tromey.com>
14137
14138         PR cli/19918:
14139         * printcmd.c (printf_pointer): Allow "-" in format.
14140
14141 2018-03-14  Tom Tromey  <tom@tromey.com>
14142
14143         * printcmd.c (_initialize_printcmd): Add usage to printf.
14144
14145 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14146
14147         * MAINTAINERS: Update my email address.
14148
14149 2018-03-13  Tom Tromey  <tom@tromey.com>
14150
14151         * machoread.c (macho_check_dsym): Change filenamep to a
14152         std::string*.
14153         (macho_symfile_read): Update.
14154         * symfile.c (load_command): Use std::string.
14155
14156 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14157
14158         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14159         to error message string.
14160         (riscv_register_name): Use xsnprintf instead of sprintf.
14161         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14162         internal_error.
14163         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14164         error.
14165         (riscv_push_dummy_call): Likewise.
14166
14167 2018-03-12  Tom Tromey  <tom@tromey.com>
14168
14169         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14170         Use gdb::byte_vector.
14171         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14172
14173 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14174
14175         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14176         parameter type to readable_regcache.
14177         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14178         the declaration.
14179
14180 2018-03-11  Tom Tromey  <tom@tromey.com>
14181
14182         * dwarf2read.c (struct nextfield): Add initializers.
14183         (struct nextfnfield): Remove.
14184         (struct fnfieldlist): Add initializers.  Remove "length" and
14185         "head", use std::vector.
14186         (struct decl_field_list): Remove.
14187         (struct field_info): Add initializers.
14188         <fields, baseclasses>: Now std::vector.
14189         <nbaseclasses, nfnfields, typedef_field_list_count,
14190         nested_types_list_count>: Remove.
14191         (dwarf2_add_field, dwarf2_add_type_defn)
14192         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14193         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14194         (process_structure_scope): Update.
14195
14196 2018-03-11  Tom Tromey  <tom@tromey.com>
14197
14198         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14199         for use by std::sort.
14200         (build_type_psymtabs_1): Use std::vector.
14201
14202 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14203
14204         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14205         and LIBMPFR in the printed configuration.
14206
14207 2018-03-08  Tom Tromey  <tom@tromey.com>
14208
14209         * source.c (get_filename_and_charpos): Use scoped_fd.
14210         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14211         (procfs_pidlist): Likewise.
14212         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14213         (iterate_over_mappings): Likewise.
14214
14215 2018-03-08  Tom Tromey  <tom@tromey.com>
14216
14217         * infcall.c (struct call_return_meta_info)
14218         <stack_temporaries_enabled>: Remove.
14219         (get_call_return_value, call_function_by_hand_dummy): Update.
14220         * thread.c (disable_thread_stack_temporaries): Remove.
14221         (enable_thread_stack_temporaries): Remove.
14222         (thread_stack_temporaries_enabled_p): Return bool.
14223         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14224         (get_last_thread_stack_temporary): Update.
14225         * eval.c (evaluate_subexp): Update.
14226         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14227         class, not a function.
14228         (value_ptr, value_vec): Remove typedefs.
14229         (class thread_info) <stack_temporaries_enabled>: Now bool.
14230         <stack_temporaries>: Now a std::vector.
14231         (thread_stack_temporaries_enabled_p)
14232         (value_in_thread_stack_temporaries): Return bool.
14233
14234 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14235
14236         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14237         (getpkt_or_notif_sane_1): Likewise.
14238
14239 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14240
14241         * build-id.c (build_id_to_debug_bfd): Use std::string.
14242
14243 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14244
14245         * build-id.c (find_separate_debug_file_by_buildid): Return
14246         std::string.
14247         * build-id.h (find_separate_debug_file_by_buildid): Return
14248         std::string.
14249         * coffread.c (coff_symfile_read): Adjust to std::string.
14250         * elfread.c (elf_symfile_read): Adjust to std::string.
14251         * symfile.c (separate_debug_file_exists): Change parameter to
14252         std::string.
14253         (find_separate_debug_file): Return std::string.
14254         (find_separate_debug_file_by_debuglink): Return std::string.
14255         * symfile.h (find_separate_debug_file_by_debuglink): Return
14256         std::string.
14257
14258 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14259
14260         * common/xml-utils.c (xml_escape_text): Move code to...
14261         (xml_escape_text_append): ... this new function.
14262         * common/xml-utils.h (xml_escape_text_append): New declaration.
14263         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14264         New function.
14265         (_initialize_xml_utils): register test_xml_escape_text_append as
14266         a selftest.
14267
14268 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14269
14270         * defs.h: Remove MAX_REGISTER_SIZE.
14271         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14272         asserts.
14273         * python/py-unwind.c (pyuw_sniffer): Likewise.
14274
14275 2018-03-07  Tom Tromey  <tom@tromey.com>
14276
14277         * linux-tdep.c (linux_info_proc): Update.
14278         * target.h (struct target_ops) <to_fileio_readlink>: Return
14279         optional<string>.
14280         (target_fileio_readlink): Return optional<string>.
14281         * remote.c (remote_hostio_readlink): Return optional<string>.
14282         * inf-child.c (inf_child_fileio_readlink): Return
14283         optional<string>.
14284         * target.c (target_fileio_readlink): Return optional<string>.
14285
14286 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14287
14288         * regcache.c (cooked_read_test): Add riscv to the list of
14289         architectures that have a save_reggroup.
14290
14291 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14292
14293         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14294         value is not a dynamic class object.
14295
14296 2018-03-06  Tom Tromey  <tom@tromey.com>
14297
14298         * rust-exp.y: Formatting fixes.
14299
14300 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14301
14302         * riscv-tdep.c (riscv_register_name): Remove target description
14303         support.
14304         (riscv_gdbarch_init): Remove target description check.
14305
14306 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14307
14308         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14309         comment.
14310         * riscv-tdep.h: Likewise.
14311
14312 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14313
14314         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14315         (riscv_pseudo_register_write): Delete.
14316         (riscv_gdbarch_init): Remove all use of pseudo registers.
14317
14318 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14319
14320         * record-btrace.c (btrace_print_lines): Replace cleanup
14321         parameter with RAII equivalents.
14322         (btrace_insn_history): Replace cleanup with RAII equivalents.
14323         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14324         make_cleanup_ui_out_tuple_begin_end): Remove.
14325         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14326         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14327         make_cleanup_ui_out_list_begin_end): Remove.
14328
14329 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14330
14331         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14332         parameter types to std::vector.  Use bool.
14333         (record_btrace_wait): Replace VEC(tp_t) with
14334         std::vector<thread_info *>.
14335         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14336
14337 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14338
14339         * record-btrace.c (record_btrace_disable_callback): Remove.
14340         (struct scoped_btrace_disable): New.
14341         (record_btrace_open): Use scoped_btrace_disable.
14342
14343 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14344
14345         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14346         reading values from registers.
14347
14348 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14349
14350         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14351         where appropriate.
14352
14353 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14354
14355         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14356         change parameter type.  Use GDB's print functions, and use
14357         core_addr_to_string where appropriate.
14358         (riscv_push_dummy_call): Use core_addr_to_string where
14359         appropriate, update call to riscv_print_arg_location, and reindent
14360         a few lines.
14361         (riscv_return_value): Update call to riscv_print_arg_location.
14362
14363 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14364             Tim Newsome <tim@sifive.com>
14365             Albert Ou <a0u@eecs.berkeley.edu>
14366             Darius Rad <darius@bluespec.com>
14367
14368         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14369         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14370         (ALLDEPFILES): Add riscv-tdep.c
14371         * configure.tgt: Add riscv support.
14372         * riscv-tdep.c: New file.
14373         * riscv-tdep.h: New file.
14374         * NEWS: Mention new target.
14375         * MAINTAINERS: Add entry for riscv.
14376
14377 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14378
14379         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14380         fields within aggregates.
14381
14382 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14383
14384         * record-btrace.c (btrace_print_lines): Change type of flags to
14385         gdb_disassembly_flags.
14386
14387 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14388
14389         * fbsd-nat.c: Include "inf-ptrace.h".
14390         (USE_SIGTRAP_SIGINFO): Conditionally define.
14391         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14392         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14393         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14394         function.
14395         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14396         Likewise.
14397         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14398         Likewise.
14399         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14400         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14401         "supports_stopped_by_hw_breakpoint" target methods.
14402
14403 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14404
14405         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14406         * fbsd-nat.c (debug_fbsd_nat): New variable.
14407         (show_fbsd_nat_debug): New function.
14408         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14409         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14410
14411 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14412
14413         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14414         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14415         prototype.
14416         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14417         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14418         method.
14419
14420 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14421
14422         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14423         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14424
14425 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14426
14427         * charset.c (struct charset_vector): New.
14428         (charsets): Change type to charset_vector.
14429         (find_charset_names): Adjust.
14430         (add_one): Adjust.
14431         (_initialize_charset): Adjust.
14432
14433 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14434
14435         * progspace.h (struct program_space) <deleted_solibs>: Change
14436         type to std::vector<std::string>.
14437         * progspace.c (clear_program_space_solib_cache): Adjust.
14438         * breakpoint.c (print_solib_event): Adjust.
14439         (check_status_catch_solib): Adjust.
14440         * solib.c (update_solib_list): Adjust.
14441         * ui-out.h (class ui_out) <field_string>: New overload.
14442         * ui-out.c (ui_out::field_string): New overload.
14443
14444 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14445
14446         * progspace.h (struct program_space): Add constructor and
14447         destructor, initialize fields.
14448         (add_program_space): Remove.
14449         * progspace.c (add_program_space): Rename to...
14450         (program_space::program_space): ... this.
14451         (release_program_space): Rename to...
14452         (program_space::~program_space): ... this.
14453         (delete_program_space): Use delete to delete program_space.
14454         (initialize_progspace): Use new to allocate program_space.
14455         * inferior.c (add_inferior_with_spaces): Likewise.
14456         (clone_inferior_command): Likewise.
14457         * infrun.c (follow_fork_inferior): Likewise.
14458         (handle_vfork_child_exec_or_exit): Likewise.
14459
14460 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14461
14462         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14463         (delim_string_to_char_ptr_vec): Return std::vector of
14464         gdb::unique_xmalloc_ptr.
14465         (dirnames_to_char_ptr_vec_append): Take std::vector of
14466         gdb::unique_xmalloc_ptr.
14467         (dirnames_to_char_ptr_vec): Return std::vector of
14468         gdb::unique_xmalloc_ptr.
14469         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14470         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14471         (delim_string_to_char_ptr_vec): Return an std::vector of
14472         gdb::unique_xmalloc_ptr, adjust the code.
14473         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14474         gdb::unique_xmalloc_ptr, adjust the code.
14475         (dirnames_to_char_ptr_vec): Return an std::vector of
14476         gdb::unique_xmalloc_ptr, adjust the code.
14477         * auto-load.c (auto_load_safe_path_vec): Change type to
14478         std::vector of gdb::unique_xmalloc_ptr.
14479         (auto_load_expand_dir_vars): Return an std::vector of
14480         gdb::unique_xmalloc_ptr, adjust the code.
14481         (auto_load_safe_path_vec_update): Adjust.
14482         (filename_is_in_auto_load_safe_path_vec): Adjust.
14483         (auto_load_objfile_script_1): Adjust.
14484         * build-id.c (build_id_to_debug_bfd): Adjust.
14485         * linux-thread-db.c (thread_db_load_search): Adjust.
14486         * source.c (add_path): Adjust.
14487         (openp): Adjust.
14488         * symfile.c (find_separate_debug_file): Adjust.
14489         * utils.c (do_free_char_ptr_vec): Remove.
14490         (make_cleanup_free_char_ptr_vec): Remove.
14491
14492 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14493
14494         PR gdb/22907
14495         * common/pathstuff.c: Conditionally include "<windows.h>".
14496
14497 2018-03-01  Georg Sauthoff  <mail@georg.so>
14498
14499         PR gdb/22888
14500         * gcore.in: Quote variables and switch interpreter to bash.
14501
14502 2018-03-01  Tom Tromey  <tom@tromey.com>
14503
14504         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14505         assertion.  Add assertion for discriminant_index.
14506         (quirk_rust_enum): Use correct base type name in univariant case.
14507
14508 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14509
14510         * record.c (get_call_history_modifiers): Return a
14511         record_print_flags.
14512         (cmd_record_call_history): Adjust.
14513         * record-btrace.c (record_btrace_call_history): Adjust.
14514         (record_btrace_call_history_range): Adjust.
14515         (record_btrace_call_history_from): Adjust.
14516         * target-debug.h (target_debug_print_record_print_flags): New.
14517         * target-delegates.c: Re-generate.
14518         * target.c (target_call_history): Change flags type.
14519         (target_call_history_from): Likewise.
14520         (target_call_history_range): Likewise.
14521         * target.h (struct target_ops) <target_call_history>: Likewise.
14522         (target_call_history_from): Likewise.
14523         (target_call_history_range): Likewise.
14524
14525 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14526             Simon Marchi  <simon.marchi@polymtl.ca>
14527
14528         * common/common-utils.c: Include "sys/stat.h".
14529         (is_regular_file): Move here from "source.c"; change return
14530         type to "bool".
14531         * common/common-utils.h (is_regular_file): New prototype.
14532         * common/pathstuff.c (contains_dir_separator): New function.
14533         * common/pathstuff.h (contains_dir_separator): New prototype.
14534         * source.c: Don't include "sys/stat.h".
14535         (is_regular_file): Move to "common/common-utils.c".
14536
14537 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14538
14539         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14540         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14541         * auto-load.c: Include "common/pathstuff.h".
14542         * common/common-def.h (current_directory): Move here.
14543         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14544         function.
14545         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14546         prototype.
14547         * common/pathstuff.c: New file.
14548         * common/pathstuff.h: New file.
14549         * compile/compile.c: Include "common/pathstuff.h".
14550         * defs.h (current_directory): Move to "common/common-defs.h".
14551         * dwarf2read.c: Include "common/pathstuff.h".
14552         * exec.c: Likewise.
14553         * guile/scm-safe-call.c: Likewise.
14554         * linux-thread-db.c: Likewise.
14555         * main.c: Likewise.
14556         * nto-tdep.c: Likewise.
14557         * objfiles.c: Likewise.
14558         * source.c: Likewise.
14559         * symtab.c: Likewise.
14560         * utils.c: Include "common/pathstuff.h".
14561         (gdb_realpath): Move to "common/pathstuff.c".
14562         (gdb_realpath_keepfile): Likewise.
14563         (gdb_abspath): Likewise.
14564         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14565         (gdb_realpath_keepfile): Likewise.
14566         (gdb_abspath): Likewise.
14567
14568 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14569
14570         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14571         wildcard process pid for super_resume for kernels with a
14572         specific bug.
14573
14574 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14575
14576         * compile/compile.c (get_args): Add additional comments
14577         explaining function.
14578
14579 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14580             Tom Tromey  <tom@tromey.com>
14581
14582         * target.h (memory_write_request_s): Remove typedef.  Don't define
14583         VEC.
14584         (target_write_memory_blocks): Change argument to std::vector.
14585         (struct memory_write_request): Add constructor.
14586         * target-memory.c (compare_block_starting_address): Return bool.
14587         Change argument types.
14588         (claim_memory): Change arguments to use std::vector.
14589         (split_regular_and_flash_blocks, blocks_to_erase)
14590         (compute_garbled_blocks): Likewise.
14591         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14592         (target_write_memory_blocks): Change argument to std::vector.
14593         * symfile.c (struct load_section_data): Add constructor and
14594         destructor.  Use std::vector for "requests".
14595         (struct load_progress_data): Add initializers.
14596         (load_section_callback): Update.  Use "new".
14597         (clear_memory_write_data): Remove.
14598         (generic_load): Update.
14599
14600 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14601
14602         * arch/aarch64.h: Use common/tdesc.h.
14603
14604 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14605
14606         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14607         architecture with a 64-bit ABI.
14608
14609 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14610
14611         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14612         ahead of target description loading.
14613
14614 2018-02-26  Tom Tromey  <tom@tromey.com>
14615
14616         * stack.c (backtrace_command_1): Update.
14617         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14618         of "flags".
14619         * python/py-framefilter.c (py_print_frame)
14620         (gdbpy_apply_frame_filter): Change type of "flags".
14621         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14622         of "flags".
14623         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14624         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14625         * extension.h (enum frame_filter_flag): Rename from
14626         frame_filter_flags.
14627         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14628         (apply_ext_lang_frame_filter): Change type of "flags".
14629         * extension.c (apply_ext_lang_frame_filter): Change type of
14630         "flags".
14631         * extension-priv.h (struct extension_language_ops)
14632         <apply_frame_filter>: Change type of "flags".
14633
14634 2018-02-26  Tom Tromey  <tom@tromey.com>
14635
14636         PR python/16497:
14637         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14638         off-by-one in py_end computation.
14639         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14640         PRINT_MORE_FRAMES.
14641         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14642         constant.
14643
14644 2018-02-26  Tom Tromey  <tom@tromey.com>
14645
14646         * dwarf2read.c (struct variant_field): New.
14647         (struct nextfield) <variant>: New field.
14648         (dwarf2_add_field): Handle DW_TAG_variant_part.
14649         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14650         discriminated union.
14651         (read_structure_type): Handle DW_TAG_variant_part.
14652         (handle_struct_member_die): New function, extracted from
14653         process_structure_scope.  Handle DW_TAG_variant.
14654         (process_structure_scope): Handle discriminated unions.  Call
14655         handle_struct_member_die.
14656
14657 2018-02-26  Tom Tromey  <tom@tromey.com>
14658
14659         * rust-lang.h (rust_last_path_segment): Declare.
14660         * rust-lang.c (rust_last_path_segment): Now public.  Change
14661         contract.
14662         (struct disr_info): Remove.
14663         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14664         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14665         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14666         (rust_enum_p, rust_enum_variant): New function.
14667         (rust_underscore_fields): Remove "offset" parameter.
14668         (rust_print_enum): New function.
14669         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14670         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14671         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14672         enums.
14673         (rust_internal_print_type): New function, from rust_print_type.
14674         Remove enum code.
14675         (rust_print_type): Call rust_internal_print_type.
14676         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14677         Update enum handling.
14678         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14679         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14680         (rust_union_quirks): New functions.
14681         (process_full_comp_unit, process_full_type_unit): Call
14682         rust_union_quirks.
14683         (process_structure_scope): Update rust_unions if necessary.
14684
14685 2018-02-26  Tom Tromey  <tom@tromey.com>
14686
14687         * value.h (value_union_variant): Declare.
14688         * valops.c (value_union_variant): New function.
14689         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14690         (struct discriminant_info): New.
14691         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14692         enumerator.
14693         (struct main_type) <flag_discriminated_union>: New field.
14694
14695 2018-02-26  Tom Tromey  <tom@tromey.com>
14696
14697         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14698         unittests/unpack-selftests.c.
14699         * unittests/unpack-selftests.c: New file.
14700         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14701
14702 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14703
14704         * dwarf2read.c (struct partial_die_info) <read>: New method.
14705         (read_partial_die): Remove the declaration.
14706         (load_partial_dies): Update.
14707         (partial_die_info::partial_die_info):
14708         (read_partial_die): Change it to partial_die_info::read.
14709
14710 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14711
14712         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14713         (fixup_partial_die): Remove declaration.
14714         (scan_partial_symbols): Update.
14715         (partial_die_parent_scope): Likewise.
14716         (partial_die_full_name): Likewise.
14717         (fixup_partial_die): Change it to partial_die_info::fixup.
14718
14719 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14720
14721         * dwarf2read.c (read_partial_die): Update the declaration.
14722         (load_partial_dies): Caller update.
14723         (read_partial_die): Remove one argument abbrev_len.
14724
14725 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14726
14727         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14728         assignment operator.
14729         (load_partial_dies): Use ctor and copy ctor.
14730         (read_partial_die): Update.
14731         (dwarf2_cu::find_partial_die): Use ctor.
14732
14733 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14734
14735         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14736         (find_partial_die_in_comp_unit): Change it to
14737         dwarf2_cu::find_partial_die.
14738         (find_partial_die): Update.
14739
14740 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14741
14742         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14743         is NULL.
14744
14745 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14746
14747         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14748
14749 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14750
14751         * arch/amd64.h: Use common/tdesc.h.
14752         * arch/i386.c: Likewise.
14753         * arch/i386.h: Likewise.
14754         * arch/tic6x.c: Likewise.
14755         * arch/tdesc.h: Move file from here...
14756         * common/tdesc.h: ...to here.
14757         * features/aarch64-core.c: Regenerate.
14758         * features/aarch64-fpu.c: Regenerate.
14759         * features/i386/32bit-avx.c: Regenerate.
14760         * features/i386/32bit-avx512.c: Regenerate.
14761         * features/i386/32bit-core.c: Regenerate.
14762         * features/i386/32bit-linux.c: Regenerate.
14763         * features/i386/32bit-mpx.c: Regenerate.
14764         * features/i386/32bit-pkeys.c: Regenerate.
14765         * features/i386/32bit-sse.c: Regenerate.
14766         * features/i386/64bit-avx.c: Regenerate.
14767         * features/i386/64bit-avx512.c: Regenerate.
14768         * features/i386/64bit-core.c: Regenerate.
14769         * features/i386/64bit-linux.c: Regenerate.
14770         * features/i386/64bit-mpx.c: Regenerate.
14771         * features/i386/64bit-pkeys.c: Regenerate.
14772         * features/i386/64bit-segments.c: Regenerate.
14773         * features/i386/64bit-sse.c: Regenerate.
14774         * features/i386/x32-core.c: Regenerate.
14775         * features/tic6x-c6xp.c: Regenerate.
14776         * features/tic6x-core.c: Regenerate.
14777         * features/tic6x-gp.c: Regenerate.
14778         * target-descriptions.c: Use common/tdesc.h.
14779         * target-descriptions.h: Likewise.
14780
14781 2018-02-24  Tom Tromey  <tom@tromey.com>
14782
14783         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14784         (try_thread_db_load_from_dir, thread_db_load_search): Use
14785         std::string.
14786         (info_auto_load_libthread_db_compare): Return bool.  Change
14787         argument types.
14788         (info_auto_load_libthread_db): Use std::vector, std::string.
14789         Remove cleanups.
14790
14791 2018-02-24  Tom Tromey  <tom@tromey.com>
14792
14793         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14794         std::string.
14795         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14796         std::string*.
14797         * gdbarch.c: Rebuild.
14798         * gdbarch.h: Rebuild.
14799         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14800         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14801         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14802         std::string*.
14803
14804 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14805
14806         * gdbtypes.h (sect_offset): Change type to uint64_t.
14807         (sect_offset_str): New function.
14808         * dwarf2read.c (create_addrmap_from_aranges): Use
14809         sect_offset_str.
14810         (error_check_comp_unit_head): Likewise.
14811         (create_debug_type_hash_table): Likewise.
14812         (read_cutu_die_from_dwo): Likewise.
14813         (init_cutu_and_read_dies): Likewise.
14814         (init_cutu_and_read_dies_no_follow): Likewise.
14815         (process_psymtab_comp_unit_reader): Likewise.
14816         (partial_die_parent_scope): Likewise.
14817         (peek_die_abbrev): Likewise.
14818         (process_queue): Likewise.
14819         (dwarf2_physname): Likewise.
14820         (read_namespace_alias): Likewise.
14821         (read_import_statement): Likewise.
14822         (create_dwo_cu_reader): Likewise.
14823         (create_cus_hash_table): Likewise.
14824         (lookup_dwo_cutu): Likewise.
14825         (inherit_abstract_dies): Likewise.
14826         (read_func_scope): Likewise.
14827         (read_call_site_scope): Likewise.
14828         (dwarf2_add_member_fn): Likewise.
14829         (read_common_block): Likewise.
14830         (read_module_type): Likewise.
14831         (read_typedef): Likewise.
14832         (read_subrange_type): Likewise.
14833         (load_partial_dies): Likewise.
14834         (read_partial_die): Likewise.
14835         (find_partial_die): Likewise.
14836         (read_str_index): Likewise.
14837         (dwarf2_string_attr): Likewise.
14838         (build_error_marker_type): Likewise.
14839         (lookup_die_type): Likewise.
14840         (dump_die_shallow): Likewise.
14841         (follow_die_ref): Likewise.
14842         (dwarf2_fetch_die_loc_sect_off): Likewise.
14843         (dwarf2_fetch_constant_bytes): Likewise.
14844         (follow_die_sig): Likewise.
14845         (get_signatured_type): Likewise.
14846         (get_DW_AT_signature_type): Likewise.
14847         (dwarf2_find_containing_comp_unit): Likewise.
14848         (set_die_type): Likewise.
14849
14850 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14851
14852         * arch/aarch64.c: Include "common-defs.h".
14853         * arch/amd64.c: Likewise.
14854         * arch/i386.c: Likewise.
14855
14856 2018-02-21  Tom Tromey  <tom@tromey.com>
14857
14858         * value.h: (extract_field_op): Update.
14859         * eval.c (extract_field_op): Return a const char *.
14860         * expression.h (parse_expression_for_completion): Update.
14861         * completer.c (complete_expression): Update.
14862         (add_struct_fields): Make fieldname const.
14863         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14864         (mark_completion_tag, parse_exp_in_context_1): Update.
14865         (parse_expression_for_completion): Change "name" to
14866         unique_xmalloc_ptr*.
14867
14868 2018-02-21  Tom Tromey  <tom@tromey.com>
14869
14870         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14871
14872 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14873
14874         * avr-tdep.c (avr_read_pc): Change parameter type to
14875         readable_regcache.
14876         * gdbarch.sh (read_pc): Likewise.
14877         * gdbarch.c: Re-generated.
14878         * gdbarch.h: Re-generated.
14879         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14880         readable_regcache.
14881         * ia64-tdep.c (ia64_read_pc): Likewise.
14882         * mips-tdep.c (mips_read_pc): Likewise.
14883         * spu-tdep.c (spu_read_pc): Likewise.
14884
14885 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14886
14887         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14888         * regcache-dump.c: New file.
14889         * regcache.c: Move register_dump to regcache-dump.c.
14890         (maintenance_print_registers): Likewise.
14891         (maintenance_print_raw_registers): Likewise.
14892         (maintenance_print_cooked_registers): Likewise.
14893         (maintenance_print_register_groups): Likewise.
14894         (maintenance_print_remote_registers): Likewise.
14895         (_initialize_regcache): Likewise.
14896         * regcache.h (register_dump): Moved from regcache.c.
14897
14898 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14899
14900         * regcache.c (regcache::regcache): Update.
14901         (regcache::invalidate): Move it to detached_regcache::invalidate.
14902         (get_thread_arch_aspace_regcache): Update.
14903         (regcache::raw_update): Update.
14904         (regcache::cooked_read): Remove some code.
14905         (regcache::cooked_read_value): Likewise.
14906         (regcache::raw_write): Remove assert on m_readonly_p.
14907         (regcache::raw_supply_integer): Move it to
14908         detached_regcache::raw_supply_integer.
14909         (regcache::raw_supply_zeroed): Likewise.
14910         * regcache.h (detached_regcache) <raw_supply_integer>: New
14911         declaration.
14912         <raw_supply_zeroed, invalidate>: Likewise.
14913         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14914         <invalidate>: Likewise.
14915         <m_readonly_p>: Removed.
14916
14917 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14918
14919         * infcmd.c (get_return_value): Let stop_regs point to
14920         get_current_regcache.
14921         * regcache.c (regcache::regcache): Remove.
14922         (register_dump_reg_buffer): New class.
14923         (regcache_print): Adjust.
14924         * regcache.h (regcache): Remove constructors.
14925
14926 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14927
14928         * regcache.c (class register_dump): New class.
14929         (register_dump_regcache, register_dump_none): New class.
14930         (register_dump_remote, register_dump_groups): New class.
14931         (regcache_print): Update.
14932         * regcache.h (regcache_dump_what): Move it to regcache.c.
14933         (regcache) <dump>: Remove.
14934
14935 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14936
14937         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14938          reg_buffer_rw *.
14939         (jit_unwind_reg_set_impl): Call raw_supply.
14940         (jit_frame_sniffer): Use reg_buffer_rw.
14941         * record-full.c (record_full_core_regbuf): Change its type.
14942         (record_full_core_open_1): Use reg_buffer_rw.
14943         (record_full_close): Likewise.
14944         (record_full_core_fetch_registers): Use regcache->raw_supply.
14945         (record_full_core_store_registers): Likewise.
14946         * regcache.c (regcache::get_register_status): Move it to
14947         reg_buffer.
14948         (regcache_raw_set_cached_value): Remove.
14949         (regcache::raw_set_cached_value): Remove.
14950         (regcache::raw_write): Call raw_supply.
14951         (regcache::raw_supply): Move it to reg_buffer_rw.
14952         * regcache.h (regcache_raw_set_cached_value): Remove.
14953         (reg_buffer_rw): New class.
14954
14955 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14956
14957         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14958         readonly_detached_regcache.
14959         (dummy_frame_prev_register): Use regcache->cooked_read.
14960         * frame.c (frame_save_as_regcache): Change return type.
14961         (frame_pop): Update.
14962         * frame.h (frame_save_as_regcache): Update declaration.
14963         * inferior.h (get_infcall_suspend_state_regcache): Update
14964         declaration.
14965         * infrun.c (infcall_suspend_state) <registers>: use
14966         readonly_detached_regcache.
14967         (save_infcall_suspend_state): Don't use regcache_dup.
14968         (get_infcall_suspend_state_regcache): Change return type.
14969         * linux-fork.c (struct fork_info) <savedregs>: Change to
14970         readonly_detached_regcache.
14971         <pc>: New field.
14972         (fork_save_infrun_state): Don't use regcache_dup.
14973         (info_checkpoints_command): Adjust.
14974         * mi/mi-main.c (register_changed_p): Update declaration.
14975         (mi_cmd_data_list_changed_registers): Use
14976         readonly_detached_regcache.
14977         (register_changed_p): Change parameter type to
14978         readonly_detached_regcache.
14979         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14980         readonly_detached_regcache.
14981         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14982         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14983         New.
14984         (regcache::save): Move it to reg_buffer.
14985         (regcache::restore): Change parameter type.
14986         (regcache_dup): Remove.
14987         * regcache.h (reg_buffer) <save>: New method.
14988         (readonly_detached_regcache): New class.
14989         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14990         readonly_detached_regcache.
14991         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14992
14993 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14994
14995         * frame.c (frame_save_as_regcache): Use regcache method save.
14996         (frame_pop): Use regcache method restore.
14997         * infrun.c (restore_infcall_suspend_state): Likewise.
14998         * linux-fork.c (fork_load_infrun_state): Likewise.
14999         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
15000         save.
15001         * regcache.c (regcache_save): Remove.
15002         (regcache::restore): More asserts.
15003         (regcache_cpy): Remove.
15004         * regcache.h (regcache_save): Remove the declaration.
15005         (regcache::restore): Move from private to public.
15006         Remove the friend declaration of regcache_cpy.
15007         (regcache_cpy): Remove declaration.
15008
15009 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15010
15011         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
15012         parameter type to 'readable_regcache *'.
15013         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15014         * arm-tdep.c (arm_neon_quad_read): Likewise.
15015         (arm_pseudo_read): Likewise.
15016         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15017         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15018         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15019         * gdbarch.c: Re-generated.
15020         * gdbarch.h: Re-generated.
15021         * gdbarch.sh (pseudo_register_read): Change parameter type to
15022         'readable_regcache *'.
15023         (pseudo_register_read_value): Likewise.
15024         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
15025         (h8300_pseudo_register_read): Likewise.
15026         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
15027         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15028         (i386_pseudo_register_read_into_value): Likewise.
15029         (i386_pseudo_register_read_value): Likewise.
15030         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
15031         declaration.
15032         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
15033         * m32c-tdep.c (m32c_raw_read): Likewise.
15034         (m32c_read_flg): Likewise.
15035         (m32c_banked_register): Likewise.
15036         (m32c_banked_read): Likewise.
15037         (m32c_sb_read): Likewise.
15038         (m32c_part_read): Likewise.
15039         (m32c_cat_read): Likewise.
15040         (m32c_r3r2r1r0_read): Likewise.
15041         (m32c_pseudo_register_read): Likewise.
15042         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15043         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15044         (mep_pseudo_cr64_read): Likewise.
15045         (mep_pseudo_register_read): Likewise.
15046         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15047         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15048         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15049         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15050         (regcache::cooked_read): Likewise.
15051         (regcache::cooked_read_value): Likewise.
15052         (regcache_cooked_read_signed):
15053         (regcache::cooked_read): Likewise.
15054         * regcache.h (readable_regcache): New class.
15055         (regcache): Inherit readable_regcache.  Move some methods to
15056         readable_regcache.
15057         * rl78-tdep.c (rl78_pseudo_register_read): Change
15058         parameter type to 'readable_regcache *'.
15059         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15060         (e500_pseudo_register_read): Change parameter type to
15061         'readable_regcache *'.
15062         (dfp_pseudo_register_read): Likewise.
15063         (vsx_pseudo_register_read): Likewise.
15064         (efpr_pseudo_register_read): Likewise.
15065         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15066         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15067         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15068         (sh64_pseudo_register_read): Likewise.
15069         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15070         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15071         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15072         (spu_pseudo_register_read): Likewise.
15073         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15074         (xtensa_pseudo_register_read): Likewise.
15075
15076 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15077
15078         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15079         (regcache::arch): Move it to reg_buffer::arch.
15080         (regcache::register_buffer): Likewise.
15081         (regcache::assert_regnum): Likewise.
15082         (regcache::num_raw_registers): Likewise.
15083         * regcache.h (reg_buffer): New class.
15084         (regcache): Inherit reg_buffer.
15085
15086 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15087
15088         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15089         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15090
15091 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15092
15093         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15094
15095 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15096
15097         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15098         (SFILES): Remove common/*.c files.
15099         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15100         * common/common.host: Add common reference.
15101         * configure.ac: Likewise.
15102         * configure: Regenerate.
15103
15104 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15105
15106         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15107         (block_initialize_namespace): Use new.
15108         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15109         (dwarf2_free_objfile): Use delete.
15110         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15111         (copy_type_recursive): Use new.
15112         * gdb_obstack.h (allocate_on_obstack): New.
15113
15114 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15115
15116         PR gdb/22849
15117         * inferior.c (exit_inferior_1): Reset inf->control.
15118
15119 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15120
15121         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15122         declaration.
15123
15124 2018-02-14  Pedro Alves  <palves@redhat.com>
15125
15126         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15127         frame_cleanup_after_sniffer on exception.
15128
15129 2018-02-14  Tom Tromey  <tom@tromey.com>
15130
15131         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15132         const.
15133         (solib_bfd_open): Make pathname const.
15134         * solib.c (solib_bfd_open): Make pathname const.
15135         * solib-spu.c (spu_bfd_fopen): Make name const.
15136         (spu_bfd_open): Make pathname const.
15137         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15138         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15139
15140 2018-02-14  Tom Tromey  <tom@tromey.com>
15141
15142         * symfile.c (symfile_bfd_open): Update.
15143         * source.h (openp, source_full_path_of, find_and_open_source):
15144         Change argument type to unique_xmalloc_ptr.
15145         * source.c (openp): Take a unique_xmalloc_ptr.
15146         (source_full_path_of, find_and_open_source): Likewise.
15147         (open_source_file, symtab_to_fullname): Update.
15148         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15149         unique_xmalloc_ptr.
15150         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15151         (exec_file_find): Update.
15152         * psymtab.c (psymtab_to_fullname): Update.
15153         * nto-tdep.h (nto_find_and_open_solib): Update.
15154         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15155         unique_xmalloc_ptr.
15156         * exec.c (exec_file_attach): Update.
15157         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15158         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15159
15160 2018-02-14  Tom Tromey  <tom@tromey.com>
15161
15162         * solib.c: Include source.h.
15163         * nto-tdep.c: Include source.h.
15164         * mi/mi-cmd-env.c: Include source.h.
15165         * infcmd.c: Include source.h.
15166         * exec.c: Include source.h.
15167         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15168         (add_path, directory_switch, source_path, init_source_path): Move
15169         declarations...
15170         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15171         (add_path, directory_switch, source_path, init_source_path):
15172         ...here.
15173
15174 2018-02-14  Tom Tromey  <tom@tromey.com>
15175
15176         * solist.h (exec_file_find, solib_find): Return
15177         unique_xmalloc_ptr.
15178         (solib_bfd_fopen): Take a const char *.
15179         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15180         (exec_file_find, solib_find): Likewise.
15181         (solib_bfd_fopen): Do not take ownership of "pathname".
15182         (solib_bfd_open): Use unique_xmalloc_ptr.
15183         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15184         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15185         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15186         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15187
15188 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15189
15190         * ada-lang.c (name_match_type_from_name): Remove reference to
15191         ada_name_for_lookup in function's documentation.
15192         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15193
15194 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15195
15196         * defs.h (enum openp_flags): New enum.
15197         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15198         Move to enum openp_flags.
15199         (openp_flags): New enum flags.
15200         (openp): Change parameter type to openp_flags.
15201         * source.c (openp): Change parameter type to openp_flags.
15202         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15203         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15204
15205 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15206
15207         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15208         per-command.
15209
15210 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15211
15212         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15213         into...
15214         (class dwarf2_queue_guard): ...the destructor of this new class.
15215         (dw2_do_instantiate_symtab): Create instance of the new class
15216         dwarf2_queue_guard, remove cleanup.
15217
15218 2018-02-09  Tom Tromey  <tom@tromey.com>
15219
15220         * source.c (find_source_lines): Don't reference past the end of
15221         the vector.
15222
15223 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15224
15225         * remote.c (remote_btrace_maybe_reopen): Change error message.
15226         * btrace.c (btrace_enable): Likewise.
15227         (parse_xml_btrace): Likewise.
15228         (parse_xml_btrace_conf): Likewise.
15229
15230 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15231
15232         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15233         (linux_enable_pt, linux_enable_bts): Call
15234         diagnose_perf_event_open_fail.
15235
15236 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15237
15238         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15239         Remove parameter and change return type.  Update callers.  Move it.
15240         (linux_enable_bts, linux_enable_pt): Improve error message.
15241         (linux_enable_pt): Remove zero buffer size check.
15242         (linux_enable_btrace): Improve error messages.  Remove NULL return
15243         check.
15244
15245 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15246
15247         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15248         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15249         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15250         (linux_supports_pt, linux_supports_btrace): Remove.
15251         (linux_enable_bts): Call cpu_supports_bts.
15252         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15253         * remote.c (remote_supports_btrace): Remove.
15254         (init_remote_ops): Remove remote_supports_btrace.
15255         * target-delegates.c: Regenerated.
15256         * target.c (target_supports_btrace): Remove.
15257         * target.h (target_ops) <to_supports_btrace>: Remove
15258         (target_supports_btrace): Remove.
15259         * x86-linux-nat.c (x86_linux_create_target): Remove
15260         linux_supports_btrace.
15261
15262 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15263
15264         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15265         btrace failed.
15266         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15267         exception and use message in own exception.
15268
15269 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15270
15271         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15272         (perf_event_pt_event_type): Use gdb_file_up.
15273         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15274         scoped_fd, and scoped_mmap.
15275
15276 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15277
15278         * common/scoped_mmap.h: New.
15279         * unittests/scoped_mmap-selftest.c: New.
15280         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15281         unittests/scoped_mmap-selftest.c.
15282
15283 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15284
15285         * common/scoped_fd.h: New.
15286         * unittests/scoped_fd-selftest.c: New.
15287         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15288         unittests/scoped_fd-selftest.c.
15289
15290 2018-02-09  Tom Tromey  <tom@tromey.com>
15291
15292         * auto-load.c (auto_load_section_scripts): Use
15293         gdb::unique_xmalloc_ptr.
15294
15295 2018-02-09  Tom Tromey  <tom@tromey.com>
15296
15297         * auto-load.c (execute_script_contents): Use std::string.
15298
15299 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15300
15301         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15302         Python function, rather than a new command.
15303
15304 2018-02-08  Tom Tromey  <tom@tromey.com>
15305
15306         * solib.c (solib_find_1): Use std::string.
15307         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15308
15309 2018-02-08  Tom Tromey  <tom@tromey.com>
15310
15311         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15312
15313 2018-02-08  Tom Tromey  <tom@tromey.com>
15314
15315         * source.c (find_source_lines): Use gdb::def_vector.
15316
15317 2018-02-08  Tom Tromey  <tom@tromey.com>
15318
15319         * macrocmd.c (struct temporary_macro_definition): New.
15320         (macro_define_command): Use temporary_macro_definition.  Remove
15321         cleanups.
15322         (free_macro_definition_ptr): Remove.
15323
15324 2018-02-08  Tom Tromey  <tom@tromey.com>
15325
15326         * macroexp.c (maybe_expand): Use std::string.
15327
15328 2018-02-08  Tom Tromey  <tom@tromey.com>
15329
15330         * macroexp.c (struct macro_buffer): Add initializers for some
15331         members.
15332         (init_buffer, init_shared_buffer, free_buffer)
15333         (free_buffer_return_text): Remove.
15334         (macro_buffer): New constructors.
15335         (~macro_buffer): New destructor.
15336         (macro_buffer::set_shared): New method.
15337         (macro_buffer::resize_buffer, macro_buffer::appendc)
15338         (macro_buffer::appendmem): Now methods, not free functions.
15339         (set_token, append_tokens_without_splicing, stringify)
15340         (macro_stringify): Update.
15341         (gather_arguments): Change return type.  Remove argc_p argument,
15342         add args_ptr argument.  Use std::vector.
15343         (substitute_args): Remove argc argument.  Accept std::vector.
15344         (expand): Update.  Use std::vector.
15345         (scan, macro_expand, macro_expand_next): Update.
15346
15347 2018-02-08  Tom Tromey  <tom@tromey.com>
15348
15349         * symtab.c (default_collect_symbol_completion_matches_break_on):
15350         Use unique_xmalloc_ptr.
15351         * macroscope.h: (sal_macro_scope, user_macro_scope)
15352         (default_macro_scope): Return unique_xmalloc_ptr.
15353         * macroscope.c (sal_macro_scope, user_macro_scope)
15354         (default_macro_scope): Return unique_xmalloc_ptr.
15355         * macroexp.h (macro_expand, macro_expand_once): Return
15356         unique_xmalloc_ptr.
15357         * macroexp.c (macro_expand, macro_expand_once): Return
15358         unique_xmalloc_ptr.
15359         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15360         (info_macro_command, info_macros_command): Use
15361         unique_xmalloc_ptr.
15362         * compile/compile-c-support.c (write_macro_definitions): Use
15363         unique_xmalloc_ptr.
15364         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15365
15366 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15367
15368         * value.c (value_static_field): Assign field type instead of
15369         containing type when returning an optimized out value.
15370
15371 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15372
15373         * ft32-tdep.c (ft32_read_pc): Remove.
15374         (ft32_write_pc): Remove.
15375         (ft32_gdbarch_init): Update.
15376         * m32r-tdep.c (m32r_read_pc): Remove.
15377         (m32r_gdbarch_init): Update.
15378         * mep-tdep.c (mep_read_pc): Remove.
15379         (mep_gdbarch_init): Update.
15380         * microblaze-tdep.c (microblaze_write_pc): Remove.
15381         (microblaze_gdbarch_init): Update.
15382         * mn10300-tdep.c (mn10300_read_pc): Remove.
15383         (mn10300_write_pc): Remove.
15384         (mn10300_gdbarch_init): Update.
15385         * moxie-tdep.c (moxie_read_pc): Remove.
15386         (moxie_write_pc): Remove.
15387         (moxie_gdbarch_init): Update.
15388
15389 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15390
15391         * expprint.c (print_subexp_standard): Handle
15392         OP_F77_UNDETERMINED_ARGLIST.
15393         (dump_subexp_body_standard): Likewise.
15394
15395 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15396
15397         * target-descriptions.c (tdesc_element_visitor) Add empty
15398         implementations.
15399         (tdesc_type): Move make_gdb_type from here.
15400         (tdesc_type_builtin): Likewise.
15401         (tdesc_type_vector): Likewise.
15402         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15403         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15404         (make_gdb_type_union): Likewise.
15405         (make_gdb_type_flags): Likewise.
15406         (make_gdb_type_enum): Likewise.
15407         (make_gdb_type): New function.
15408         (tdesc_register_type): Use static make_gdb_type.
15409
15410 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15411
15412         * infcmd.c (default_print_one_register_info): Align natural-format
15413         column values consistently one under another.
15414         (pad_to_column): New function.
15415
15416 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15417
15418         * dwarf2read.c (dwarf2_physname): Move commment.
15419
15420 2018-02-01  Leszek Swirski  <leszeks@google.com>
15421
15422         * varobj.c (varobj_formatted_print_options): Allow recursive
15423         pretty printing if pretty printing is enabled.
15424
15425 2018-02-01  Leszek Swirski  <leszeks@google.com>
15426
15427         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15428         names after a structop as a filename.
15429
15430 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15431
15432         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15433         (arm_record_coproc_data_proc): Likewise.
15434
15435 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15436
15437         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15438
15439 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15440
15441         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15442         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15443
15444 2018-01-31  Pedro Alves  <palves@redhat.com>
15445
15446         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15447         * inflow.c (child_terminal_save_inferior): Wrap reference to
15448         tcgetpgrp in HAVE_TERMIOS_H.
15449         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15450         _WIN32.
15451         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15452         always iterate over all inferiors.
15453         (gdbsim_cntrl_c): Adjust.
15454         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15455
15456 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15457
15458         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15459         index type is objfile-owned if the element type is as well.
15460
15461 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15462
15463         GDB 8.1 released.
15464
15465 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15466
15467         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15468         "features/s390x-linux64.c".
15469         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15470         s390_linux32 and s390x_linux64.
15471         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15472         default tdesc.
15473         * s390-tdep.c: Include "features/s390-linux32.c" and
15474         "features/s390x-linux64.c".
15475         (s390_tdesc_valid): Add check for tdesc_has_registers.
15476         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15477         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15478         tdesc_s390x_linux64.
15479         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15480         tdesc_s390x_linux64 to...
15481         * s390-tdep.h: ...here.
15482
15483 2018-01-30  Pedro Alves  <palves@redhat.com>
15484
15485         PR gdb/13211
15486         * config.in, configure: Regenerate.
15487         * configure.ac: Check for getpgid.
15488         * go32-nat.c (go32_pass_ctrlc): New.
15489         (go32_target): Install it.
15490         * inf-child.c (inf_child_target): Install
15491         child_terminal_save_inferior, child_pass_ctrlc and
15492         child_interrupt.
15493         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15494         (inf_ptrace_target): No longer install it.
15495         * infcmd.c (interrupt_target_1): Adjust.
15496         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15497         (child_interrupt): Declare.
15498         (inferior::terminal_state): New.
15499         * inflow.c (struct terminal_info): Update comments.
15500         (inferior_process_group): Delete.
15501         (terminal_is_ours): Delete.
15502         (gdb_tty_state): New.
15503         (child_terminal_init): Adjust.
15504         (is_gdb_terminal, sharing_input_terminal_1)
15505         (sharing_input_terminal): New functions.
15506         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15507         Set the process's actual process group in the foreground if
15508         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15509         mark terminal as the inferior's if not sharing GDB's terminal.
15510         Don't check attach_flag.
15511         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15512         pass down a target_terminal_state.
15513         (child_terminal_save_inferior): New, factored out from ...
15514         (child_terminal_ours_1): ... this.  Handle
15515         target_terminal_state::is_ours_for_output.
15516         (child_interrupt, child_pass_ctrlc): New.
15517         (inflow_inferior_exit): Clear the inferior's terminal_state.
15518         (copy_terminal_info): Copy the inferior's terminal state.
15519         (_initialize_inflow): Remove reference to terminal_is_ours.
15520         * inflow.h (inferior_process_group): Delete.
15521         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15522         * procfs.c (procfs_target): Don't install procfs_interrupt.
15523         (procfs_interrupt): Delete.
15524         * remote.c (remote_serial_quit_handler): Adjust.
15525         (remote_interrupt): Remove ptid parameter.  Adjust.
15526         * target-delegates.c: Regenerate.
15527         * target.c: Include "terminal.h".
15528         (target_terminal::terminal_state): Rename to ...
15529         (target_terminal::m_terminal_state): ... this.
15530         (target_terminal::init): Adjust.
15531         (target_terminal::inferior): Adjust to per-inferior
15532         terminal_state.
15533         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15534         (target_terminal::ours, target_terminal::ours_for_output): Use
15535         target_terminal_is_ours_kind.
15536         (target_interrupt): Remove ptid parameter.  Adjust.
15537         (default_target_pass_ctrlc): Adjust.
15538         * target.h (target_ops::to_terminal_save_inferior): New field.
15539         (target_ops::to_interrupt): Remove ptid_t parameter.
15540         (target_interrupt): Remove ptid_t parameter.  Update comment.
15541         (target_pass_ctrlc): Update comment.
15542         * target/target.h (target_terminal_state): New scoped enum,
15543         factored out of ...
15544         (target_terminal::terminal_state): ... here.
15545         (target_terminal::inferior): Update comments.
15546         (target_terminal::restore_inferior): New.
15547         (target_terminal::is_inferior, target_terminal::is_ours)
15548         (target_terminal::is_ours_for_output): Adjust.
15549         (target_terminal::scoped_restore_terminal_state): Adjust to
15550         rename, and call restore_inferior() instead of inferior().
15551         (target_terminal::scoped_restore_terminal_state::m_state): Change
15552         type.
15553         (target_terminal::terminal_state): Rename to ...
15554         (target_terminal::m_terminal_state): ... this and change type.
15555
15556 2018-01-30  Pedro Alves  <palves@redhat.com>
15557
15558         * linux-nat.c (wait_for_signal): New function.
15559         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15560         directly.
15561         (async_terminal_is_ours)
15562         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15563         (linux_nat_add_target): Don't override
15564         to_terminal_inferior/to_terminal_ours.
15565
15566 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15567
15568         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15569
15570 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15571
15572         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15573         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15574         dwarf2_per_objfile_free here.
15575         (dwarf2_per_objfile_free): Remove.
15576         (_initialize_dwarf2_read): Don't register
15577         dwarf2_per_objfile_free as a registry cleanup.
15578
15579 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15580
15581         Avoid compilation errors in MinGW native builds
15582
15583         The error is triggered by including python-internal.h, and the
15584         error message is:
15585
15586              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15587                       from build-gnulib/import/math.h:27,
15588                       from d:/usr/Python26/include/pyport.h:235,
15589                       from d:/usr/Python26/include/Python.h:58,
15590                       from python/python-internal.h:94,
15591                       from python/py-arch.c:24:
15592              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15593         using ::hypot;
15594                 ^~~~~
15595
15596         This happens because Python headers define 'hypot' to expand t
15597         '_hypot' in the Windows builds.
15598         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15599         'hypoth'.  This avoids a compilation error.
15600
15601 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15602
15603         * MAINTAINERS (Write After Approval): Fix ordering.
15604
15605 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15606
15607         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15608
15609 2018-01-26  Alan Modra  <amodra@gmail.com>
15610
15611         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15612         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15613         Remove nop.  Make const.  Comment.
15614         (powerpc32_plt_stub_so_2): New.
15615         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15616         Correct count.  Update uses.
15617         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15618         Move common code reading PLT entry word.  Correct
15619         powerpc32_plt_stub PLT address calculation.
15620         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15621         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15622         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15623         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15624         (ppc64_standard_linkage8): Likewise.
15625         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15626         Correct insns description.
15627         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15628
15629 2018-01-24  Pedro Alves  <palves@redhat.com>
15630
15631         GCC PR libstdc++/83906
15632         * gdbtypes.c (operator==(const dynamic_prop &,
15633         const dynamic_prop &)): New.
15634         (operator==(const range_bounds &, const range_bounds &)): New.
15635         (check_types_equal): Use them instead of memcmp.
15636         * gdbtypes.h (operator==(const dynamic_prop &,
15637         const dynamic_prop &)): Declare.
15638         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15639         (operator==(const range_bounds &, const range_bounds &)): Declare.
15640         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15641
15642 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15643
15644         * s390-linux-tdep.c (s390_record_address_mask)
15645         (s390_record_calc_disp_common, s390_record_calc_disp)
15646         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15647         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15648         (s390_process_record): Move to s390-tdep.c.
15649         (s390_linux_init_abi_any): Adjust.
15650         * s390-tdep.c (s390_record_address_mask)
15651         (s390_record_calc_disp_common, s390_record_calc_disp)
15652         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15653         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15654         (s390_process_record): Moved from s390-linux-tdep.c
15655         (s390_gdbarch_init): Adjust.
15656
15657 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15658
15659         * s390-linux-nat.c (s390-tdep.h): New include.
15660         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15661         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15662         (ALLDEPFILES): Add s390-tdep.c.
15663         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15664         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15665         * s390-tdep.h: ...this.  New file.
15666         * s390-linux-tdep.c (s390-tdep.h): New include.
15667         (_initialize_s390_tdep): Rename to...
15668         (_initialize_s390_linux_tdep): ...this and adjust.
15669         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15670         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15671         s390-tdep.h.
15672         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15673         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15674         (s390_is_partial_instruction, s390_software_single_step)
15675         (is_non_branch_ril, s390_displaced_step_copy_insn)
15676         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15677         (s390_prologue_data, s390_addr, s390_store, s390_load)
15678         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15679         (s390_register_call_saved, s390_guess_tracepoint_registers)
15680         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15681         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15682         (s390_pseudo_register_name, s390_pseudo_register_type)
15683         (s390_pseudo_register_read, s390_pseudo_register_write)
15684         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15685         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15686         (s390_addr_bits_remove, s390_address_class_type_flags)
15687         (s390_address_class_type_flags_to_name)
15688         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15689         (s390_function_arg_float, s390_function_arg_vector)
15690         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15691         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15692         (s390_frame_align, s390_register_return_value, s390_return_value)
15693         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15694         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15695         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15696         (s390_trad_frame_prev_register, s390_unwind_cache)
15697         (s390_prologue_frame_unwind_cache)
15698         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15699         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15700         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15701         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15702         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15703         (s390_frame_base_address, s390_local_base_address)
15704         (s390_frame_base, s390_gcc_target_options)
15705         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15706         (s390_validate_reg_range, s390_tdesc_valid)
15707         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15708         * s390-tdep.c: ...this.  New file.
15709
15710 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15711
15712         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15713         (s390_process_record, s390_gdbarch_tdep_alloc)
15714         (s390_linux_init_abi_any): Use/set new hook.
15715
15716 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15717
15718         * s390-linux-tdep.c (osabi.h): New include.
15719         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15720         (s390_linux_init_abi_any): New functions.
15721         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15722
15723 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15724
15725         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15726         tdesc_has_registers check
15727
15728 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15729
15730         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15731         (s390_validate_reg_range): New macro.
15732         (s390_gdbarch_init): Adjust.
15733
15734 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15735
15736         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15737         (s390_gdbarch_tdep_alloc): Adjust.
15738         (s390_gdbarch_init): Adjust.
15739
15740 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15741
15742         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15743         <have_tdb>: Change type to bool.
15744         (s390_gdbarch_tdep_alloc): Adjust.
15745         (s390_gdbarch_init): Adjust.
15746
15747 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15748
15749         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15750         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15751         (s390_gdbarch_tdep_alloc): New function.
15752         (s390_gdbarch_init): Allocate tdep at start and use its fields
15753         instead of separate variables.
15754
15755 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15756
15757         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15758         when looking for cached gdbarch and add comment for remaining.
15759
15760 2018-01-22  Pedro Alves  <palves@redhat.com>
15761             Sergio Durigan Junior  <sergiodj@redhat.com>
15762
15763         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15764         case.
15765
15766 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15767
15768         * MAINTAINERS: Update my company e-mail address.
15769
15770 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15771
15772         * regcache.c (cooked_write_test): New function.
15773         (_initialize_regcache): Register the test.
15774
15775 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15776
15777         * ia64-tdep.c (ia64_pseudo_register_read): Call
15778         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15779         * m32c-tdep.c (m32c_cat_read): Likewise.
15780         (m32c_r3r2r1r0_read): Likewise.
15781         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15782         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15783
15784 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15785
15786         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15787         method raw_read instead of regcache_raw_read.
15788         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15789         * arm-tdep.c (arm_neon_quad_read): Likewise.
15790         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15791         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15792         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15793         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15794         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15795         (i386_pseudo_register_read_into_value): Likewise.
15796         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15797         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15798         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15799         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15800         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15801         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15802         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15803         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15804         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15805
15806 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15807
15808         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15809         * configure.tgt: Remove target mt.
15810         * mt-tdep.c: Remove.
15811         * regcache.c (cooked_read_test): Remove the check for mt.
15812
15813 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15814
15815         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15816         instead of gdbarch_pseudo_register_read_value.
15817
15818 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15819
15820         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15821         language is Ada.
15822
15823 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15824
15825         * linespec.c (create_sals_line_offset): Remove code that preserved
15826         the symtab_and_line's line number.
15827
15828 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15829
15830         * varobj.c (varobj_create): Don't set valid_block when creating a
15831         floating varobj.
15832
15833 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15834
15835         * varobj.c (varobj_create): Remove out of date comment.
15836
15837 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15838
15839         PR mi/20395
15840         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15841         updating innermost block.
15842         * parse.c (innermost_block_tracker::update): Take extra type
15843         parameter, and check types match before updating innermost block.
15844         (write_dollar_variable): Update innermost block for registers.
15845         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15846         (innermost_block_tracker::innermost_block_tracker): Initialise
15847         m_types member.
15848         (innermost_block_tracker::reset): Take type parameter.
15849         (innermost_block_tracker::update): Take type parameter, and pass
15850         type through as needed.
15851         (innermost_block_tracker::m_types): New member.
15852         * varobj.c (varobj_create): Pass type when reseting innermost
15853         block.
15854
15855 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15856
15857         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15858         * ada-lang.c (resolve_subexp): Likewise.
15859         * breakpoint.c (set_breakpoint_condition) Likewise.
15860         (watch_command_1) Likewise.
15861         * c-exp.y (variable): Likewise.
15862         * d-exp.y (PrimaryExpression): Likewise.
15863         * f-exp.y (variable): Likewise.
15864         * go-exp.y (variable): Likewise.
15865         * m2-exp.y (variable): Likewise.
15866         * objfiles.c (objfile::~objfile): Likewise.
15867         * p-exp.y (variable): Likewise.
15868         * parse.c (innermost_block): Change type.
15869         * parser-defs.h (class innermost_block_tracker): New.
15870         (innermost_block): Change to innermost_block_tracker.
15871         * printcmd.c (display_command): Switch to innermost_block API.
15872         (do_one_display): Likewise.
15873         * rust-exp.y (do_one_display): Likewise.
15874         * symfile.c (clear_symtab_users): Likewise.
15875         * varobj.c (varobj_create): Switch to innermost_block API, replace
15876         use of innermost_block with block stored on varobj object.
15877
15878 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15879
15880         * expression.h (innermost_block): Remove declaration.
15881         * varobj.c: Add 'parser-defs.h' include.
15882
15883 2018-01-19  Tom Tromey  <tom@tromey.com>
15884
15885         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15886         symbols in the static and global blocks.
15887
15888 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15889
15890         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15891         gdb_ptrace.h, and move including gdb_wait.h ...
15892         * nat/linux-ptrace.h: ... to here.
15893
15894 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15895
15896         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15897         inf_ptrace_detach_success.
15898         (inf_ptrace_detach_success): Add inferior parameter, use it
15899         instead of inferior_ptid, pass it to detach_inferior.
15900         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15901         parameter.
15902         * inferior.c (detach_inferior): Add overload that takes an
15903         inferior object.
15904         * inferior.h (detach_inferior): Likewise.
15905         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15906         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15907         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15908
15909 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15910
15911         * target.h (struct target_ops) <to_detach>: Add inferior
15912         parameter.
15913         (target_detach): Likewise.
15914         * target.c (dispose_inferior): Pass inferior down.
15915         (target_detach): Pass inferior down.  Assert that it is equal to
15916         the current inferior.
15917         * aix-thread.c (aix_thread_detach): Pass inferior down.
15918         * corefile.c (core_file_command): Pass current_inferior() down.
15919         * corelow.c (core_detach): Add inferior parameter.
15920         * darwin-nat.c (darwin_detach): Likewise.
15921         * gnu-nat.c (gnu_detach): Likewise.
15922         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15923         * infcmd.c (detach_command): Pass current_inferior() down to
15924         target_detach.
15925         * infrun.c (follow_fork_inferior): Pass parent_inf to
15926         target_detach.
15927         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15928         target_detach.
15929         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15930         * linux-thread-db.c (thread_db_detach): Likewise.
15931         * nto-procfs.c (procfs_detach): Likewise.
15932         * procfs.c (procfs_detach): Likewise.
15933         * record.c (record_detach): Likewise.
15934         * record.h (struct inferior): Forward-declare.
15935         (record_detach): Add inferior parameter.
15936         * remote-sim.c (gdbsim_detach): Likewise.
15937         * remote.c (remote_detach_1): Likewise.
15938         (remote_detach): Likewise.
15939         (extended_remote_detach): Likewise.
15940         * sol-thread.c (sol_thread_detach): Likewise.
15941         * target-debug.h (target_debug_print_inferior_p): New macro.
15942         * target-delegates.c: Re-generate.
15943         * top.c (kill_or_detach): Pass inferior down to target_detach.
15944         * windows-nat.c (windows_detach): Add inferior parameter.
15945
15946 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15947
15948         * target.h (struct target_ops) <to_detach>: Remove args
15949         parameter.
15950         (target_detach): Likewise.
15951         * target.c (dispose_inferior): Adjust.
15952         (target_detach): Remove args parameter, adjust.
15953         * aix-thread.c (aix_thread_detach): Adjust.
15954         * corefile.c (core_file_command): Adjust.
15955         * corelow.c (core_detach): Adjust.
15956         * darwin-nat.c (darwin_detach): Adjust.
15957         * gnu-nat.c (gnu_detach): Adjust.
15958         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15959         * infcmd.c (detach_command): Adjust
15960         * infrun.c (follow_fork_inferior): Adjust.
15961         (handle_vfork_child_exec_or_exit): Adjust.
15962         * linux-fork.c (linux_fork_detach): Remove args parameter.
15963         * linux-fork.h (linux_fork_detach): Likewise.
15964         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15965         * linux-thread-db.c (thread_db_detach): Likewise.
15966         * nto-procfs.c (procfs_detach): Likewise.
15967         * procfs.c (procfs_detach): Likewise.
15968         (do_detach): Remove signo parameter.
15969         * record.c (record_detach): Remove args parameter.
15970         * record.h (record_detach): Likewise.
15971         * remote-sim.c (gdbsim_detach): Likewise.
15972         * remote.c (remote_detach_1): Likewise.
15973         (remote_detach): Likewise.
15974         (extended_remote_detach): Likewise.
15975         * sol-thread.c (sol_thread_detach): Likewise.
15976         * target-delegates.c: Re-generate.
15977         * top.c (struct qt_args) <args>: Remove field.
15978         (kill_or_detach): Don't pass args.
15979         (quit_force): Don't set args.
15980         * windows-nat.c (windows_detach): Remove args parameter.
15981
15982 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15983
15984         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15985         (arm_linux_init_abi): Install it.
15986
15987 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15988
15989         * osabi.c (gdb_osabi_names): Extend the regexp for
15990         arm-linux-gnueabihf.
15991
15992 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15993
15994         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15995         m_abbrevs.
15996         (abbrev_table::add_abbrev): Update.
15997         (abbrev_table::lookup_abbrev): Update.
15998
15999 2018-01-18  Yao Qi  <yao.qi@linaro.org>
16000
16001         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
16002
16003 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
16004
16005         * compile/compile.c (compile_to_object): Convert "triplet_rx"
16006         to "std::string".
16007
16008 2018-01-17  Tom Tromey  <tom@tromey.com>
16009
16010         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
16011
16012 2018-01-17  Tom Tromey  <tom@tromey.com>
16013
16014         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
16015         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
16016         (create_array_type_with_stride): Update.
16017         * dwarf2read.c (set_die_type): Update.
16018
16019 2018-01-17  Tom Tromey  <tom@tromey.com>
16020
16021         * dwarf2read.c (delayed_method_info): Remove typedef.
16022         (dwarf2_cu::method_info): Now a std::vector.
16023         (add_to_method_list): Update.
16024         (free_delayed_list): Remove.
16025         (compute_delayed_physnames): Update.
16026         (process_full_comp_unit, process_full_type_unit): Clear the method
16027         list.  Remove cleanups.
16028         (psymtab_include_file_name): Add name_holder parameter.  Use
16029         unique_xmalloc_ptr.
16030         (dwarf_decode_lines): Update.
16031
16032 2018-01-17  Tom Tromey  <tom@tromey.com>
16033             Simon Marchi  <simon.marchi@ericsson.com>
16034
16035         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
16036         (dwarf2_per_objfile::free_cached_comp_units)
16037         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16038         (init_cutu_and_read_dies_no_follow): Update.
16039         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
16040         (dwarf2_cu::~dwarf2_cu): New.
16041         (free_heap_comp_unit, free_stack_comp_unit): Remove.
16042         (age_cached_comp_units, free_one_cached_comp_unit): Update.
16043
16044 2018-01-17  Tom Tromey  <tom@tromey.com>
16045             Simon Marchi  <simon.marchi@ericsson.com>
16046
16047         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16048         (struct die_reader_specs) <abbrev_table>: New member.
16049         (struct abbrev_table): Add constructor.
16050         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16051         <abbrev_obstack>: Now an auto_obstack.
16052         (abbrev_table_up): New typedef.
16053         (init_cu_die_reader): Add abbrev_table parameter.
16054         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16055         Add result_dwo_abbrev_table.
16056         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16057         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16058         Update.
16059         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16060         parameter.
16061         (skip_children): Update.
16062         (abbrev_table::alloc_abbrev): Rename from
16063         abbrev_table_alloc_abbrev.
16064         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16065         (abbrev_table::lookup_abbrev): Rename from
16066         abbrev_table_lookup_abbrev.
16067         (abbrev_table_read_table): Return abbrev_table_up.
16068         (abbrev_table_free, abbrev_table_free_cleanup)
16069         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16070         (load_partial_dies): Update.
16071
16072 2018-01-17  Tom Tromey  <tom@tromey.com>
16073
16074         * dwarf2read.c (dwarf2_compute_name): Update comment.
16075         (read_func_scope, read_variable): Update.
16076         (new_symbol): Remove.
16077         (new_symbol_full): Rename to new_symbol.
16078
16079 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16080
16081         PR gdb/16577
16082         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16083         a warning instead of throwing an error, set section size to 0 and return
16084         NULL.
16085         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16086
16087 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16088
16089         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16090         std::string.
16091         (linux_ptrace_attach_fail_reason_string): Likewise.
16092         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16093         Likewise.
16094         (linux_ptrace_attach_fail_reason_string): Likewise.
16095         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16096
16097 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16098
16099         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16100
16101 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16102
16103         PR gdb/21559
16104         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16105         checking for fs_base/gs_base fields in struct user_regs_struct.
16106         * configure: Regenerate.
16107
16108 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16109
16110         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16111         function.
16112         (aarch64_linux_init_abi): Install it to gdbarch hook
16113         gcc_target_options.
16114
16115 2018-01-15  Pedro Alves  <palves@redhat.com>
16116
16117         * common/signals-state-save-restore.c
16118         (save_original_signals_state): Fix typos.
16119
16120 2017-01-12  Tom Tromey  <tom@tromey.com>
16121             Sergio Durigan Junior  <sergiodj@redhat.com>
16122
16123         * Makefile.in (install-only): Install gdb-add-index.
16124
16125 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16126
16127         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16128
16129 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16130
16131         * infrun.c (keep_going_pass_signal): Clear step-over info when
16132         insert_breakpoints fails.
16133
16134 2018-01-11  Pedro Alves  <palves@redhat.com>
16135
16136         PR gdb/22583
16137         * infrun.c (resume): Rename to ...
16138         (resume_1): ... this.
16139         (resume): Reimplement as wrapper around resume_1.
16140
16141 2018-01-11  Pedro Alves  <palves@redhat.com>
16142
16143         PR remote/22597
16144         * remote.c (remote_parse_stop_reply): Default to the last-set
16145         general thread instead of to 'magic_null_ptid'.
16146
16147 2018-01-10  Pedro Alves  <palves@redhat.com>
16148
16149         * language.h (language_get_symbol_name_matcher): Rename ...
16150         (get_symbol_name_matcher): ... this.
16151         * language.c (language_get_symbol_name_matcher): Ditto.
16152         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16153         callers adjusted.
16154
16155 2018-01-10  Pedro Alves  <palves@redhat.com>
16156
16157         PR gdb/22670
16158         * dwarf2read.c
16159         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16160         Adjust to use language_get_symbol_name_matcher instead of
16161         language_defn::la_get_symbol_name_matcher.
16162         * language.c (language_get_symbol_name_matcher): If in Ada mode
16163         and the lookup name is a verbatim match, return Ada's matcher.
16164         * language.h (language_get_symbol_name_matcher): Adjust comment.
16165         (ada_lookup_name_info::verbatim_p):: New method.
16166
16167 2018-01-10  Pedro Alves  <palves@redhat.com>
16168
16169         PR gdb/22670
16170         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16171         minsym's language is language_auto or language_cplus, pass down
16172         language_ada instead.
16173         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16174
16175 2018-01-10  Pedro Alves  <palves@redhat.com>
16176
16177         PR gdb/22670
16178         * minsyms.c (linkage_name_str): New function.
16179         (iterate_over_minimal_symbols): Use it.
16180
16181 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16182
16183         * NEWS: Document that 'info proc' now works on FreeBSD.
16184
16185 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16186
16187         * configure.ac: Check for kinfo_getfile in libutil.
16188         * configure: Regenerate.
16189         * config.in: Regenerate.
16190         * fbsd-nat.c: Include "fbsd-tdep.h".
16191         (fbsd_fetch_cmdline): New.
16192         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16193         rather than calling error.
16194         (fbsd_info_proc): New.
16195         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16196         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16197         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16198
16199 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16200
16201         * fbsd-nat.c (struct free_deleter): Remove.
16202         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16203
16204 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16205
16206         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16207         NULL for an empty pathname.
16208
16209 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16210
16211         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16212         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16213         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16214         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16215         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16216         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16217         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16218         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16219         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16220         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16221         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16222         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16223         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16224         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16225         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16226
16227 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16228
16229         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16230         (gnu_xfer_auxv): New function.
16231         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16232         TARGET_OBJECT_AUXV.
16233
16234 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16235             Simon Marchi  <simon.marchi@ericsson.com>
16236
16237         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16238         common/selftest.c.
16239         (COMMON_OBS): Remove selftest.o.
16240         * configure.ac: Append selftest-arch.c and common/selftest.c to
16241         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16242         * configure: Re-generated.
16243         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16244         GDB_SELF_TEST.
16245         (maintenance_info_selftests): Likewise.
16246
16247 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16248
16249         * ada-valprint.c (val_print_packed_array_elements): Use
16250         proper number of elements when printing an array indexed
16251         by an enumeration type.
16252
16253 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16254
16255         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16256         (dw2_get_file_names_reader): Adjust.
16257         (lookup_dwo_signatured_type): Adjust.
16258         (lookup_dwp_signatured_type): Adjust.
16259         (lookup_signatured_type): Adjust.
16260         (create_type_unit_group): Adjust.
16261         (get_type_unit_group): Adjust.
16262         (process_psymtab_comp_unit_reader): Adjust.
16263         (build_type_psymtabs_reader): Adjust.
16264         (scan_partial_symbols): Adjust.
16265         (add_partial_symbol): Adjust.
16266         (add_partial_subprogram): Adjust.
16267         (peek_die_abbrev): Adjust.
16268         (fixup_go_packaging): Adjust.
16269         (process_imported_unit_die): Adjust.
16270         (dwarf2_compute_name): Adjust.
16271         (dwarf2_physname): Adjust.
16272         (read_import_statement): Adjust.
16273         (handle_DW_AT_stmt_list): Adjust.
16274         (read_file_scope): Adjust.
16275         (read_func_scope): Adjust.
16276         (read_lexical_block_scope): Adjust.
16277         (read_call_site_scope): Adjust.
16278         (read_variable): Adjust.
16279         (dwarf2_rnglists_process): Adjust.
16280         (dwarf2_ranges_process): Adjust.
16281         (dwarf2_ranges_read): Adjust.
16282         (dwarf2_get_pc_bounds): Adjust.
16283         (dwarf2_record_block_ranges): Adjust.
16284         (dwarf2_add_field): Adjust.
16285         (dwarf2_add_member_fn): Adjust.
16286         (read_structure_type): Adjust.
16287         (process_structure_scope): Adjust.
16288         (read_enumeration_type): Adjust.
16289         (read_array_type): Adjust.
16290         (mark_common_block_symbol_computed): Adjust.
16291         (read_common_block): Adjust.
16292         (read_namespace_type): Adjust.
16293         (read_namespace): Adjust.
16294         (read_module_type): Adjust.
16295         (read_tag_pointer_type): Adjust.
16296         (read_tag_ptr_to_member_type): Adjust.
16297         (read_tag_string_type): Adjust.
16298         (read_subroutine_type): Adjust.
16299         (read_typedef): Adjust.
16300         (read_base_type): Adjust.
16301         (attr_to_dynamic_prop): Adjust.
16302         (read_subrange_type): Adjust.
16303         (read_unspecified_type): Adjust.
16304         (dwarf2_read_abbrevs): Adjust.
16305         (load_partial_dies): Adjust.
16306         (read_partial_die): Adjust.
16307         (find_partial_die): Adjust.
16308         (guess_partial_die_structure_name): Adjust.
16309         (fixup_partial_die): Adjust.
16310         (read_attribute_value): Adjust.
16311         (read_addr_index): Adjust.
16312         (read_addr_index_from_leb128): Adjust.
16313         (read_str_index): Adjust.
16314         (dwarf2_string_attr): Adjust.
16315         (get_debug_line_section): Adjust.
16316         (dwarf_decode_line_header): Adjust.
16317         (lnp_state_machine::check_line_address): Adjust.
16318         (dwarf_decode_lines_1): Adjust.
16319         (dwarf_decode_lines): Adjust.
16320         (dwarf2_start_symtab): Adjust.
16321         (var_decode_location): Adjust.
16322         (new_symbol_full): Adjust.
16323         (dwarf2_const_value_data): Adjust.
16324         (dwarf2_const_value_attr): Adjust.
16325         (dwarf2_const_value): Adjust.
16326         (die_type): Adjust.
16327         (die_containing_type): Adjust.
16328         (build_error_marker_type): Adjust.
16329         (lookup_die_type): Adjust.
16330         (guess_full_die_structure_name): Adjust.
16331         (anonymous_struct_prefix): Adjust.
16332         (determine_prefix): Adjust.
16333         (dwarf2_name): Adjust.
16334         (follow_die_ref_or_sig): Adjust.
16335         (follow_die_offset): Adjust.
16336         (follow_die_ref): Adjust.
16337         (follow_die_sig_1): Adjust.
16338         (follow_die_sig): Adjust.
16339         (get_signatured_type): Adjust.
16340         (get_DW_AT_signature_type): Adjust.
16341         (decode_locdesc): Adjust.
16342         (dwarf_decode_macros): Adjust.
16343         (cu_debug_loc_section): Adjust.
16344         (fill_in_loclist_baton): Adjust.
16345         (dwarf2_symbol_mark_computed): Adjust.
16346         (init_one_comp_unit): Don't assign
16347         dwarf2_cu::dwarf2_per_objfile.
16348         (set_die_type): Adjust.
16349
16350 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16351
16352         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16353         <dwarf2_per_objfile>: New field.
16354         (dwarf2_per_objfile): Remove global.
16355         (get_dwarf2_per_objfile): New function.
16356         (set_dwarf2_per_objfile): New function.
16357         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16358         dwarf2_per_objfile.
16359         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16360         (read_abbrev_offset): Likewise.
16361         (read_indirect_string): Likewise.
16362         (read_indirect_line_string): Likewise.
16363         (read_indirect_string_at_offset): Likewise.
16364         (read_indirect_string_from_dwz): Likewise.
16365         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16366         dwarf2_per_objfile.
16367         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16368         (create_all_comp_units): Change objfile parameter to
16369         dwarf2_per_objfile.
16370         (create_all_type_units): Likewise.
16371         (process_queue): Add dwarf2_per_objfile parameter.
16372         (read_and_check_comp_unit_head): Likewise.
16373         (lookup_dwo_unit_in_dwp): Likewise.
16374         (get_dwp_file): Likewise.
16375         (process_cu_includes): Likewise.
16376         (struct free_dwo_file_cleanup_data): New struct.
16377         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16378         set_dwarf2_per_objfile.
16379         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16380         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16381         context, adjust calls.
16382         (dw2_instantiate_symtab): Likewise.
16383         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16384         (dw2_get_cu): Likewise.
16385         (create_cu_from_index_list): Change objfile parameter to
16386         dwarf2_per_objfile.
16387         (create_cus_from_index_list): Get dwarf2_per_objfile from
16388         context, adjust calls.
16389         (create_cus_from_index): Likewise.
16390         (create_signatured_type_table_from_index): Change objfile
16391         parameter to dwarf2_per_objfile.
16392         (create_signatured_type_table_from_debug_names): Change objfile
16393         parameter to dwarf2_per_objfile.
16394         (create_addrmap_from_index): Likewise.
16395         (create_addrmap_from_aranges): Likewise.
16396         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16397         (dw2_setup): Remove.
16398         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16399         context.
16400         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16401         get_dwarf2_per_objfile.
16402         (dw2_forget_cached_source_info): Likewise.
16403         (dw2_map_symtabs_matching_filename): Likewise.
16404         (struct dw2_symtab_iterator) <index>: Remove.
16405         <dwarf2_per_objfile>: New field.
16406         (dw2_symtab_iter_init): Replace index parameter with
16407         dwarf2_per_objfile.
16408         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16409         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16410         (dw2_print_stats): Likewise.
16411         (dw2_dump): Likewise.
16412         (dw2_expand_symtabs_for_function): Likewise.
16413         (dw2_expand_all_symtabs): Likewise.
16414         (dw2_expand_symtabs_with_fullname): Likewise.
16415         (dw2_expand_marked_cus): Replace index and objfile parameters
16416         with dwarf2_per_objfile.
16417         (dw_expand_symtabs_matching_file_matcher): Add
16418         dwarf2_per_objfile parameter and adjust calls.
16419         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16420         adjust calls.
16421         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16422         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16423         adjust calls.
16424         (create_cus_from_debug_names_list): Replace objfile parameter
16425         with dwarf2_per_objfile and adjust calls.
16426         (create_cus_from_debug_names): Likewise.
16427         (dwarf2_read_debug_names): Likewise.
16428         (mapped_debug_names::namei_to_name): Adjust call.
16429         (dw2_debug_names_iterator::next): Likewise.
16430         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16431         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16432         (dw2_debug_names_dump): Likewise.
16433         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16434         (dw2_debug_names_expand_symtabs_matching): Likewise.
16435         (dwarf2_initialize_objfile): Likewise.
16436         (dwarf2_build_psymtabs): Likewise.
16437         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16438         this_cu.
16439         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16440         (read_and_check_comp_unit_head): Likewise.
16441         (read_abbrev_offset): Likewise.
16442         (create_debug_type_hash_table): Likewise.
16443         (create_debug_types_hash_table): Likewise.
16444         (create_all_type_units): Replace objfile parameter with
16445         dwarf2_per_objfile.
16446         (add_type_unit): Add dwarf2_per_objfile parameter.
16447         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16448         with dwarf2_per_objfile.
16449         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16450         (lookup_dwp_signatured_type): Likewise.
16451         (lookup_signatured_type): Likewise.
16452         (read_cutu_die_from_dwo): Likewise.
16453         (init_tu_and_read_dwo_dies): Likewise.
16454         (init_cutu_and_read_dies): Likewise.
16455         (init_cutu_and_read_dies_no_follow): Likewise.
16456         (allocate_type_unit_groups_table): Add objfile parameter.
16457         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16458         (get_type_unit_group): Likewise.
16459         (process_psymtab_comp_unit): Update call.
16460         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16461         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16462         (print_tu_stats): Likewise.
16463         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16464         in void* parameter.
16465         (build_type_psymtabs): Change objfile parameter to
16466         dwarf2_per_objfile.
16467         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16468         passed in void* parameter.
16469         (process_skeletonless_type_units): Change objfile parameter to
16470         dwarf2_per_objfile.
16471         (set_partial_user): Likewise.
16472         (dwarf2_build_psymtabs_hard): Likewise.
16473         (read_comp_units_from_section): Likewise.
16474         (create_all_comp_units): Likewise.
16475         (scan_partial_symbols): Update calls.
16476         (add_partial_symbol): Likewise.
16477         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16478         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16479         (process_queue): Add dwarf2_per_objfile parameter.
16480         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16481         (compute_compunit_symtab_includes): Likewise.
16482         (process_cu_includes): Add dwarf2_per_objfile parameter.
16483         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16484         (process_full_type_unit): Likewise.
16485         (process_imported_unit_die): Update call.
16486         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16487         (read_file_scope): Likewise.
16488         (allocate_dwo_file_hash_table): Add objfile parameter.
16489         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16490         (create_cus_hash_table): Likewise.
16491         (create_dwp_hash_table): Likewise.
16492         (create_dwo_unit_in_dwp_v1): Likewise.
16493         (create_dwp_v2_section): Likewise.
16494         (create_dwo_unit_in_dwp_v2): Likewise.
16495         (lookup_dwo_unit_in_dwp): Likewise.
16496         (try_open_dwop_file): Likewise.
16497         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16498         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16499         cleanup to include a reference to dwarf2_per_objfile.
16500         (open_dwp_file): Add dwarf2_per_objfile parameter.
16501         (open_and_init_dwp_file): Likewise.
16502         (get_dwp_file): Likewise.
16503         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16504         (queue_and_load_all_dwo_tus): Update call.
16505         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16506         data.
16507         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16508         (dwarf2_ranges_process): Likewise.
16509         (dwarf2_get_pc_bounds): Likewise.
16510         (mark_common_block_symbol_computed): Likewise.
16511         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16512         (dwarf2_read_abbrevs): Update call.
16513         (read_partial_die): Use dwarf2_per_objfile from cu.
16514         (find_partial_die): Likewise.
16515         (fixup_partial_die): Likewise.
16516         (read_attribute_value): Likewise.
16517         (read_indirect_string_at_offset_from): Add objfile parameter.
16518         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16519         parameter.
16520         (read_indirect_string_from_dwz): Add objfile parameter.
16521         (read_indirect_string): Add objfile parameter.
16522         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16523         (read_addr_index): Use dwarf2_per_objfile from cu.
16524         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16525         call dw2_setup.
16526         (read_str_index): Use dwarf2_per_objfile from cu.
16527         (get_debug_line_section): Likewise.
16528         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16529         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16530         (new_symbol_full): Use dwarf2_per_objfile from cu.
16531         (build_error_marker_type): Likewise.
16532         (lookup_die_type): Likewise.
16533         (determine_prefix): Likewise.
16534         (follow_die_offset): Likewise.
16535         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16536         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16537         (dwarf2_fetch_die_type_sect_off): Likewise.
16538         (dwarf2_get_die_type): Likewise.
16539         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16540         (get_signatured_type): Likewise.
16541         (get_DW_AT_signature_type): Likewise.
16542         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16543         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16544         (cu_debug_loc_section): Likewise.
16545         (fill_in_loclist_baton): Likewise.
16546         (dwarf2_symbol_mark_computed): Likewise.
16547         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16548         dwarf2_per_objfile.
16549         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16550         parameter.
16551         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16552         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16553         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16554         (set_die_type): Use dwarf2_free_objfile from cu.
16555         (get_die_type_at_offset): Likewise.
16556         (dwarf2_per_objfile_free): Don't assign global variable.
16557         (debug_names) <constructor>: Add dwarf2_per_objfile
16558         parameter, update m_debugstrlookup construction.
16559         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16560         parameter.
16561         <m_dwarf2_per_objfile>: New field.
16562         <lookup>: Use m_dwarf2_per_objfile.
16563         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16564         (psyms_seen_size): Likewise.
16565         (write_gdbindex): Replace objfile parameter with
16566         dwarf2_per_objfile.
16567         (write_debug_names): Likewise.
16568         (write_psymtabs_to_index): Likewise.
16569         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16570         calls.
16571
16572 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16573
16574         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16575         <dwarf2_per_objfile>: New field.
16576         (struct dwarf2_per_cu_data) <objfile>: Remove.
16577         <dwarf2_per_objfile>: New field.
16578         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16579         of objfile.
16580         (create_signatured_type_table_from_index): Likewise.
16581         (create_debug_type_hash_table): Likewise.
16582         (fill_in_sig_entry_from_dwo_entry): Likewise.
16583         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16584         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16585         objfile.
16586         (create_partial_symtab): Access objfile through
16587         dwarf2_per_objfile.
16588         (process_psymtab_comp_unit_reader): Likewise.
16589         (read_comp_units_from_section): Likewise.
16590         (scan_partial_symbols): Likewise.
16591         (add_partial_symbol): Likewise.
16592         (add_partial_subprogram): Likewise.
16593         (peek_die_abbrev): Likewise.
16594         (fixup_go_packaging): Likewise.
16595         (process_full_comp_unit): Likewise.
16596         (process_full_type_unit): Likewise.
16597         (process_imported_unit_die): Likewise.
16598         (dwarf2_compute_name): Likewise.
16599         (dwarf2_physname): Likewise.
16600         (read_import_statement): Likewise.
16601         (create_cus_hash_table): Assign dwarf2_physname instead of
16602         objfile.
16603         (read_func_scope): Access objfile through dwarf2_per_objfile.
16604         (read_lexical_block_scope): Likewise.
16605         (read_call_site_scope): Likewise.
16606         (read_variable): Likewise.
16607         (dwarf2_rnglists_process): Likewise.
16608         (dwarf2_ranges_process): Likewise.
16609         (dwarf2_ranges_read): Likewise.
16610         (dwarf2_record_block_ranges): Likewise.
16611         (dwarf2_add_field): Likewise.
16612         (dwarf2_add_member_fn): Likewise.
16613         (read_structure_type): Likewise.
16614         (process_structure_scope): Likewise.
16615         (read_enumeration_type): Likewise.
16616         (read_array_type): Likewise.
16617         (read_common_block): Likewise.
16618         (read_namespace_type): Likewise.
16619         (read_namespace): Likewise.
16620         (read_module_type): Likewise.
16621         (read_tag_pointer_type): Likewise.
16622         (read_tag_ptr_to_member_type): Likewise.
16623         (read_tag_string_type): Likewise.
16624         (read_subroutine_type): Likewise.
16625         (read_typedef): Likewise.
16626         (read_base_type): Likewise.
16627         (attr_to_dynamic_prop): Likewise.
16628         (read_subrange_type): Likewise.
16629         (read_unspecified_type): Likewise.
16630         (load_partial_dies): Likewise.
16631         (read_partial_die): Likewise.
16632         (find_partial_die): Likewise.
16633         (guess_partial_die_structure_name): Likewise.
16634         (fixup_partial_die): Likewise.
16635         (read_attribute_value): Likewise.
16636         (read_addr_index_from_leb128): Likewise.
16637         (dwarf2_read_addr_index): Likewise.
16638         (dwarf2_string_attr): Likewise.
16639         (lnp_state_machine::check_line_address): Likewise.
16640         (dwarf_decode_lines_1): Likewise.
16641         (dwarf_decode_lines): Likewise.
16642         (dwarf2_start_symtab): Likewise.
16643         (var_decode_location): Likewise.
16644         (new_symbol_full): Likewise.
16645         (dwarf2_const_value_data): Likewise.
16646         (dwarf2_const_value_attr): Likewise.
16647         (dwarf2_const_value): Likewise.
16648         (die_type): Likewise.
16649         (die_containing_type): Likewise.
16650         (lookup_die_type): Likewise.
16651         (guess_full_die_structure_name): Likewise.
16652         (anonymous_struct_prefix): Likewise.
16653         (dwarf2_name): Likewise.
16654         (follow_die_ref_or_sig): Likewise.
16655         (follow_die_offset): Likewise.
16656         (follow_die_ref): Likewise.
16657         (dwarf2_fetch_die_loc_sect_off): Likewise.
16658         (dwarf2_fetch_constant_bytes): Likewise.
16659         (dwarf2_fetch_die_type_sect_off): Likewise.
16660         (dwarf2_get_die_type): Likewise.
16661         (follow_die_sig): Likewise.
16662         (decode_locdesc): Likewise.
16663         (dwarf2_per_cu_objfile): Likewise.
16664         (dwarf2_per_cu_text_offset): Likewise.
16665         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16666         objfile.
16667         (set_die_type): Access objfile through
16668         dwarf2_per_objfile.
16669
16670 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16671
16672         * valprint.c (converted_character_d): Remove typedef.
16673         (DEF_VEC_O (converted_character_d)): Remove.
16674         (count_next_character): Use std::vector.
16675         (print_converted_chars_to_obstack): Likewise.
16676         (generic_printstr): Likewise.
16677
16678 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16679
16680         * xml-support.h (struct gdb_xml_value): Add constructor.
16681         <value>: Change type to unique_xmalloc_ptr.
16682         (gdb_xml_value_s): Remove typedef.
16683         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16684         (gdb_xml_element_start_handler): Change parameter type to
16685         std::vector.
16686         (xml_find_attribute): Likewise.
16687         * xml-support.c (xml_find_attribute): Change parameter type to
16688         std::vector and adjust.
16689         (gdb_xml_values_cleanup): Remove.
16690         (gdb_xml_parser::start_element): Adjust to std::vector.
16691         (xinclude_start_include): Change paraeter type to std::vector
16692         and adjust.
16693         * btrace.c (check_xml_btrace_version): Likewise.
16694         (parse_xml_btrace_block): Likewise.
16695         (parse_xml_btrace_pt_config_cpu): Likewise.
16696         (parse_xml_btrace_pt): Likewise.
16697         (parse_xml_btrace_conf_bts): Likewise.
16698         (parse_xml_btrace_conf_pt): Likewise.
16699         * memory-map.c (memory_map_start_memory): Likewise.
16700         (memory_map_start_property): Likewise.
16701         * osdata.c (osdata_start_osdata): Likewise.
16702         (osdata_start_item): Likewise.
16703         (osdata_start_column): Likewise.
16704         * remote.c (start_thread): Likewise.
16705         * solib-aix.c (library_list_start_library): Likewise.
16706         (library_list_start_list): Likewise.
16707         * solib-svr4.c (library_list_start_library): Likewise.
16708         (svr4_library_list_start_list): Likewise.
16709         * solib-target.c (library_list_start_segment): Likewise.
16710         (library_list_start_section): Likewise.
16711         (library_list_start_library): Likewise.
16712         (library_list_start_list): Likewise.
16713         * tracepoint.c (traceframe_info_start_memory): Likewise.
16714         (traceframe_info_start_tvar): Likewise.
16715         * xml-syscall.c (syscall_start_syscall): Likewise.
16716         * xml-tdesc.c (tdesc_start_target): Likewise.
16717         (tdesc_start_feature): Likewise.
16718         (tdesc_start_reg): Likewise.
16719         (tdesc_start_union): Likewise.
16720         (tdesc_start_struct): Likewise.
16721         (tdesc_start_flags): Likewise.
16722         (tdesc_start_enum): Likewise.
16723         (tdesc_start_field): Likewise.
16724         (tdesc_start_enum_value): Likewise.
16725         (tdesc_start_vector): Likewise.
16726
16727 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16728
16729         * extension.h (struct xmethod_worker) <clone>: Remove.
16730         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16731         Remove.
16732         (python_xmethod_worker::clone): Remove.
16733         * valops.c (find_overload_match): Use std::move instead of
16734         clone.
16735
16736 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16737
16738         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16739         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16740         <free_xmethod_worker_data>: Remove.
16741         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16742         <get_xmethod_arg_types>: Remove.
16743         <get_xmethod_result_type>: Remove.
16744         <invoke_xmethod>: Remove.
16745         * extension.c (new_xmethod_worker): Remove.
16746         (clone_xmethod_worker): Remove.
16747         (get_matching_xmethod_workers): Return void, pass std::vector by
16748         pointer.
16749         (get_xmethod_arg_types): Rename to...
16750         (xmethod_worker::get_arg_types): ... this, and adjust.
16751         (get_xmethod_result_type): Rename to...
16752         (xmethod_worker::get_result_type): ... this, and adjust.
16753         (invoke_xmethod): Remove.
16754         (free_xmethod_worker): Remove.
16755         (free_xmethod_worker_vec): Remove.
16756         * extension.h (enum ext_lang_rc): Move here from
16757         extension-priv.h.
16758         (struct xmethod_worker): Add constructor and destructor.
16759         <data>: Remove.
16760         <value>: Remove.
16761         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16762         virtual pure methods.
16763         <get_arg_types, get_result_type>: New methods.
16764         (xmethod_worker_ptr): Remove typedef.
16765         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16766         (xmethod_worker_vec): Remove typedef.
16767         (xmethod_worker_up): New typedef.
16768         (invoke_xmethod): Remove.
16769         (clone_xmethod_worker): Remove.
16770         (free_xmethod_worker): Remove.
16771         (free_xmethod_worker_vec): Remove.
16772         (get_xmethod_arg_types): Remove.
16773         (get_xmethod_result_type): Remove.
16774         * valops.c (find_method_list): Use std::vector, don't use
16775         intermediate vector.
16776         (value_find_oload_method_list): Use std::vector.
16777         (find_overload_match): Use std::vector.
16778         (find_oload_champ): Use std::vector.
16779         * value.c (value_free): Use operator delete.
16780         (value_of_xmethod): Rename to...
16781         (value_from_xmethod): ... this.  Don't assign
16782         xmethod_worker::value, take rvalue-reference.
16783         (result_type_of_xmethod): Adjust.
16784         (call_xmethod): Adjust.
16785         * value.h: Include extension.h.
16786         (struct xmethod_worker): Don't forward-declare.
16787         (value_of_xmethod): Rename to...
16788         (value_from_xmethod): ... this, take rvalue-reference.
16789         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16790         (struct python_xmethod_worker): ... this, add constructor and
16791         destructor.
16792         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16793         (gdbpy_free_xmethod_worker_data): Rename to...
16794         (python_xmethod_worker::~python_xmethod_worker): ... this and
16795         adjust.
16796         (gdbpy_clone_xmethod_worker_data): Rename to...
16797         (python_xmethod_worker::clone): ... this and adjust.
16798         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16799         temporary vector.
16800         (gdbpy_get_xmethod_arg_types): Rename to...
16801         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16802         (gdbpy_get_xmethod_result_type): Rename to...
16803         (python_xmethod_worker::do_get_result_type): ... this and
16804         adjust.
16805         (gdbpy_invoke_xmethod): Rename to...
16806         (python_xmethod_worker::invoke): ... this and adjust.
16807         (new_python_xmethod_worker): Rename to...
16808         (python_xmethod_worker::python_xmethod_worker): ... this and
16809         adjust.
16810         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16811         Remove.
16812         (gdbpy_free_xmethod_worker_data): Remove.
16813         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16814         (gdbpy_get_xmethod_arg_types): Remove.
16815         (gdbpy_get_xmethod_result_type): Remove.
16816         (gdbpy_invoke_xmethod): Remove.
16817         * python/python.c (python_extension_ops): Remove obsolete
16818         callbacks.
16819
16820 2018-01-05  Pedro Alves  <palves@redhat.com>
16821
16822         PR gdb/18653
16823         * common/signals-state-save-restore.c
16824         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16825         find a custom handler preinstalled, instead of internal erroring.
16826         But only warn if !quiet.
16827         * common/signals-state-save-restore.h
16828         (save_original_signals_state): New parameter 'quiet'.
16829         * main.c (captured_main_1): Move save_original_signals_state call
16830         after option handling, and pass QUIET.
16831
16832 2018-01-05  Pedro Alves  <palves@redhat.com>
16833
16834         * spu-tdep.c (spu_catch_start): Pass
16835         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16836
16837 2018-01-05  Pedro Alves  <palves@redhat.com>
16838
16839         PR gdb/22670
16840         * ada-lang.c (literal_symbol_name_matcher): New function.
16841         (ada_get_symbol_name_matcher): Use it for
16842         symbol_name_match_type::SEARCH_NAME.
16843         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16844         it down instead of assuming symbol_name_match_type::FULL.
16845         * block.h (block_lookup_symbol): New parameter 'match_type'.
16846         * c-valprint.c (print_unpacked_pointer): Use
16847         lookup_symbol_search_name instead of lookup_symbol.
16848         * compile/compile-object-load.c (get_out_value_type): Pass down
16849         symbol_name_match_type::SEARCH_NAME.
16850         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16851         symbol_name_match_type::FULL.
16852         * cp-support.c (cp_get_symbol_name_matcher): Handle
16853         symbol_name_match_type::SEARCH_NAME.
16854         * infrun.c (insert_exception_resume_breakpoint): Use
16855         lookup_symbol_search_name.
16856         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16857         * psymtab.c (maintenance_check_psymtabs): Use
16858         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16859         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16860         SYMBOL_SEARCH_NAME.
16861         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16862         if symbol_name_match_type::SEARCH_NAME.
16863         (lookup_symbol_in_language): Pass down
16864         symbol_name_match_type::FULL.
16865         (lookup_symbol_search_name): New.
16866         (lookup_language_this): Pass down
16867         symbol_name_match_type::SEARCH_NAME.
16868         (lookup_symbol_aux, lookup_local_symbol): New parameter
16869         'match_type'.  Pass it down.
16870         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16871         (lookup_symbol_search_name): New declaration.
16872         (lookup_symbol_in_block): New 'match_type' parameter.
16873
16874 2018-01-05  Pedro Alves  <palves@redhat.com>
16875
16876         PR gdb/22670
16877         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16878         ada_lookup_symbol.
16879         (ada_lookup_symbol): Reimplement in terms of
16880         ada_lookup_symbol_list, bits factored out from
16881         ada_lookup_encoded_symbol.
16882
16883 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16884
16885         * ada-exp.y (write_object_renaming): When subscripting an array
16886         using a symbol as the index, pass the block in call to
16887         ada_lookup_encoded_symbol when looking that symbol up.
16888
16889 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16890
16891         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16892         TYPE_INDEX_TYPE.
16893
16894 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16895
16896         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16897         the case where VALUE_LVAL (val0) is not lval_memory.
16898
16899 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16900
16901         * ada-valprint.c (print_optional_low_bound): Handle
16902         character-indexed array printing like boolean-indexed array
16903         printing.
16904
16905 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16906
16907         * NEWS: Create a new section for the next release branch.
16908         Rename the section of the current branch, now that it has
16909         been cut.
16910
16911 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16912
16913         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16914         * version.in: Bump version to 8.1.50.DATE-git.
16915
16916 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16917
16918         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16919         Add field.
16920         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16921         Add field.
16922         (default_exception_support_info) <catch_handlers_sym>: Add field.
16923         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16924         (ada_exception_name_addr_1): Add "catch handlers" handling.
16925         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16926         Update all callers.
16927         (create_excep_cond_exprs) <ex>: Add parameter.
16928         (re_set_exception): Update create_excep_cond_exprs call.
16929         (print_it_exception, print_one_exception, print_mention_exception)
16930         (print_recreate_exception): Add "catch handler" handling.
16931         (allocate_location_catch_handlers, re_set_catch_handlers)
16932         (check_status_catch_handlers, print_it_catch_handlers)
16933         (print_one_catch_handlers, print_mention_catch_handlers)
16934         (print_recreate_catch_handlers): New function.
16935         (catch_handlers_breakpoint_ops): New variable.
16936         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16937         Add parameter.  Add "catch handler" handling.
16938         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16939         Add "catch handler" handling.
16940         (ada_exception_catchpoint_cond_string): Add "catch handler"
16941         handling.
16942         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16943         call.
16944         (catch_ada_handlers_command): New function.
16945         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16946         operations structure.
16947         (_initialize_ada_language): Add "catch handlers" command entry.
16948         * NEWS: Document "catch handlers" feature.
16949
16950 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16951
16952         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16953         account when creating the array type of the slice.
16954         (ada_value_slice): Likewise.
16955
16956 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16957
16958         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16959         New enum value.
16960         (create_array_type_with_stride): Add byte_stride_prop parameter.
16961         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16962         New parameter.  Update all callers in this file.
16963         (array_type_has_dynamic_stride): New function.
16964         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16965         of arrays with dynamic byte strides.
16966         * dwarf2read.c (read_array_type): Add support for dynamic
16967         DW_AT_byte_stride attributes.
16968
16969 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16970
16971         * dwarf2read.c (read_unspecified_type): Treat
16972         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16973
16974 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16975
16976         Update copyright year range in all GDB files.
16977
16978 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16979
16980         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16981         and gdb/testsuite/gdb.base/step-line.c.
16982
16983 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16984
16985         * copyright.py (main): Dump the contents of
16986         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16987         even if BY_HAND is empty.
16988
16989 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16990
16991         * top.c (print_gdb_version): Update Copyright year in version
16992         message.
16993
16994 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16995
16996         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16997
16998 For older changes see ChangeLog-2017.
16999 \f
17000 Local Variables:
17001 mode: change-log
17002 left-margin: 8
17003 fill-column: 74
17004 version-control: never
17005 coding: utf-8
17006 End: