gdb: Respect field width and alignment for 'fmt' fields in CLI output
[external/binutils.git] / gdb / ChangeLog
1 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
4         and remove insertion of extra spaces in GDB's output.
5         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
6         Layout field into a temporary buffer, and then output it as a
7         string field.
8
9 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10
11         * NEWS: Document the language choice done by
12         'info [types|functions|variables]|rbreak'.
13
14 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
15
16         * symtab.c (treg_matches_sym_type_name): Use
17         scoped_switch_to_sym_language_if_auto instead of local logic.
18         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
19         to switch to SYM language when language mode is auto.
20
21 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
22
23         * language.h (scoped_switch_to_sym_language_if_auto): New class.
24
25 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
26
27         * symtab.c (search_symbols): Properly check absence of type regexp
28         before entering the loop scanning the minimal symbols.
29
30 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
31
32         * s12z-tdep.c (s12z_extract_return_value): New function.
33         (inv_reg_perm) New array.
34         (s12z_return_value): Populate readbuf if non-null.
35
36 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
37
38         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
39         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
40         to MinGW fixed by Gnulib.
41         (O_NOINHERIT): Define if not defined.
42
43 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
44
45         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
46
47 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
48
49         * infrun.c (displaced_step_inferior_state) <next>: Remove.
50
51 2018-11-19  Tom Tromey  <tom@tromey.com>
52
53         * source.c (get_filename_and_charpos): Return void.
54
55 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
56
57         * skip.c (_initialize_step_skip): Fix "info skip" help.
58
59 2018-11-16  Tom Tromey  <tom@tromey.com>
60
61         PR rust/23625:
62         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
63
64 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
65
66         * infrun.c (displaced_step_inferior_states): Change type to
67         std::forward_list.
68         (get_displaced_stepping_state): Adjust.
69         (displaced_step_in_progress_any_inferior): Adjust.
70         (add_displaced_stepping_state): Adjust.
71         (remove_displaced_stepping_state): Adjust.
72
73 2018-11-18  Tom Tromey  <tom@tromey.com>
74
75         PR build/23814:
76         * target-delegates.c: Rebuild.
77         * ia64-linux-nat.c (class ia64_linux_nat_target)
78         <have_steppable_watchpoint>: Use override.  Return true, not 1.
79         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
80         "self" argument.
81         (ia64_linux_nat_target::low_new_thread): Rename.
82         (class ia64_linux_nat_target) <read_description>: Don't declare.
83         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
84         bool.
85
86 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
87
88         PR gdb/22736:
89         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
90         lang_struct_return code.
91
92 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
93
94         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
95         return_method.
96         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
97         * amd64-tdep.c (amd64_push_arguments): Likewise.
98         (amd64_push_dummy_call): Likewise.
99         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
100         * arc-tdep.c (arc_push_dummy_call): Likewise.
101         * arm-tdep.c (arm_push_dummy_call): Likewise.
102         * avr-tdep.c (avr_push_dummy_call): Likewise.
103         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
104         * cris-tdep.c (cris_push_dummy_call): Likewise.
105         * csky-tdep.c (csky_push_dummy_call): Likewise.
106         * frv-tdep.c (frv_push_dummy_call): Likewise.
107         * gdbarch.c: Regenerate.
108         * gdbarch.h: Regenerate.
109         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
110         return_method.
111         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
112         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
113         (hppa64_push_dummy_call): Likewise.
114         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
115         * i386-tdep.c (i386_push_dummy_call): Likewise.
116         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
117         * infcall.c (call_function_by_hand_dummy): Likewise.
118         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
119         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
120         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
121         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
122         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
123         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
124         * mep-tdep.c (mep_push_dummy_call): Likewise.
125         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
126         (mips_n32n64_push_dummy_call): Likewise.
127         (mips_o32_push_dummy_call): Likewise.
128         (mips_o64_push_dummy_call): Likewise.
129         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
130         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
131         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
132         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
133         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
134         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
135         (ppc64_sysv_abi_push_dummy_call): Likewise.
136         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
137         (ppc64_sysv_abi_push_dummy_call): Likewise.
138         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
139         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
140         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
141         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
142         * rx-tdep.c (rx_push_dummy_call): Likewise.
143         * s390-tdep.c (s390_push_dummy_call): Likewise.
144         * score-tdep.c (score_push_dummy_call): Likewise.
145         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
146         (sh_push_dummy_call_nofpu): Likewise.
147         * sparc-tdep.c (sparc32_store_arguments): Likewise.
148         (sparc32_push_dummy_call): Likewise.
149         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
150         (sparc64_push_dummy_call): Likewise.
151         * spu-tdep.c (spu_push_dummy_call): Likewise.
152         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
153         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
154         * v850-tdep.c (v850_push_dummy_call): Likewise.
155         * vax-tdep.c (vax_push_dummy_call): Likewise.
156         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
157         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
158
159 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
160
161         * gdbarch.sh (enum function_call_return_method): Add enum.
162         * gdbarch.h: Regenerate.
163         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
164
165 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
166
167         * unittests/copy_bitwise-selftests.c: New file.
168         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
169         (selftests::copy_bitwise_tests): Delete, moving this code to
170         unittests/copy_bitwise-selftests.c instead.
171         (_initialize_utils): Do not register copy_bitwise tests.
172         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
173         unittests/copy_bitwise-selftests.c.
174
175 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
176
177         * ada-lang.c (move_bits): Delete. Update all callers to use
178         copy_bitwise instead.
179         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
180         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
181         Move from here to utils.c.
182         (_initialize_dwarf2loc): Remove call to register copy_bitwise
183         selftests.
184         * utils.h (copy_bitwise): Add declaration.
185         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
186         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
187         Moved here from dwarf2loc.c.
188         (_initialize_utils): Register copy_bitwise selftests.
189
190 2018-11-14  Jim Wilson  <jimw@sifive.com>
191
192         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
193         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
194         then increment next_regnum if odd.
195         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
196         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
197         function type.  Pass new arg to riscv_arg_location based on function
198         type.
199         (riscv_return_value): Pass new arg to riscv_arg_location.
200
201         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
202         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
203         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
204
205         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
206         setting len.  New local align, set to max of arg align and xlen,
207         and pass to first riscv_assign_stack_location call.
208
209 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
210
211         * skip.c (complete_skip_number): New function.
212         (_initialize_step_skip): Add completers to some skip commands.
213
214 2018-11-09  Tom Tromey  <tom@tromey.com>
215
216         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
217         (struct remote_g_packet_data): Derive from allocate_on_obstack.
218         <guesses>: Now a std::vector.
219         (remote_g_packet_data_init, register_remote_g_packet_guess):
220         Update.
221         (remote_read_description_p): Update.  Return bool.
222         (remote_target::read_description): Update.
223         (struct remote_g_packet_guess): Add constructor.
224
225 2018-11-09  Tom Tromey  <tom@tromey.com>
226
227         * common/scoped_fd.h (class scoped_fd): Add move constructor and
228         move assignment operator.
229         * psymtab.c (psymtab_to_fullname): Update.
230         * source.h (open_source_file): Return scoped_fd.
231         (find_and_open_source): Likewise.
232         * source.c (open_source_file): Return scoped_fd.
233         (get_filename_and_charpos): Update.
234         (print_source_lines_base): Update.  Use scoped_fd::to_file.
235         (forward_search_command): Likewise.
236         (reverse_search_command): Likewise.
237         (find_and_open_source): Return scoped_fd.
238         * tui/tui-source.c (tui_set_source_content): Update.  Use
239         gdb_file_up.
240
241 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
242
243         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
244         overflow.
245
246 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
247
248         * configure: Regenerate.
249
250 2018-11-09  Tom de Vries  <tdevries@suse.de>
251
252         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
253         unconditionally, to set the language of the symbol.  Manage freeing
254         returned pointer using gdb::unique_xmalloc_ptr.
255
256 2018-11-08  Tom Tromey  <tom@tromey.com>
257
258         * record.c (require_record_target): Upper-case "<TAB>".
259
260 2018-11-08  Tom Tromey  <tom@tromey.com>
261
262         * python/lib/gdb/command/pretty_printers.py
263         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
264
265 2018-11-08  Tom Tromey  <tom@tromey.com>
266
267         PR gdb/23555:
268         PR gdb/23838:
269         * target.h (target_supports_terminal_ours): Return bool.
270         * target.c (target_supports_terminal_ours): Handle case where
271         current_top_target returns nullptr.  Return bool.
272
273 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
274
275         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
276         return the correct count for potential HFAs.
277
278 2018-11-08  Jan Beulich  <jbeulich@suse.com>
279
280         * i387-tdep.c (i387_supply_xsave): Split handling of
281         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
282         (i387_collect_xsave): Likewise.
283
284 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
285
286         * riscv-tdep.c (riscv_insn::decode): Update header comment.
287         (riscv_frame_this_id): Catch errors thrown while building the
288         frame cache, leave the frame id as the default, which is the outer
289         frame id.
290
291 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
292
293         * ada-lang.c (read_atcb): Only set task_info->called_task if
294         task_info->state == Entry_Caller_Sleep.
295         (print_ada_task_info): Do not check task_info->state before
296         checking task_info->called_task.
297         (info_task): Likewise.
298
299 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
300
301         * ada-tasks.c (read_atcb): Clear task_info before computing
302         the value of each of its fields.
303
304 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
305
306         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
307         NULL before dereferencing it.
308
309 2018-11-06  Tom de Vries  <tdevries@suse.de>
310
311         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
312         program headers.
313
314 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
315
316         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
317         so that it applies to uclinux as well.
318
319 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
320
321         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
322         when on AAPCS.
323
324 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
325
326         * riscv-fbsd-nat.c (getregs_supplies): Return true for
327         RISCV_CSR_SSTATUS_REGNUM.
328
329 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
330
331         * source.c (open_source_file): Fix leak by transferring the
332         current s->fullname to the unique_xmalloc_ptr fullname given
333         to find_and_open_source.
334
335 2018-11-04  Tom Tromey  <tom@tromey.com>
336
337         * varobj.c (install_default_visualizer): Update.
338         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
339         Return gdbpy_ref.
340         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
341         (find_pretty_printer_from_progspace)
342         (find_pretty_printer_from_gdb, find_pretty_printer)
343         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
344         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
345         Update.
346
347 2018-11-04  Tom Tromey  <tom@tromey.com>
348
349         * python/python.c (gdbpy_parameter_value): Update.
350         * python/python-internal.h (python_string_to_unicode)
351         (python_string_to_target_python_string)
352         (host_string_to_python_string): Return gdbpy_ref.
353         * python/py-utils.c (python_string_to_unicode)
354         (unicode_to_encoded_python_string)
355         (unicode_to_target_python_string)
356         (python_string_to_target_string)
357         (python_string_to_target_python_string): Return gdbpy_ref.
358         (python_string_to_host_string): Update.
359         (host_string_to_python_string): Return gdbpy_ref.
360         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
361         (stpy_fullname): Update.
362         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
363         Update.
364         * python/py-prettyprint.c (print_string_repr): Update.
365         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
366         (objfpy_get_build_id): Update.
367         * python/py-breakpoint.c (bppy_get_location)
368         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
369         Update.
370
371 2018-11-04  Tom Tromey  <tom@tromey.com>
372
373         * python/python-internal.h (gdb_py_object_from_longest)
374         (gdb_py_object_from_ulongest): Return gdbpy_ref.
375         * python/py-value.c (valpy_int): Update.
376         * python/py-utils.c (gdb_py_object_from_longest): Return
377         gdbpy_ref.
378         (gdb_py_object_from_ulongest): Likewise.
379         * python/py-type.c (typy_get_alignof): Update.
380         * python/py-linetable.c (ltpy_get_all_source_lines)
381         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
382         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
383
384 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
385
386         * ada-lang.c (_initialize_ada_language): Fix typo.
387
388 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
389
390         * language.c (type): Remove.
391         (_initialize_language): Remove assignment to type.
392
393 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
394
395         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
396         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
397         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
398         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
399         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
400         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
401         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
402         and aarch64-ravenscar-thread.o.
403         * NEWS: Add entry documenting Ravenscar tasking support
404         on AArch64 ELF.
405
406 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
407
408         * symtab.c (info_functions_command): Initialize quiet flag.
409         * stack.c (info_args_command): Likewise.
410
411 2018-11-01  Jim Wilson  <jimw@sifive.com>
412
413         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
414         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
415         debugging messages.
416
417 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
418
419         * ada-lang.c (ada_watch_location_expression): New function.
420         (ada_language_defn): Set la_watch_location_expression to
421         ada_watch_location_expression.
422
423 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
424
425         * print-utils.c (int_string): Remove unnecessary trailing spaces.
426
427 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
428
429         * rs6000-tdep.c (skip_prologue): Fix potential negative left
430         shifting.
431
432 2018-11-01  Jerome Guitton  <guitton@adacore.com>
433             Joel Brobecker  <brobecker@adacore.com>
434
435         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
436         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
437         * arm-pikeos-tdep.c: New file.
438         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
439         embedded system.
440         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
441
442 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
443
444         * common/pathstuff.c (get_standard_temp_dir): New.
445         * common/pathstuff.h (get_standard_temp_dir): New.
446         * config.in: Re-generate.
447         * configure: Re-generate.
448         * configure.ac: Don't check for mkdtemp.
449         * gnulib/aclocal-m4-deps.mk: Re-generate.
450         * gnulib/aclocal.m4: Re-generate.
451         * gnulib/config.in: Re-generate.
452         * gnulib/configure: Re-generate.
453         * gnulib/import/Makefile.am: Re-generate.
454         * gnulib/import/Makefile.in: Re-generate.
455         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
456         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
457         * gnulib/import/m4/mkdtemp.m4: New file.
458         * gnulib/import/mkdtemp.c: New file.
459         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
460         Add mkdtemp module.
461         * unittests/mkdir-recursive-selftests.c (test): Use
462         get_standard_temp_dir.
463         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
464         ifdef.
465         * compile/compile.c (get_compile_file_tempdir): Likewise.
466
467 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
468
469         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
470         (SIG_FRAME_LR_OFFSET64): New define.
471         (SIG_FRAME_FP_OFFSET64): New define.
472         (aix_sighandle_frame_cache): New Function.
473         (aix_sighandle_frame_this_id): New Function.
474         (aix_sighandle_frame_prev_register): New Function.
475         (aix_sighandle_frame_sniffer): New Function.
476         (aix_sighandle_frame_unwind): New global variable.
477         (rs6000_aix_init_osabi): Install new frame unwinder.
478
479 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
480
481         PR gdb/23835
482         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
483         already defined.
484
485 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
486
487         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
488
489 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
490
491         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
492         (producer_is_icc): New function.
493         (check_producer): Set producer_is_icc field on dwarf2_cu.
494         (dwarf2_init_integer_type): New function.
495         (read_base_type): Call dwarf2_init_integer_type instead of
496         init_integer_type in all cases.
497         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
498         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
499         LEN is greater than 0.
500
501 2018-10-30  Tom Tromey  <tom@tromey.com>
502
503         * main.c (captured_main_1): Check return value of bfd_init.
504
505 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
506
507         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
508         Adjust comments.
509
510 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
511
512         * procfs.c: Include common/pathstuff.h.
513
514 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
515
516         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
517         Add missing braces.  No functional change.
518
519 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
520
521         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
522         to report a bad option and fix indentation.
523         * demangle.c (demangle_command): Use report_unrecognized_option_error
524         to report a bad option and correctly report the bad option.
525
526 2018-10-27  Tom Tromey  <tom@tromey.com>
527
528         PR cli/23364:
529         * darwin-nat.c (copied_shell): New global.
530         (may_have_sip): Rename from should_disable_startup_with_shell.
531         (copy_shell_to_cache, maybe_cache_shell): New functions.
532         (darwin_nat_target::create_inferior): Update.  Use
533         copied_shell.
534
535 2018-10-27  Tom Tromey  <tom@tromey.com>
536
537         * unittests/scoped_fd-selftests.c (test_to_file): New function.
538         (run_tests): Call test_to_file.
539         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
540         temporary files.
541         * common/scoped_fd.h (scoped_fd::to_file): New method.
542
543 2018-10-27  Tom Tromey  <tom@tromey.com>
544
545         * unittests/scoped_mmap-selftests.c (test_normal): Use
546         gdb_mkostemp_cloexec.
547         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
548         Use gdb_mkostemp_cloexec.
549         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
550         gnulib/config.in, gnulib/configure,
551         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
552         gnulib/import/m4/gnulib-cache.m4,
553         gnulib/import/m4/gnulib-comp.m4: Update.
554         * gnulib/import/m4/mkostemp.m4: New file.
555         * gnulib/import/m4/mkstemp.m4: Remove.
556         * gnulib/import/mkostemp.c: New file.
557         * gnulib/import/mkstemp.m4: Remove.
558         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
559         mkstemp, add mkostemp.  Apply new patch.
560         * gnulib/import/stdlib.in.h: Apply patch.
561         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
562         New file.
563         * dwarf-index-write.c (write_psymtabs_to_index): Use
564         gdb_mkostemp_cloexec.
565         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
566
567 2018-10-27  Tom Tromey  <tom@tromey.com>
568
569         * unittests/mkdir-recursive-selftests.c: New file.
570         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
571         unittests/mkdir-recursive-selftests.c.
572         * dwarf-index-cache.c (mkdir_recursive): Move to
573         common/filestuff.c.
574         (index_cache::store): Check return value of mkdir_recursive.
575         (create_dir_and_check, test_mkdir_recursive): Move to new file.
576         (_initialize_index_cache): Don't register test.
577         * common/filestuff.h (mkdir_recursive): Declare.
578         * common/filestuff.c (mkdir_recursive): Move from
579         dwarf-index-cache.c.  Return bool.
580
581 2018-10-27  Tom Tromey  <tom@tromey.com>
582
583         * dwarf-index-write.c (write_psymtabs_to_index): Move
584         make_temp_filename to common/pathstuff.c.
585         * common/pathstuff.h (make_temp_filename): Declare.
586         * common/pathstuff.c (make_temp_filename): New function, moved
587         from dwarf-index-write.c.
588
589 2018-10-27  Tom Tromey  <tom@tromey.com>
590
591         * procfs.c (procfs_target::create_inferior): Use get_shell.
592         * cli/cli-cmds.c (shell_escape): Use get_shell.
593         * windows-nat.c (windows_nat_target::create_inferior): Use
594         get_shell.
595         * common/pathstuff.c (get_shell): New function.
596         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
597         (fork_inferior): Use get_shell.
598         * common/pathstuff.h (get_shell): Declare.
599
600 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
601
602         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
603
604 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
605
606         * stack.c (print_variable_and_value_data): Add preg and treg.
607         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
608         and update callers.
609         (print_frame_arg_vars): Likewise.
610         (prepare_reg): New function.
611         (info_locals_command): Extract info print args and use them.
612         (info_args_command): Likewise.
613         (_initialize_stack): Modify on-line help.
614         * symtab.c (treg_matches_sym_type_name): New function.
615         (search_symbols): New arg t_regexp.
616         (symtab_symbol_info): New args quiet, regexp, t_regexp.
617         (info_variables_command): Extract info print args and use them.
618         (info_functions_command): Likewise.
619         (info_types_command): Update call to symtab_symbol_info.
620         (_initialize_symtab): Modify on-line help.
621         * symtab.h (treg_matches_sym_type_name): New function.
622         (search_symbols): New t_regexp arg.
623
624 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
625
626         * cli-utils.c (extract_arg_maybe_quoted): New function.
627         (extract_info_print_args): New function.
628         (info_print_args_help): New function.
629         (report_unrecognized_option_error): New function.
630         * cli-utils.h (extract_arg_maybe_quoted): New function.
631         (extract_info_print_args): New function.
632         (info_print_args_help): New function.
633         (report_unrecognized_option_error): New function.
634
635 2018-10-26  Tom Tromey  <tom@tromey.com>
636
637         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
638         (compute_compunit_symtab_includes): Update.
639         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
640         (compunit_symtab_ptr): Likewise.
641
642 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
643
644         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
645         default_print_auxv_entry for specific tag values.
646
647 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
648
649         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
650
651 2018-10-26  Jim Wilson  <jimw@sifive.com>
652
653         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
654         (riscv_linux_sigframe_init): Declare.
655         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
656         (riscv_linux_sigframe): New.
657         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
658         (riscv_linux_sigframe_init): Define.
659         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
660
661         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
662         (riscv_isa_flen): Likewise.  Drop static.
663         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
664         (riscv_isa_flen): Likewise.  Declare.
665
666 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
667             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
668
669         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
670         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
671         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
672         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
673         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
674         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
675         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
676         Define.
677         (struct ppc_linux_features) <htm>: New field.
678         (ppc_linux_no_features): Add initializer for htm field.
679         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
680         new tdescs.
681         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
682         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
683         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
684         Define if not already defined.
685         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
686         and rs6000/powerpc-isa207-htm-vsx64l.
687         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
688         rs6000/powerpc-isa207-htm-vsx64l.xml.
689         * features/rs6000/power-htm-spr.xml: New file.
690         * features/rs6000/power-htm-core.xml: New file.
691         * features/rs6000/power64-htm-core.xml: New file.
692         * features/rs6000/power-htm-fpu.xml: New file.
693         * features/rs6000/power-htm-altivec.xml: New file.
694         * features/rs6000/power-htm-vsx.xml: New file.
695         * features/rs6000/power-htm-ppr.xml: New file.
696         * features/rs6000/power-htm-dscr.xml: New file.
697         * features/rs6000/power-htm-tar.xml: New file.
698         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
699         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
700         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
701         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
702         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
703         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
704         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
705         fetch_regset with HTM regsets.
706         (store_register, store_ppc_registers): Call store_regset with HTM
707         regsets.
708         (ppc_linux_nat_target::read_description): Set htm field in the
709         features struct if needed.
710         * ppc-linux-tdep.c: Include
711         features/rs6000/powerpc-isa207-htm-vsx32l.c and
712         features/rs6000/powerpc-isa207-htm-vsx64l.c.
713         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
714         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
715         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
716         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
717         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
718         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
719         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
720         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
721         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
722         (ppc32_linux_ctarregset): New globals.
723         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
724         (ppc_linux_collect_core_cpgrregset): New function.
725         (ppc_linux_iterate_over_regset_sections): Call back with the htm
726         regsets.
727         (ppc_linux_core_read_description): Check if the tm spr section is
728         present and set htm in the features struct.
729         (_initialize_ppc_linux_tdep): Call
730         initialize_tdesc_powerpc_isa207_htm_vsx32l and
731         initialize_tdesc_powerpc_isa207_htm_vsx64l.
732         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
733         Declare.
734         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
735         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
736         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
737         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
738         New fields.
739         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
740         Likewise.
741         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
742         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
743         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
744         New enum fields.
745         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
746         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
747         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
748         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
749         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
750         <PPC_CTAR_REGNUM>: Likewise.
751         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
752         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
753         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
754         (IS_CEFP_PSEUDOREG): Define.
755         (rs6000_register_name): Hide the upper halves of checkpointed VSX
756         registers.  Return names for the checkpointed DFP, VSX, and EFP
757         pseudo registers.
758         (rs6000_pseudo_register_type): Remove initial assert and raise an
759         internal error in the else clause instead.  Return types for the
760         checkpointed DFP, VSX, and EFP pseudo registers.
761         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
762         checkpointed DFP pseudo registers.
763         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
764         checkpointed VSX pseudo registers.
765         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
766         from efpr_pseudo_register_read and
767         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
768         registers.
769         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
770         Handle checkpointed DFP, VSX, and EFP registers.
771         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
772         (efp_ax_pseudo_register_collect): New functions.
773         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
774         register logic to new functions.  Handle checkpointed DFP, VSX,
775         and EFP pseudo registers.
776         (rs6000_gdbarch_init): Look for and validate the htm features.
777         Include checkpointed DFP, VSX and EFP pseudo-registers.
778         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
779         HTM registers.
780
781 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
782
783         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
784         without altivec or fpu.
785
786 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
787             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
788
789         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
790         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
791         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
792         Define if not already defined.
793         * features/rs6000/power-ebb.xml: New file.
794         * features/rs6000/power-linux-pmu.xml: New file.
795         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
796         features.
797         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
798         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
799         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
800         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
801         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
802         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
803         fetch_regset with ebb and pmu regsets.
804         (store_register, store_ppc_registers): Call store_regset with ebb
805         and pmu regsets.
806         (ppc_linux_nat_target::read_description): Set isa207 field in the
807         features struct if ebb and pmu are avaiable.
808         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
809         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
810         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
811         and pmu regsets.
812         (ppc_linux_core_read_description): Check if the pmu section is
813         present and set isa207 in the features struct.
814         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
815         (ppc32_linux_pmuregset): Declare.
816         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
817         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
818         <ppc_sier_regnum>: New field.
819         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
820         New enum values.
821         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
822         values.
823         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
824         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
825         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
826         ebb and pmu features.
827
828 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
829             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
830
831         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
832         (tdesc_powerpc_isa207_vsx64l): Declare.
833         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
834         (struct ppc_linux_features) <isa207>: New field.
835         (ppc_linux_no_features): Add initializer for isa207 field.
836         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
837         new tdescs.
838         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
839         (NT_PPC_TAR): Define if not already defined.
840         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
841         rs6000/powerpc-isa207-vsx64l.
842         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
843         rs6000/powerpc-isa207-vsx64l.xml.
844         * features/rs6000/power-tar.xml: New file.
845         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
846         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
847         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
848         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
849         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
850         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
851         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
852         fetch_regset with the TAR regset.
853         (store_register, store_ppc_registers): Call store_regset with the
854         TAR regset.
855         (ppc_linux_nat_target::read_description): Set isa207 field in the
856         features struct if needed.
857         * ppc-linux-tdep.c: Include
858         features/rs6000/powerpc-isa207-vsx32l.c and
859         features/rs6000/powerpc-isa207-vsx64l.c.
860         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
861         (ppc_linux_iterate_over_regset_sections): Call back with the tar
862         regset.
863         (ppc_linux_core_read_description): Check if the tar section is
864         present and set isa207 in the features struct.
865         (_initialize_ppc_linux_tdep): Call
866         initialize_tdesc_powerpc_isa207_vsx32l and
867         initialize_tdesc_powerpc_isa207_vsx64l.
868         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
869         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
870         (enum) <PPC_TAR_REGNUM>: New enum value.
871         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
872         feature.
873         (ppc_process_record_op31): Record changes to TAR.
874
875 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
876             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
877
878         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
879         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
880         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
881         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
882         (struct ppc_linux_features) <ppr_dscr>: New field.
883         (ppc_linux_no_features): Add initializer for ppr_dscr field.
884         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
885         new tdescs.
886         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
887         Define if not already defined.
888         * features/Makefile (WHICH): Add
889         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
890         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
891         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
892         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
893         * features/rs6000/power-dscr.xml: New file.
894         * features/rs6000/power-ppr.xml: New file.
895         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
896         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
897         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
898         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
899         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
900         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
901         * ppc-linux-nat.c: Include <sys/uio.h>.
902         (fetch_regset, store_regset, check_regset): New functions.
903         (fetch_register, fetch_ppc_registers): Call fetch_regset with
904         DSCR and PPR regsets.
905         (store_register, store_ppc_registers): Call store_regset with
906         DSCR and PPR regsets.
907         (ppc_linux_get_hwcap2): New function.
908         (ppc_linux_nat_target::read_description): Call
909         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
910         features struct if needed.
911         * ppc-linux-tdep.c: Include
912         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
913         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
914         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
915         (ppc32_linux_dscrregset): New globals.
916         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
917         and dscr regsets.
918         (ppc_linux_core_read_description): Check if the ppr and dscr
919         sections are present and set ppr_dscr in the features struct.
920         (_initialize_ppc_linux_tdep): Call
921         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
922         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
923         * ppc-linux-tdep.h (ppc32_linux_pprregset)
924         (ppc32_linux_dscrregset): Declare.
925         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
926         <ppc_dscr_regnum>: New field.
927         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
928         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
929         and dscr features.
930         (ppc_process_record_op31): Record changes to PPR and DSCR.
931
932 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
933
934         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
935         second initializer line for the have_* variables.  Initialize
936         have_fpu to 0 instead of 1.
937
938 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
939
940         * arch/ppc-linux-common.c (ppc_linux_match_description):
941         Parenthesize tdesc assignements and indent them properly.
942
943 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
944
945         * ppc-linux-nat.c (fetch_register): Change if statement to else
946         if.
947         (store_register): Likewise.
948
949 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
950
951         * rs6000-tdep.c: Remove reggroups.h include.
952         (rs6000_pseudo_register_reggroup_p): Remove.
953         (rs6000_gdbarch_init): Remove call to
954         set_tdesc_pseudo_register_reggroup_p.
955
956 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
957
958         * reggroups.c (default_register_reggroup_p): Return true for
959         decfloat registers and float_reggroup.
960
961 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
962
963         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
964         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
965         ppc_linux_collect_vrregset by regcache_collect_regset.
966
967 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
968
969         * linux-tdep.c (linux_collect_regset_section_cb): Use
970         std::vector<gdb_byte> instead of char * and malloc for buf.
971         Remove xfree.
972
973 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
974
975         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
976         symtab_start instead of always using language_unknown.
977
978 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
979
980         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
981         READ_P parameter, catch and ignore register access errors from
982         either the old or new MISA location.
983         (riscv_has_feature): Update call to riscv_read_misa_reg.
984
985 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
986
987         * python/py-function.c (convert_values_to_python): Return
988         gdbpy_ref<>.  Add header comment.
989         (fnpy_call): Adjust.
990
991 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
992
993         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
994         (cmdpy_completer_handle_brkchars): Adjust.
995         (cmdpy_completer): Adjust.
996
997 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
998
999         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1000         Pass correct regnum to raw_supply_zeroed.
1001
1002 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1003
1004         * regcache.c (cooked_read_test): Add CSKY to the list of
1005         architectures with a save_reggroup
1006
1007 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1008
1009         PR gdb/23368
1010         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1011         transfer terminal state from old new new inferior.
1012         * terminal.h (swap_terminal_info): New function.
1013         * inflow.c (swap_terminal_info): New function.
1014
1015 2018-10-23  Tom Tromey  <tom@tromey.com>
1016
1017         * record-btrace.c (get_thread_current_frame_id): Rename from
1018         get_thread_current_frame.  Return a frame_id.
1019         (record_btrace_start_replaying): Update.
1020
1021 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1022
1023         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1024         for CSRs.
1025
1026 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1027
1028         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1029         have_nonsteppable_watchpoint attribute to 1.
1030
1031 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1032
1033         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1034         register names.
1035         (struct register_alias): Rename to...
1036         (struct riscv_register_alias): ...this, and update comment.
1037         (riscv_register_aliases): Update type, and alias names.  Remove
1038         CSR names from this list.
1039         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1040         register names.  Add an extra assertion.
1041         (riscv_is_regnum_a_named_csr): New function.
1042         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1043
1044 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1045
1046         * configure.tgt: Add configuration for s12z.
1047         * s12z-tdep.c:  New file.
1048         * NEWS: Mention new target.
1049
1050 2018-10-22  Jim Wilson  <jimw@sifive.com>
1051
1052         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1053         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1054
1055         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1056         (riscv_register_type): Use them.
1057         (riscv_print_one_register_info): Handle union of floats same as float.
1058         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1059         riscv_fpreg_q_type fields.
1060
1061 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1062
1063         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1064         * gdbarch.h: Re-generate.
1065         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1066         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1067         * eval.c (evaluate_subexp_standard): Likewise.
1068         * findvar.c (value_of_register): Likewise.
1069         (value_of_register_lazy): Likewise.
1070         (address_from_register): Likewise.
1071         * frame.c (get_frame_register_bytes): Likewise.
1072         * gdbarch-selftests.c (register_to_value_test): Likewise.
1073         * h8300-tdep.c (h8300_register_type): Likewise.
1074         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1075         (i386_svr4_reg_to_regnum): Likewise.
1076         * infcmd.c (default_print_registers_info): Likewise.
1077         (registers_info): Likewise.
1078         (print_vector_info): Likewise.
1079         (default_print_float_info): Likewise.
1080         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1081         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1082         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1083         (mi_cmd_data_list_changed_registers): Likewise.
1084         (mi_cmd_data_list_register_values): Likewise.
1085         (mi_cmd_data_write_register_values): Likewise.
1086         (mi_cmd_trace_frame_collected): Likewise.
1087         * mips-tdep.c (print_gp_register_row): Likewise.
1088         (mips_print_registers_info): Likewise.
1089         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1090         * regcache.c (init_regcache_descr): Likewise.
1091         (register_size): Likewise.
1092         (register_dump::dump): Likewise.
1093         (cooked_read_test): Likewise.
1094         (cooked_write_test): Likewise.
1095         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1096         (rs6000_gdbarch_init): Likewise.
1097         * stabsread.c (stab_reg_to_regnum): Likewise.
1098         * stack.c (info_frame_command): Likewise.
1099         * target-descriptions.c (tdesc_register_name): Likewise.
1100         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1101         * tui/tui-regs.c (tui_show_register_group): Likewise.
1102         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1103         (user_reg_map_regnum_to_name): Likewise.
1104         (value_of_user_reg): Likewise.
1105         (maintenance_print_user_registers): Likewise.
1106         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1107         (xtensa_register_name): Likewise.
1108         (xtensa_register_type): Likewise.
1109         (xtensa_reg_to_regnum): Likewise.
1110         (xtensa_pseudo_register_read): Likewise.
1111         (xtensa_pseudo_register_write): Likewise.
1112
1113 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1114
1115         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1116         correctly-sized buffer with raw_read.
1117         (amd64_pseudo_register_write): Use correctly-sized buffer for
1118         raw_read/raw_write.
1119
1120 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1121
1122         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1123         in add_prefix_cmd of set print type.
1124
1125 2018-10-19  Tom Tromey  <tom@tromey.com>
1126
1127         PR tui/18388:
1128         * NEWS: Mention tabset deprecation.
1129         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1130         (update_tab_width): New function.
1131         (tui_set_tab_width, tui_show_tab_width): New functions.
1132         (tui_set_tab_width_command): Use update_tab_width.
1133         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1134         Add new "set tui tab-width" command.
1135         * tui/tui-source.c (tui_set_source_content): Update.
1136         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1137         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1138         Don't declare.
1139         (tui_tab_width): Declare.
1140         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1141         (tui_set_default_tab_len): Remove.
1142
1143 2018-10-19  Tom Tromey  <tom@tromey.com>
1144
1145         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1146         (key_is_backspace, tui_getc): Don't declare.
1147         * tui/tui-io.c (key_is_start_sequence): Now static.
1148         (key_is_end_sequence, key_is_backspace): Remove.
1149         (tui_getc): Now static.
1150
1151 2018-10-19  Tom Tromey  <tom@tromey.com>
1152
1153         * symfile.c (reread_symbols): Clear "static_links".
1154
1155 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1156
1157         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1158         define.
1159         (aarch64_linux_sigframe_init): Extra boundary checks.
1160
1161 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1162
1163         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1164         the possibly non-existent tdesc type 'vec128', but the type of raw
1165         register v16 instead.
1166
1167 2018-10-19  Gary Benson <gbenson@redhat.com>
1168
1169         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1170
1171 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1172
1173         PR cli/23785
1174         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1175         NULL.
1176
1177 2018-10-17  Paul Koning  <paul_koning@dell.com>
1178
1179         * charset.c (convert_between_encodings): Fix unsigned overflow.
1180
1181 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1182
1183         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1184         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1185         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1186         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1187         New functions.
1188         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1189         and fbsd_info_proc_mappings_header.
1190         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1191         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1192         New.
1193
1194 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1195
1196         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1197         Solaris Maintainer.
1198
1199 2018-10-15  Tom Tromey  <tom@tromey.com>
1200
1201         * tui/tui.c (strcat_to_buf): Remove casts.
1202         * tui/tui-winsource.c (tui_show_source_line)
1203         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1204         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1205         * tui/tui-windata.c (tui_first_data_item_displayed)
1206         (tui_delete_data_content_windows, tui_erase_data_content)
1207         (tui_display_all_data, tui_display_data_from)
1208         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1209         * tui/tui-win.c (tui_set_win_height)
1210         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1211         casts.
1212         * tui/tui-win.c (tui_resize_all): Remove casts.
1213         (tui_scroll_backward_command, tui_set_focus)
1214         (tui_set_tab_width_command): Likewise.
1215         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1216         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1217         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1218         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1219         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1220         Remove casts.
1221
1222 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1223
1224         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1225         AArch64/ARM maintainer.
1226
1227 2018-10-11  Gary Benson <gbenson@redhat.com>
1228
1229         * interps.h (interp::m_name): Make private and mutable.
1230         * interps.c (interp::~interp): Free m_name.
1231
1232 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1233             Simon Marchi <simark@simark.ca>
1234
1235         * README (`configure' options): Add documentation for new
1236         "--enable-unit-tests" option.
1237         * acinclude.m4: Include "selftest.m4".
1238         * configure: Regenerate.
1239         * configure.ac: Use "GDB_AC_SELFTEST".
1240         * maint.c (maintenance_selftest): Update message informing
1241         that selftests have been disabled.
1242         (maintenance_info_selftests): Likewise.
1243         * selftest.m4: New file.
1244
1245 2018-10-10  Gary Benson <gbenson@redhat.com>
1246
1247         * remote.c (remote_target::remote_send_printf): Add
1248         missing va_end found by Coverity.
1249
1250 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1251
1252         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1253
1254 2018-10-09  Tom Tromey  <tom@tromey.com>
1255
1256         * configure: Rebuild.
1257         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1258         * NEWS: Update --enable-ubsan documentation.
1259
1260 2018-10-09  Gary Benson <gbenson@redhat.com>
1261
1262         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1263         found by Coverity.
1264
1265 2018-10-08  Tom Tromey  <tom@tromey.com>
1266
1267         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1268         variable.
1269         (riscv_fbsd_init_abi): Likewise.
1270
1271 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1272         * valops.c (value_struct_elt_for_reference): Rename local variable
1273         to work around the shadowing a previous local warning.
1274
1275 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1276
1277         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1278         * NEWS: Mention new FreeBSD/riscv native configuration.
1279         * configure.host: Add riscv*-*-freebsd*.
1280         * configure.nat: Likewise.
1281         * riscv-fbsd-nat.c: New file.
1282
1283 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1284
1285         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1286         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1287         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1288         * NEWS: Mention new FreeBSD/riscv target.
1289         * configure.tgt: Add riscv*-*-freebsd*.
1290         * riscv-fbsd-tdep.c: New file.
1291         * riscv-fbsd-tdep.h: New file.
1292
1293 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1294
1295         * regcache.h (struct regcache_map_entry): Note that this type can
1296         be used with traditional frame caches.
1297         * trad-frame.c (trad_frame_set_reg_regmap): New.
1298         * trad-frame.h (trad_frame_set_reg_regmap): New.
1299
1300 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1301
1302         PR c++/16841
1303         * valops.c (get_virtual_base_offset): New function.
1304         (value_struct_elt_for_reference): Use it to get virtual base offset
1305         and add it in calculating class member address.
1306
1307 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1308
1309         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1310         (check_producer): Check if the producer is codewarrior.
1311         (producer_is_codewarrior): New function.
1312         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1313         produced by codewarrior.
1314         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1315
1316 2018-10-06  Tom Tromey  <tom@tromey.com>
1317
1318         PR python/19399:
1319         * python/py-inferior.c: Add "architecture" entry.
1320         (infpy_architecture): New function.
1321
1322 2018-10-06  Tom Tromey  <tom@tromey.com>
1323
1324         PR python/21765:
1325         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1326         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1327         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1328         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1329
1330 2018-10-06  Tom Tromey  <tom@tromey.com>
1331
1332         PR build/17077:
1333         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1334         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1335         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1336         #include.
1337
1338 2018-10-06  Tom Tromey  <tom@tromey.com>
1339
1340         * python/py-breakpoint.c (bppy_get_location): Handle a
1341         bp_breakpoint without a location.
1342
1343 2018-10-06  Tom Tromey  <tom@tromey.com>
1344
1345         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1346         (_RegEx): Reformat help text.
1347         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1348         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1349         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1350         text.
1351         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1352         (EnableXMethod, DisableXMethod): Remove help indentation.
1353         Capitalize meta-syntactic variables.
1354         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1355         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1356         Capitalize meta-syntactic variables.
1357         * python/lib/gdb/command/explore.py (ExploreCommand)
1358         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1359         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1360         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1361         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1362         Remove help indentation.
1363         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1364         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1365         (DisableFrameFilter, SetFrameFilterPriority)
1366         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1367
1368 2018-10-06  Tom Tromey  <tom@tromey.com>
1369
1370         PR tui/28819:
1371         * tui/tui-io.c (gdb_wgetch): New function.
1372         (tui_mld_getc, tui_getc): Use it.
1373
1374 2018-10-05  Tom Tromey  <tom@tromey.com>
1375
1376         * sol-thread.c (sol_thread_target::wait): Rename inner
1377         "save_ptid".
1378
1379 2018-10-04  Tom Tromey  <tom@tromey.com>
1380
1381         * configure: Rebuild.
1382         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1383
1384 2018-10-04  Tom Tromey  <tom@tromey.com>
1385
1386         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1387         declaration of "block".
1388
1389 2018-10-04  Tom Tromey  <tom@tromey.com>
1390
1391         * common/filestuff.c (fdwalk): Remove inner declaration of
1392         "result".
1393
1394 2018-10-04  Tom Tromey  <tom@tromey.com>
1395
1396         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1397         "structs_addr" and hoist declaration.
1398
1399 2018-10-04  Tom Tromey  <tom@tromey.com>
1400
1401         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1402         variable "size".
1403
1404 2018-10-04  Tom Tromey  <tom@tromey.com>
1405
1406         * mdebugread.c (parse_partial_symbols): Use std::string.
1407
1408 2018-10-04  Tom Tromey  <tom@tromey.com>
1409
1410         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1411         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1412         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1413         header.
1414         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1415         more inner scope.
1416         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1417         * varobj.c (varobj_update): Rename inner "newobj",
1418         "type_changed".
1419         * valprint.c (generic_emit_char): Rename inner "buf".
1420         * valops.c (find_overload_match): Rename inner "temp".
1421         (value_struct_elt_for_reference): Declare "v" in more inner
1422         scope.
1423         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1424         * unittests/array-view-selftests.c (run_tests): Rename inner
1425         "vec".
1426         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1427         header.
1428         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1429         "tsv" in more inner scope.
1430         (print_one_static_tracepoint_marker): Rename inner
1431         "tuple_emitter".
1432         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1433         (tic6x_push_dummy_call): Don't redeclare "addr".
1434         * target-float.c: Declare "dto" lower.
1435         * symtab.c (lookup_local_symbol): Rename inner "sym".
1436         (find_pc_sect_line): Rename inner "pc".
1437         * stack.c (print_frame): Don't redeclare "gdbarch".
1438         (return_command): Rename inner "gdbarch".
1439         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1440         "sp".
1441         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1442         header.
1443         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1444         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1445         scope.
1446         * remote.c (remote_target::update_thread_list): Don't redeclare
1447         "tp".
1448         (remote_target::process_initial_stop_replies): Rename inner
1449         "thread".
1450         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1451         (remote_target::wait_as): Don't redeclare "stop_reply".
1452         (remote_target::get_thread_local_address): Rename inner
1453         "result".
1454         (remote_target::get_tib_address): Likewise.
1455
1456         * regcache.c (cooked_read_test): Rename "regnum".
1457         * record-btrace.c (cmd_record_btrace_start): Rename inner
1458         "exception".
1459         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1460         loop header.
1461         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1462         header.
1463         (ppu2spu_sniffer): Rename inner "buf".
1464         * parse.c (operator_check_standard): Rename inner "type",
1465         "objfile".
1466         * p-valprint.c (pascal_val_print): Introduce new scope for
1467         "low_bound", "high_bound".
1468         * p-exp.y (yylex): Declare "i" in loop header.
1469         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1470         Lower declaration of "s".
1471         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1472         header.
1473         (nios2_push_dummy_call): Rename "len".
1474         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1475         "buf".
1476         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1477         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1478         (linux_xfer_osdata_modules): Likewise.
1479         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1480         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1481         (mips_o64_push_dummy_call): Likewise.
1482         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1483         "op".
1484         * mi/mi-main.c (list_available_thread_groups): Rename inner
1485         "tuple_emitter".
1486         (mi_cmd_data_read_memory): Rename inner "opts".
1487         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1488         "tuple_emitter".
1489         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1490         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1491         more inner scope.
1492         (parse_partial_symbols): Rename inner "pst", "p", "name"
1493         * main.c (captured_main_1): Rename inner "i"s.
1494         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1495         "oso2".
1496         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1497         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1498         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1499         (handle_signal_stop): Rename inner "gdbarch".
1500         (handle_command): Declare "signum" in loop header.
1501         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1502         "status".
1503         (examine_prologue): Rename inner "sol" and "sof".
1504         (ia64_extract_return_value): Rename inner "val".  Declare another
1505         "val" in a more inner scope.
1506         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1507         inner scope.
1508         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1509         "except".
1510         * findvar.c (default_read_var_value): Don't redeclare "addr".
1511         * f-exp.y (yylex): Declare "i" in loop header.
1512         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1513         Rename inner "type", "expect_type".
1514         (evaluate_subexp_for_sizeof): Rename inner "pc".
1515         * elfread.c (elf_symfile_read): Rename inner "abfd".
1516         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1517         "bytes_read".
1518         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1519         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1520         (dwarf_decode_line_header): Rename inner "lh".
1521         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1522         "offset".  Declare "i" in loop header.
1523         (disassemble_dwarf_expression): Rename inner "addr_size".
1524         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1525         inner "result".
1526         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1527         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1528         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1529         "inner_list_emitter".
1530         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1531         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1532         declaration in a block.
1533         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1534         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1535         "obstack_final_size".
1536         * cp-support.c (inspect_type): Declare "i" in loop header.
1537         * compile/compile.c (compile_instance::insert_symbol_error):
1538         Rename inner "e".
1539         * common/agent.c (agent_run_command): Remove inner "ret"
1540         declaration.
1541         * coffread.c (coff_symfile_read): Rename inner "name".
1542         (coff_symfile_read): Rename inner "abfd".
1543         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1544         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1545         "high".
1546         * c-exp.y (lex_one_token): Move "len" declaration lower.
1547         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1548         "gdbarch".
1549         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1550         "b".
1551         (watch_command_1): Declare "mark" later.
1552         (clear_command): Don't shadow "a" or "b".
1553         (delete_command): Rename inner "b".
1554         (delete_trace_command): Likewise.
1555         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1556         "op".
1557         (arm_gdbarch_init): Remove inner "e_flags".
1558         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1559         "offset" in inner blocks.
1560
1561 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1562
1563         * dwarf-index-write.c (file_write): Don't write if the vector is
1564         empty.
1565
1566 2018-10-05  Tom de Vries  <tdevries@suse.de>
1567
1568         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1569         PyArg_ParseTuple call.
1570
1571 2018-10-05  Tom de Vries  <tdevries@suse.de>
1572
1573         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1574         PyArg_ParseTuple call.
1575
1576 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1577
1578         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1579         to avoid exceeding 80 characters per line limit.
1580
1581 2018-10-04  Tom Tromey  <tom@tromey.com>
1582
1583         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1584         (reread_symbols): Update.
1585         * complaints.h (clear_complaints): Remove argument.
1586         * complaints.c (enum complaint_series): Remove.
1587         (series): Remove global.
1588         (complaint_internal): Update.
1589         (clear_complaints): Remove argument.
1590
1591 2018-10-04  Tom Tromey  <tom@tromey.com>
1592
1593         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1594         debugging symbols" message if there is a separate debug objfile.
1595
1596 2018-10-04  Tom Tromey  <tom@tromey.com>
1597
1598         PR cli/19551:
1599         * symfile.c (symbol_file_add_with_addrs): Update output.
1600         * psymtab.c (require_partial_symbols): Update output.
1601
1602 2018-10-04  Tom Tromey  <tom@tromey.com>
1603
1604         PR cli/22234:
1605         * complaints.c: Emit \n.
1606
1607 2018-10-04  Tom Tromey  <tom@tromey.com>
1608
1609         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1610         (separate_debug_file_exists, find_separate_debug_file)
1611         (add_symbol_file_command, reread_symbols, allocate_symtab)
1612         (allocate_compunit_symtab): Use filtered printing, not
1613         unfiltered.
1614         * psymtab.c (require_partial_symbols, dump_psymtab)
1615         (allocate_psymtab): Use filtered printing, not unfiltered.
1616
1617 2018-10-04  Tom Tromey  <tom@tromey.com>
1618
1619         * complaints.c (complaint_internal): Correctly check complaint
1620         count.
1621
1622 2018-10-04  Tom Tromey  <tom@tromey.com>
1623
1624         * complaints.h (struct complaints): Remove declaration.
1625         * complaints.c (clear_complaints): Remove an unused variable.
1626
1627 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1628
1629         * MAINTAINERS (Write After Approval): Add self.
1630
1631 2018-10-03  Tom Tromey  <tom@tromey.com>
1632
1633         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1634         "buffer_contents".
1635         * coffread.c (coff_symtab_read): Initialize "newobj".
1636
1637 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1638
1639         * dwarf2read.c (read_func_scope): Remove struct keyword in
1640         range-based for.
1641
1642 2018-10-03  Tom Tromey  <tom@tromey.com>
1643
1644         * README: Mention --enable-ubsan.
1645         * NEWS: Mention --enable-ubsan.
1646         * acinclude.m4: Include sanitize.m4.
1647         * configure: Rebuild.
1648         * configure.ac: Call AM_GDB_UBSAN.
1649         * sanitize.m4: New file.
1650
1651 2018-10-03  Tom Tromey  <tom@tromey.com>
1652
1653         * expression.h (enum exp_opcode): Use uint8_t as base type.
1654         * expprint.c (op_name): Handle invalid opcodes.
1655
1656 2018-10-03  Tom Tromey  <tom@tromey.com>
1657
1658         * parse.c (prefixify_expression): Add assert.
1659         (parse_exp_in_context_1): Throw exception if the expression is
1660         empty.
1661
1662 2018-10-03  Tom Tromey  <tom@tromey.com>
1663
1664         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1665
1666 2018-10-03  Tom Tromey  <tom@tromey.com>
1667
1668         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1669
1670 2018-10-03  Tom Tromey  <tom@tromey.com>
1671
1672         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1673         unsigned.
1674
1675 2018-10-03  Tom Tromey  <tom@tromey.com>
1676
1677         * findvar.c (extract_integer): Do work in an unsigned type.
1678
1679 2018-10-03  Tom Tromey  <tom@tromey.com>
1680
1681         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1682         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1683         base type.
1684         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1685         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1686         type.
1687         * c-lang.h (enum c_string_type_values): Use unsigned as base
1688         type.
1689         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1690
1691 2018-10-03  Tom Tromey  <tom@tromey.com>
1692
1693         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1694         <~dwarf2_frame_state_reg_info>: Update.
1695         <dwarf2_frame_state_reg_info>: Update.
1696         <alloc_regs>: Add assertion.  Update.
1697         <reg>: Now a std::vector.
1698         <num_regs>: Remove.
1699         <swap>: Update.
1700         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1701         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1702
1703 2018-10-03  Tom Tromey  <tom@tromey.com>
1704
1705         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1706
1707 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1708
1709         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1710
1711 2018-10-02  Tom Tromey  <tom@tromey.com>
1712
1713         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1714
1715 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
1716
1717         * NEWS: Mention changed commands.
1718         * ser-uds.c: New file.
1719         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1720         * configure: Regenerate.
1721         * Makefile.in: Add new file.
1722         * serial.c (serial_open): Check if filename is a socket
1723         and lookup the appropriate interface accordingly.
1724
1725 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1726
1727         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1728         define.
1729         (AARCH64_EXTRA_MAGIC): Likewise.
1730         (AARCH64_FPSIMD_MAGIC): Likewise.
1731         (AARCH64_SVE_MAGIC): Likewise.
1732         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1733         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1734         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1735         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1736         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1737         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1738         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1739         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1740         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1741         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1742         (read_aarch64_ctx): Add function.
1743         (aarch64_linux_sigframe_init): Detect FP registers.
1744
1745 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1746
1747         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1748         (AARCH64_D0_REGNUM): Likewise.
1749         (AARCH64_S0_REGNUM): Likewise.
1750         (AARCH64_H0_REGNUM): Likewise.
1751         (AARCH64_B0_REGNUM): Likewise.
1752         (AARCH64_SVE_V0_REGNUM): Likewise.
1753         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1754         (AARCH64_D0_REGNUM): Likewise.
1755         (AARCH64_S0_REGNUM): Likewise.
1756         (AARCH64_H0_REGNUM): Likewise.
1757         (AARCH64_B0_REGNUM): Likewise.
1758         (AARCH64_SVE_V0_REGNUM): Likewise.
1759
1760 2018-10-01  Gary Benson <gbenson@redhat.com>
1761
1762         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1763         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1764         prfpregset_t instead of gdb_prfpregset_t.
1765         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1766         * configure, config.in: Rebuild.
1767
1768 2018-10-01  Gary Benson <gbenson@redhat.com>
1769
1770         * common/gdb_proc_service.h: New file, factored out from...
1771         * gdb_proc_service.h: Moved common code to the above file.
1772         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1773
1774 2018-10-01  Gary Benson <gbenson@redhat.com>
1775
1776         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1777         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1778
1779 2018-10-01  Gary Benson <gbenson@redhat.com>
1780
1781         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1782         (AC_CHECK_HEADERS): Check for linux/elf.h.
1783         * configure, config.in: Rebuild.
1784         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1785         doesn't define elf_fpregset_t.
1786
1787 2018-10-01  Gary Benson <gbenson@redhat.com>
1788
1789         * gdb_proc_service.h: Whitespace change.
1790
1791 2018-10-01  Tom Tromey  <tom@tromey.com>
1792
1793         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1794         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1795         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1796
1797 2018-10-01  Tom Tromey  <tom@tromey.com>
1798
1799         * README: Minor change.
1800
1801 2018-09-30  Pedro Alves  <palves@redhat.com>
1802
1803         * darwin-nat-info.c (darwin_debug_regions_recurse)
1804         (info_mach_exceptions_command): Remove unused local variables.
1805         * darwin-nat.c (darwin_decode_notify_message)
1806         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1807         (darwin_stop_inferior, darwin_setup_exceptions)
1808         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1809         (darwin_nat_target::attach, darwin_nat_target::detach)
1810         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1811         local variables.
1812         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1813         variables.
1814
1815 2018-09-29  Tom Tromey  <tom@tromey.com>
1816
1817         * README: Remove some leftover text.
1818
1819 2018-09-29  Tom Tromey  <tom@tromey.com>
1820
1821         * PROBLEMS: Rewrite.
1822         * README: Update.
1823
1824 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1825
1826         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1827         case with explicit breakpoint kind.
1828         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1829         'additional_info' and related logic.
1830         (riscv_debug_breakpoints): New variable.
1831         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1832         instruction to determine the breakpoint kind.
1833         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1834         flag.  Update description of 'set/show riscv
1835         use-compressed-breakpoints' flag.
1836
1837 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1838
1839         (NEWS): Mention changes to frame related commands.
1840         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1841         (add_prefix_cmd_suppress_notification): New function.
1842         (add_com_suppress_notification): Call
1843         add_cmd_suppress_notification.
1844         * command.h (add_cmd_suppress_notification): Declare.
1845         (add_prefix_cmd_suppress_notification): Declare.
1846         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1847         (parse_frame_specification): Moved from stack.c, with
1848         simplification to handle a single argument.
1849         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1850         switch to the selected frame.  Add a header comment.
1851         * stack.c: Remove 'safe-ctype.h' include.
1852         (find_frame_for_function): Add declaration.
1853         (find_frame_for_address): New function.
1854         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1855         (frame_selection_by_function_completer): New function.
1856         (info_frame_command): Rename to...
1857         (info_frame_command_core): ...this, and update parameter types.
1858         (select_frame_command): Rename to...
1859         (select_frame_command_core): ...this, and update parameter types.
1860         (frame_command): Rename to...
1861         (frame_command_core): ...this, and update parameter types.
1862         (class frame_command_helper): New class to wrap implementations of
1863         frame related sub-commands.
1864         (frame_apply_cmd_list): New static global.
1865         (frame_cmd_list): Make static.
1866         (select_frame_cmd_list): New global for sub-commands.
1867         (info_frame_cmd_list): New global for sub-commands.
1868         (_initialize_stack): Register sub-commands for 'frame',
1869         'select-frame', and 'info frame'.  Update 'frame apply' commands
1870         to use frame_apply_cmd_list.  Move function local static
1871         frame_apply_list to file static frame_apply_cmd_list for
1872         consistency.
1873         * stack.h (select_frame_command): Delete declarationn.
1874         (select_frame_for_mi): Declare new function.
1875
1876 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1877
1878         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1879         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1880         and NOP.
1881
1882 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1883
1884         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1885
1886 2018-09-26  Tom Tromey  <tom@tromey.com>
1887
1888         * valops.c (auto_abandon): Remove dead code.
1889
1890 2018-09-26  Tom Tromey  <tom@tromey.com>
1891
1892         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1893
1894 2018-09-24  Tom Tromey  <tom@tromey.com>
1895
1896         * common/pathstuff.c (get_standard_cache_dir): Make
1897         "xdg_cache_home" and "home" const.
1898         * top.c (init_history): Make "tmpenv" const.
1899         * main.c (get_init_files): Make "homedir" const.
1900
1901 2018-09-23  Tom Tromey  <tom@tromey.com>
1902
1903         PR python/18852:
1904         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1905
1906 2018-09-23  Tom Tromey  <tom@tromey.com>
1907
1908         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1909         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1910         * python/python-internal.h (gdbpy_handle_exception): Declare.
1911         * python/py-utils.c (gdbpy_handle_exception): New function.
1912
1913 2018-09-23  Tom Tromey  <tom@tromey.com>
1914
1915         PR python/17284:
1916         * python/py-type.c (typy_template_argument): Check for negative
1917         argument number.
1918
1919 2018-09-23  Tom Tromey  <tom@tromey.com>
1920
1921         PR python/14062:
1922         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1923
1924 2018-09-23  Tom Tromey  <tom@tromey.com>
1925
1926         PR python/18170:
1927         * python/py-value.c (valpy_int): Allow conversion from pointer
1928         type.
1929
1930 2018-09-23  Tom Tromey  <tom@tromey.com>
1931
1932         PR python/20126:
1933         * python/py-value.c (valpy_int): Respect type sign.
1934
1935 2018-09-23  Tom Tromey  <tom@tromey.com>
1936
1937         PR python/18352;
1938         * python/py-value.c (valpy_float): Allow conversions from int or
1939         char.
1940         (valpy_int, valpy_long): Allow conversions from float.
1941
1942 2018-09-23  Tom Tromey  <tom@tromey.com>
1943
1944         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1945         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1946
1947 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1948
1949         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1950         __sighndlr.
1951         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1952
1953 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1954
1955         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1956         target_terminal::ours().
1957
1958 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1959
1960         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1961         of vl to ULONGEST.
1962
1963 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1964
1965         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1966         redundant condition.
1967
1968 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1969
1970         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1971
1972         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1973         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1974         * sol-thread.c (ps_pdmodel): Don't guard definition.
1975
1976         * procfs.c: Fix formatting.
1977
1978         * procfs.c (sysset_t_alloc): Remove.
1979         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1980         (procfs_debug_inferior): Likewise.
1981         (procfs_set_exec_trap): Likewise.
1982         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1983         (proc_set_traced_sysexit): Likewise.
1984
1985         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1986         (dead_procinfo): Likewise.
1987         (proc_warn): Likewise.
1988         (proc_error): Likewise.
1989         (proc_get_LDT_entry): Likewise.
1990         (do_attach): Likewise.
1991         (procfs_target::pid_to_str): Likewise.
1992         (iterate_over_mappings): Likewise.
1993
1994         * procfs.c (create_procinfo): Fix ARI warning.
1995         (proc_get_status): Likewise.
1996         (proc_stop_process): Likewise.
1997         (proc_run_process): Likewise.
1998         (proc_kill): Likewise.
1999         (proc_get_LDT_entry): Likewise.
2000         (procfs_find_LDT_entry): Likewise.
2001         (proc_update_threads): Likewise.
2002         (proc_iterate_over_threads): Likewise.
2003         (do_attach): Likewise.
2004         (procfs_xfer_memory): Likewise.
2005         (invalidate_cache): Likewise.
2006         (procfs_target::resume): Likewise.
2007         (procfs_init_inferior): Likewise.
2008         (procfs_set_exec_trap): Likewise.
2009         (procfs_target::thread_alive): Likewise.
2010         (procfs_target::pid_to_exec_file): Likewise.
2011         (iterate_over_mappings): Likewise.
2012         (procfs_target::make_corefile_notes): Likewise.
2013         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2014
2015         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2016         (procfs_find_LDT_entry): Likewise.
2017         * sol-thread.c (ps_lgetLDT): Likewise.
2018
2019 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2020
2021         PR tdep/17903
2022         * procfs.c (procfs_target): Declare pid_to_exec_file.
2023         (procfs_target::pid_to_exec_file): New.
2024
2025 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2026
2027         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2028         renaming.
2029         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2030         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2031
2032 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2033
2034         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2035         (supply_fpregset, fill_fpregset): Move ...
2036         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2037         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2038         Remove references to ioctl-based procfs.
2039         Include <sys/reg.h>.
2040         Remove PR_MODEL_NATIVE guards.
2041         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2042         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2043
2044 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2045
2046         PR gdb/20981:
2047         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2048         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2049         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2050
2051 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2052
2053         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2054         (fbsd_print_sockaddr_in6): Likewise.
2055
2056 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2057             Chris January  <chris.january@arm.com>
2058
2059         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2060         (evaluate_subexp_standard): Return a dummy type when
2061         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2062         OP_F77_UNDETERMINED_ARGLIST case.
2063         * expression.h (enum noside): Update comment.
2064
2065 2018-09-19  George Vasick <george.vasick@oracle.com>
2066
2067         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2068
2069 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2070             April Chin <april.chin@oracle.com>
2071             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2072
2073         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2074         uint_t lwpid_t.
2075         (create_procinfo): Print pids in /proc without leading zeros.
2076
2077 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2078
2079         * nios2-tdep.c (nios2_gcc_target_options): New.
2080         (nios2_gdb_arch_init): Install new hook.
2081
2082 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2083
2084         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2085         New file.
2086         * update-gnulib.sh: Apply patch.
2087         * configure: Re-generate.
2088
2089 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2090
2091         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2092         description.  Make "info proc" command descriptions more
2093         consistent.
2094
2095 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2096
2097         * NEWS: Mention 'info proc files' command.
2098
2099 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2100
2101         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2102         descriptors for IP_FILES and IP_ALL.
2103
2104 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2105
2106         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2107         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2108         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2109         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2110         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2111         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2112         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2113         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2114         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2115         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2116         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2117         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2118         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2119         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2120         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2121         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2122         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2123         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2124         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2125         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2126         (struct fbsd_sockaddr_un): New types.
2127         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2128         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2129         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2130         (fbsd_core_info_proc_files): New functions.
2131         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2132         IP_ALL.
2133         * fbsd-tdep.h (fbsd_info_proc_files_header)
2134         (fbsd_info_proc_files_entry): New.
2135
2136 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2137
2138         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2139         * infcmd.c (info_proc_cmd_files): New function.
2140         (_initialize_infcmd): Register 'info proc files' command.
2141
2142 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2143
2144         * gnulib/aclocal-m4-deps.mk: Re-generate.
2145         * gnulib/aclocal.m4: Re-generate.
2146         * gnulib/config.in: Re-generate.
2147         * gnulib/configure: Re-generate.
2148         * gnulib/import/Makefile.am: Re-generate.
2149         * gnulib/import/Makefile.in: Re-generate.
2150         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2151         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2152         * gnulib/import/arpa_inet.in.h: New file.
2153         * gnulib/import/inet_ntop.c: New file.
2154         * gnulib/import/m4/arpa_inet_h.m4: New file.
2155         * gnulib/import/m4/inet_ntop.m4: New file.
2156         * gnulib/import/m4/netinet_in_h.m4: New file.
2157         * gnulib/import/m4/socklen.m4: New file.
2158         * gnulib/import/m4/sockpfaf.m4: New file.
2159         * gnulib/import/m4/stdalign.m4: New file.
2160         * gnulib/import/m4/sys_uio_h.m4: New file.
2161         * gnulib/import/netinet_in.in.h: New file.
2162         * gnulib/import/stdalign.in.h: New file.
2163         * gnulib/import/sys_socket.c: New file.
2164         * gnulib/import/sys_socket.in.h: New file.
2165         * gnulib/import/sys_uio.in.h: New file.
2166         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2167         module.
2168
2169 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2170
2171         * gnulib/aclocal-m4-deps.mk: New file.
2172         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2173         deterministically.
2174
2175 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2176
2177         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2178         KVE_PATH.
2179
2180 2018-09-18  Tom Tromey  <tom@tromey.com>
2181
2182         * compile/compile-object-load.c (struct
2183         link_hash_table_cleanup_data): Add constructor and destructor.
2184         Use DISABLE_COPY_AND_ASSIGN.
2185         (~link_hash_table_cleanup_data): Rename from
2186         link_hash_table_free.  Now a destructor.
2187         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2188
2189 2018-09-18  Tom Tromey  <tom@tromey.com>
2190
2191         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2192         * compile/compile-object-load.c (struct munmap_list): Move to
2193         header file.
2194         (munmap_list::add): Rename from munmap_list_add; rewrite.
2195         (munmap_list::~munmap_list): Rename from munmap_list_free.
2196         (munmap_listp_free_cleanup): Remove.
2197         (compile_object_load): Update.
2198         * compile/compile-object-load.h (struct munmap_list): Move from
2199         compile-object-load.c.  Rewrite.
2200
2201 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2202
2203         * aarch64-tdep.c (pass_in_v): Use register size.
2204         (aarch64_extract_return_value): Likewise.
2205         (aarch64_store_return_value): Likewise.
2206
2207 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2208
2209         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2210         rlim_t.
2211
2212 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2213
2214         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2215         Fix short help line.
2216
2217 2018-09-17  Tom Tromey  <tom@tromey.com>
2218
2219         PR python/20445:
2220         * configure: Rebuild.
2221         * configure.ac: Conditionally use -DNDEBUG for Python.
2222
2223 2018-09-17  Tom Tromey  <tom@tromey.com>
2224
2225         * configure: Rebuild.
2226         * configure.ac: Use gmp as a library dependency when checking for
2227         mpfr.
2228
2229 2018-09-17  Pedro Alves  <palves@redhat.com>
2230
2231         * python/py-inferior.c (find_inferior_object): Delete.
2232
2233 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2234
2235         * compile/compile-cplus-types.c
2236         (compile_cplus_instance::enter_scope): Don't use new_scope after
2237         std::move.
2238
2239 2018-09-17  Tom Tromey  <tom@tromey.com>
2240
2241         * common/pathstuff.c (get_standard_cache_dir): Use
2242         ~/Library/Caches on macOS.
2243         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2244
2245 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2246
2247         PR python/23669
2248         * breakpoint.c (commands_cmd_element): New.
2249         (_initialize_breakpoint): Assign commands_cmd_element.
2250         * breakpoint.h (commands_cmd_element): New.
2251         * cli/cli-script.c (while_cmd_element, if_command,
2252         define_cmd_element): New.
2253         (command_name_equals): Remove.
2254         (process_next_line): Compare commands by pointer, not by name.
2255         (_initialize_cli_script): Assign the various cmd_list_element
2256         variables.
2257         * compile/compile.c (compile_cmd_element): New.
2258         (_initialize_compile): Assign compile_cmd_element.
2259         * compile/compile.h (compile_cmd_element): New.
2260         * guile/guile.c (guile_cmd_element): New.
2261         (install_gdb_commands): Assign guile_cmd_element.
2262         * guile/guile.h (guile_cmd_element): New.
2263         * python/python.c (python_cmd_element): New.
2264         (_initialize_python): Assign python_cmd_element.
2265         * python/python.h (python_cmd_element): New.
2266         * tracepoint.c (while_stepping_cmd_element): New.
2267         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2268         * tracepoint.h (while_stepping_cmd_element): New.
2269
2270 2018-09-17  Tom Tromey  <tom@tromey.com>
2271
2272         * infrun.c (save_infcall_suspend_state): Return
2273         infcall_suspend_state_up.
2274         (save_infcall_control_state): Return infcall_control_state_up.
2275         * inferior.h (save_infcall_suspend_state)
2276         (save_infcall_control_state): Declare later.  Return unique
2277         pointers.
2278
2279 2018-09-17  Tom Tromey  <tom@tromey.com>
2280
2281         * infrun.c (struct stop_context): Declare constructor,
2282         destructor, "changed" method.
2283         (stop_context::stop_context): Rename from save_stop_context.
2284         (stop_context::~stop_context): Rename from
2285         release_stop_context_cleanup.
2286         (normal_stop): Update.
2287         (stop_context::changed): Rename from stop_context_changed.  Return
2288         bool.
2289
2290 2018-09-17  Tom Tromey  <tom@tromey.com>
2291
2292         * inferior.h (struct infcall_suspend_state_deleter): New.
2293         (infcall_suspend_state_up): New typedef.
2294         (struct infcall_control_state_deleter): New.
2295         (infcall_control_state_up): New typedef.
2296         (make_cleanup_restore_infcall_suspend_state)
2297         (make_cleanup_restore_infcall_control_state): Don't declare.
2298         * infcall.c (call_function_by_hand_dummy): Update.
2299         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2300         (make_cleanup_restore_infcall_suspend_state): Remove.
2301         (do_restore_infcall_control_state_cleanup)
2302         (make_cleanup_restore_infcall_control_state): Remove.
2303
2304 2018-09-17  Tom Tromey  <tom@tromey.com>
2305
2306         * gdbthread.h (struct thread_control_state): Add initializer.
2307         (class thread_info) <control>: Remove initializer.
2308         * inferior.h (struct inferior_control_state): Add initializer.
2309         (class inferior) <control>: Remove initializer.
2310         (exit_inferior_1): Update.
2311         * infrun.c (struct infcall_control_state): Add constructors.
2312         (save_infcall_control_state): Use new.
2313         (restore_infcall_control_state, discard_infcall_control_state):
2314         Use delete.
2315
2316 2018-09-17  Tom Tromey  <tom@tromey.com>
2317
2318         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2319         unique_ptr.
2320         <siginfo_data>: Now a unique_xmalloc_ptr.
2321         (save_infcall_suspend_state, restore_infcall_suspend_state)
2322         (discard_infcall_suspend_state)
2323         (get_infcall_suspend_state_regcache): Update.
2324
2325 2018-09-17  Tom Tromey  <tom@tromey.com>
2326
2327         * gdbthread.h (struct thread_suspend_state): Add initializers.
2328         (class thread_info) <suspend>: Remove initializer.
2329         * infrun.c (struct infcall_suspend_state): Add initializers.
2330         (save_infcall_suspend_state): Use new.
2331         (discard_infcall_suspend_state): Use delete.
2332
2333 2018-09-16  Tom Tromey  <tom@tromey.com>
2334
2335         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2336         Remove.
2337         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2338         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2339         (py_varobj_iter_new): Likewise.
2340         (py_varobj_get_iterator): Use gdbpy_ref.
2341
2342 2018-09-16  Tom Tromey  <tom@tromey.com>
2343
2344         * python/py-threadevent.c (py_get_event_thread): Simplify.
2345         * python/py-inferior.c (infpy_thread_from_thread_handle):
2346         Return immediately after calling thread_to_thread_object.  Use
2347         Py_RETURN_NONE.
2348         (thread_to_thread_object): Set the exception on a NULL return.
2349
2350 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2351
2352         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2353
2354 2018-09-16  Tom Tromey  <tom@tromey.com>
2355
2356         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2357         Remove.
2358
2359 2018-09-16  Tom Tromey  <tom@tromey.com>
2360
2361         * python/python-internal.h (thread_to_thread_object): Change
2362         return type.
2363         * python/py-inferior.c (thread_to_thread_object): Return a new
2364         reference.
2365         (infpy_thread_from_thread_handle): Update.
2366         * python/py-infthread.c (gdbpy_selected_thread): Update.
2367         * python/py-stopevent.c (create_stop_event_object): Update.
2368         * python/py-threadevent.c (py_get_event_thread): Return a new
2369         reference.
2370         (py_get_event_thread): Update.
2371         * python/py-event.h (py_get_event_thread): Change return type.
2372         * python/py-continueevent.c (create_continue_event_object):
2373         Update.
2374
2375 2018-09-16  Tom Tromey  <tom@tromey.com>
2376
2377         * python/py-progspace.c (pspy_get_objfiles): Update.
2378         * python/python-internal.h (objfile_to_objfile_object): Change
2379         return type.
2380         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2381         Update.
2382         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2383         Update.
2384         * python/python.c (gdbpy_get_current_objfile): Update.
2385         (gdbpy_objfiles): Update.
2386         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2387         Update.
2388         (objfile_to_objfile_object): Return a new reference.
2389         * python/py-symtab.c (stpy_get_objfile): Update.
2390         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2391         Update.
2392
2393 2018-09-16  Tom Tromey  <tom@tromey.com>
2394
2395         * python/py-inferior.c (infpy_get_progspace): Update.
2396         * python/python-internal.h (pspace_to_pspace_object): Change
2397         return type.
2398         * python/py-newobjfileevent.c
2399         (create_clear_objfiles_event_object): Update.
2400         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2401         Update.
2402         * python/python.c (gdbpy_get_current_progspace): Update.
2403         (gdbpy_progspaces): Update.
2404         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2405         reference.
2406         * python/py-objfile.c (objfpy_get_progspace): Update.
2407         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2408         Update.
2409
2410 2018-09-16  Tom Tromey  <tom@tromey.com>
2411
2412         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2413         (solib_name, block_for_pc, find_pc_line): New functions.
2414         (execute_unwinders): Update.
2415         * python/py-block.c (gdbpy_block_for_pc): Remove.
2416         * python/py-inferior.c (infpy_get_progspace): New function.
2417         (inferior_object_getset) <progspace>: Add.
2418         * python/py-progspace.c (pspy_objfiles): Rewrite.
2419         (pspy_solib_name, pspy_block_for_pc)
2420         (pspy_find_pc_line, pspy_is_valid): New functions.
2421         (progspace_object_methods): Add entries for solib_name,
2422         block_for_pc, find_pc_line, is_valid.
2423         * python/python-internal.h (gdbpy_block_for_pc)
2424         (build_objfiles_list): Don't declare.
2425         * python/python.c: Don't include solib.h.
2426         (gdbpy_solib_name, gdbpy_find_pc_line)
2427         (gdbpy_get_current_progspace, build_objfiles_list)
2428         (gdbpy_objfiles): Remove.
2429         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2430         solib_name, find_pc_line>: Remove entries.
2431
2432 2018-09-16  Tom Tromey  <tom@tromey.com>
2433
2434         * top.c (new_ui_command): Use GNU style for metasyntactic
2435         variables.
2436         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2437         variables.
2438         * maint.c (maintenance_translate_address): Remove "<>" around
2439         text.
2440         * interps.c (interpreter_exec_cmd): Use GNU style for
2441         metasyntactic variables.
2442         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2443         metasyntactic variables.
2444         * tracepoint.c (tfind_range_command): Use GNU style for
2445         metasyntactic variables.
2446         (tfind_outside_command): Likewise.
2447         (_initialize_tracepoint): Likewise.
2448         * remote.c (extended_remote_target::create_inferior): Use GNU
2449         style for metasyntactic variables.
2450         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2451         metasyntactic variables.
2452         (adi_assign_command): Likewise.
2453
2454 2018-09-16  Tom Tromey  <tom@tromey.com>
2455
2456         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2457         metasyntactic variables.  Print message if no disassembler options
2458         are available.
2459
2460 2018-09-15  Tom Tromey  <tom@tromey.com>
2461
2462         * infcmd.c (get_inferior_args): Return const char *.
2463         * inferior.h (get_inferior_args): Return type now const.
2464         * linux-tdep.c (linux_fill_prpsinfo): Update.
2465         * procfs.c (procfs_target::make_corefile_notes): Update.
2466
2467 2018-09-07  Tom Tromey  <tom@tromey.com>
2468
2469         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2470         inside the TRY.
2471
2472 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2473
2474         * nios2-tdep.c (nios2_type_align): New.
2475         (nios2_gdb_arch_init): Install type_align hook.
2476
2477 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2478
2479         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2480         type that is neither object file owned, nor gdbarch owned.
2481         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2482         gdbarch is non-NULL.
2483         (alloc_type_instance): Allocate non-objfile owned types on the
2484         gdbarch obstack.
2485         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2486         using TYPE_ALLOC to ensure memory is allocated on the correct
2487         obstack.
2488         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2489         obstack, or the gdbarch obstack.
2490         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2491
2492 2018-09-14  Tom Tromey  <tom@tromey.com>
2493
2494         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2495         block.
2496
2497 2018-09-14  Tom Tromey  <tom@tromey.com>
2498
2499         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2500
2501 2018-09-13  Tom Tromey  <tom@tromey.com>
2502
2503         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2504         static.
2505
2506 2018-09-13  Tom Tromey  <tom@tromey.com>
2507
2508         * exec.c (try_open_exec_file): Use std::string.
2509
2510 2018-09-13  Tom Tromey  <tom@tromey.com>
2511
2512         * utils.h (gdb_bfd_errmsg): Return std::string.
2513         * exec.c (exec_file_attach): Update.
2514         * compile/compile-object-load.c (compile_object_load): Update.
2515         * utils.c (gdb_bfd_errmsg): Return std::string.
2516
2517 2018-09-13  Tom Tromey  <tom@tromey.com>
2518
2519         * procfs.c (struct procinfo_deleter): New.
2520         (procinfo_up): New typedef.
2521         (do_destroy_procinfo_cleanup): Remove.
2522         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2523
2524 2018-09-13  Tom Tromey  <tom@tromey.com>
2525
2526         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2527
2528 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2529 2018-09-13  Tom Tromey  <tom@tromey.com>
2530
2531         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2532         (pspy_get_objfiles): New function.
2533         (progspace_object_methods): New.
2534         (pspace_object_type): Add tp_methods callback.
2535         * python/python-internal.h (build_objfiles_list): New
2536         declaration.
2537         * python/python.c (build_objfiles_list): New function.
2538         (gdbpy_objfiles): Implement using build_objfiles_list.
2539         * NEWS: Mention the Progspace.objfiles method.
2540
2541 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2542
2543         * python/py-inferior.c (infpy_get_progspace): New function.
2544         (inferior_object_getset): Add progspace property.
2545         * NEWS: Mention the new property.
2546
2547 2018-09-13  Tom Tromey  <tom@tromey.com>
2548
2549         PR rust/23650:
2550         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2551
2552 2018-09-13  Tom Tromey  <tom@tromey.com>
2553
2554         PR rust/23626:
2555         * rust-lang.c (rust_enum_variant): Now static.
2556         (rust_empty_enum_p): New function.
2557         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2558         Handle empty enum.
2559
2560 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2561
2562         * python/py-inferior.c (infpy_repr): New.
2563         (inferior_object_type): Register infpy_repr.
2564         * python/py-objfile.c (objfpy_repr): New.
2565         (objfile_object_type): Register objfpy_repr.
2566
2567 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2568
2569         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2570
2571 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2572
2573         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2574         typo.
2575
2576 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2577
2578         * common/common-utils.c: Don't include '<sys/stat.h>'.
2579         (is_regular_file): Move to...
2580         * common/filestuff.c (is_regular_file): ... here.
2581         * common/common-utils.h (is_regular_file): Move to...
2582         * common/filestuff.h (is_regular_file): ... here.
2583
2584 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2585
2586         * skip.c (debug_skip): New variable.
2587         (skiplist_entry::do_skip_file_p): Add debug output.
2588         (skiplist_entry::do_skip_gfile_p): Likewise.
2589         (skiplist_entry::skip_function_p): Likewise.
2590         (_initialize_step_skip): Create debug command.
2591         * NEWS: Mention set/show debug skip.
2592
2593 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2594
2595         * darwin-nat.c (should_disable_startup_with_shell):
2596         New function.
2597         (darwin_nat_target::create_inferior): Add call.
2598
2599 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2600
2601         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2602         inf_port, msg_state>: Initialize.
2603         (struct darwin_thread_info) <signaled, single_step>: Change
2604         type and initialize.
2605         (struct darwin_thread_info) <event>: Initialize.
2606
2607 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2608
2609         PR gdb/23555
2610         PR gdb/23558
2611         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2612         guesses.
2613
2614 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2615
2616         Revert:
2617         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2618
2619         PR gdb/23555
2620         PR gdb/23558
2621         * gnulib/aclocal.m4: Regenerate.
2622         * gnulib/config.in: Regenerate.
2623         * gnulib/configure: Regenerate.
2624         * gnulib/import/Makefile.am: Update.
2625         * gnulib/import/Makefile.in: Update.
2626         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2627         * gnulib/import/_Noreturn.h: ... this.
2628         * gnulib/import/alloca.in.h: Update.
2629         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2630         * gnulib/import/arg-nonnull.h: ... this.
2631         * gnulib/import/assure.h: Update.
2632         * gnulib/import/at-func.c: Update.
2633         * gnulib/import/basename-lgpl.c: Update.
2634         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2635         * gnulib/import/c++defs.h: ... this.
2636         * gnulib/import/canonicalize-lgpl.c: Update.
2637         * gnulib/import/cdefs.h: Update.
2638         * gnulib/import/chdir-long.c: Update.
2639         * gnulib/import/chdir-long.h: Update.
2640         * gnulib/import/cloexec.c: Update.
2641         * gnulib/import/cloexec.h: Update.
2642         * gnulib/import/close.c: Update.
2643         * gnulib/import/closedir.c: Update.
2644         * gnulib/import/config.charset: Update.
2645         * gnulib/import/dirent-private.h: Update.
2646         * gnulib/import/dirent.in.h: Update.
2647         * gnulib/import/dirfd.c: Update.
2648         * gnulib/import/dirname-lgpl.c: Update.
2649         * gnulib/import/dirname.h: Update.
2650         * gnulib/import/dosname.h: Update.
2651         * gnulib/import/dup-safer-flag.c: Update.
2652         * gnulib/import/dup-safer.c: Update.
2653         * gnulib/import/dup.c: Update.
2654         * gnulib/import/dup2.c: Update.
2655         * gnulib/import/errno.in.h: Update.
2656         * gnulib/import/error.c: Update.
2657         * gnulib/import/error.h: Update.
2658         * gnulib/import/exitfail.c: Update.
2659         * gnulib/import/exitfail.h: Update.
2660         * gnulib/import/extra/update-copyright: Update.
2661         * gnulib/import/fchdir.c: Update.
2662         * gnulib/import/fcntl.c: Update.
2663         * gnulib/import/fcntl.in.h: Update.
2664         * gnulib/import/fd-hook.c: Update.
2665         * gnulib/import/fd-hook.h: Update.
2666         * gnulib/import/fd-safer-flag.c: Update.
2667         * gnulib/import/fd-safer.c: Update.
2668         * gnulib/import/fdopendir.c: Update.
2669         * gnulib/import/filename.h: Update.
2670         * gnulib/import/filenamecat-lgpl.c: Update.
2671         * gnulib/import/filenamecat.h: Update.
2672         * gnulib/import/flexmember.h: Update.
2673         * gnulib/import/float+.h: Update.
2674         * gnulib/import/float.c: Update.
2675         * gnulib/import/float.in.h: Update.
2676         * gnulib/import/fnmatch.c: Update.
2677         * gnulib/import/fnmatch.in.h: Update.
2678         * gnulib/import/fnmatch_loop.c: Update.
2679         * gnulib/import/fpucw.h: Update.
2680         * gnulib/import/frexp.c: Update.
2681         * gnulib/import/frexpl.c: Update.
2682         * gnulib/import/fstat.c: Update.
2683         * gnulib/import/fstatat.c: Update.
2684         * gnulib/import/getcwd-lgpl.c: Update.
2685         * gnulib/import/getcwd.c: Update.
2686         * gnulib/import/getdtablesize.c: Update.
2687         * gnulib/import/getlogin_r.c: Update.
2688         * gnulib/import/getprogname.c: Update.
2689         * gnulib/import/getprogname.h: Update.
2690         * gnulib/import/gettext.h: Update.
2691         * gnulib/import/gettimeofday.c: Update.
2692         * gnulib/import/glob-libc.h: Update.
2693         * gnulib/import/glob.c: Update.
2694         * gnulib/import/glob.in.h: Update.
2695         * gnulib/import/glob_internal.h: Update.
2696         * gnulib/import/glob_pattern_p.c: Update.
2697         * gnulib/import/globfree.c: Update.
2698         * gnulib/import/hard-locale.c: Update.
2699         * gnulib/import/hard-locale.h: Update.
2700         * gnulib/import/intprops.h: Update.
2701         * gnulib/import/inttypes.in.h: Update.
2702         * gnulib/import/isnan.c: Update.
2703         * gnulib/import/isnand-nolibm.h: Update.
2704         * gnulib/import/isnand.c: Update.
2705         * gnulib/import/isnanl-nolibm.h: Update.
2706         * gnulib/import/isnanl.c: Update.
2707         * gnulib/import/itold.c: Update.
2708         * gnulib/import/libc-config.h: Update.
2709         * gnulib/import/limits.in.h: Update.
2710         * gnulib/import/localcharset.c: Update.
2711         * gnulib/import/localcharset.h: Update.
2712         * gnulib/import/localtime-buffer.c: Update.
2713         * gnulib/import/localtime-buffer.h: Update.
2714         * gnulib/import/lstat.c: Update.
2715         * gnulib/import/m4/00gnulib.m4: Update.
2716         * gnulib/import/m4/__inline.m4: Update.
2717         * gnulib/import/m4/absolute-header.m4: Update.
2718         * gnulib/import/m4/alloca.m4: Update.
2719         * gnulib/import/m4/builtin-expect.m4: Update.
2720         * gnulib/import/m4/canonicalize.m4: Update.
2721         * gnulib/import/m4/chdir-long.m4: Update.
2722         * gnulib/import/m4/close.m4: Update.
2723         * gnulib/import/m4/closedir.m4: Update.
2724         * gnulib/import/m4/configmake.m4: Update.
2725         * gnulib/import/m4/d-ino.m4: Update.
2726         * gnulib/import/m4/d-type.m4: Update.
2727         * gnulib/import/m4/dirent_h.m4: Update.
2728         * gnulib/import/m4/dirfd.m4: Update.
2729         * gnulib/import/m4/dirname.m4: Update.
2730         * gnulib/import/m4/double-slash-root.m4: Update.
2731         * gnulib/import/m4/dup.m4: Update.
2732         * gnulib/import/m4/dup2.m4: Update.
2733         * gnulib/import/m4/eealloc.m4: Update.
2734         * gnulib/import/m4/environ.m4: Update.
2735         * gnulib/import/m4/errno_h.m4: Update.
2736         * gnulib/import/m4/error.m4: Update.
2737         * gnulib/import/m4/exponentd.m4: Update.
2738         * gnulib/import/m4/exponentl.m4: Update.
2739         * gnulib/import/m4/extensions.m4: Update.
2740         * gnulib/import/m4/extern-inline.m4: Update.
2741         * gnulib/import/m4/fchdir.m4: Update.
2742         * gnulib/import/m4/fcntl-o.m4: Update.
2743         * gnulib/import/m4/fcntl.m4: Update.
2744         * gnulib/import/m4/fcntl_h.m4: Update.
2745         * gnulib/import/m4/fdopendir.m4: Update.
2746         * gnulib/import/m4/filenamecat.m4: Update.
2747         * gnulib/import/m4/flexmember.m4: Update.
2748         * gnulib/import/m4/float_h.m4: Update.
2749         * gnulib/import/m4/fnmatch.m4: Update.
2750         * gnulib/import/m4/fnmatch_h.m4: Update.
2751         * gnulib/import/m4/fpieee.m4: Update.
2752         * gnulib/import/m4/frexp.m4: Update.
2753         * gnulib/import/m4/frexpl.m4: Update.
2754         * gnulib/import/m4/fstat.m4: Update.
2755         * gnulib/import/m4/fstatat.m4: Update.
2756         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2757         * gnulib/import/m4/getcwd-path-max.m4: Update.
2758         * gnulib/import/m4/getcwd.m4: Update.
2759         * gnulib/import/m4/getdtablesize.m4: Update.
2760         * gnulib/import/m4/getlogin.m4: Update.
2761         * gnulib/import/m4/getlogin_r.m4: Update.
2762         * gnulib/import/m4/getpagesize.m4: Update.
2763         * gnulib/import/m4/getprogname.m4: Update.
2764         * gnulib/import/m4/gettimeofday.m4: Update.
2765         * gnulib/import/m4/glibc21.m4: Update.
2766         * gnulib/import/m4/glob.m4: Update.
2767         * gnulib/import/m4/glob_h.m4: Update.
2768         * gnulib/import/m4/gnulib-cache.m4: Update.
2769         * gnulib/import/m4/gnulib-common.m4: Update.
2770         * gnulib/import/m4/gnulib-comp.m4: Update.
2771         * gnulib/import/m4/gnulib-tool.m4: Update.
2772         * gnulib/import/m4/hard-locale.m4: Update.
2773         * gnulib/import/m4/include_next.m4: Update.
2774         * gnulib/import/m4/inttypes-pri.m4: Update.
2775         * gnulib/import/m4/inttypes.m4: Update.
2776         * gnulib/import/m4/isnand.m4: Update.
2777         * gnulib/import/m4/isnanl.m4: Update.
2778         * gnulib/import/m4/largefile.m4: Update.
2779         * gnulib/import/m4/limits-h.m4: Update.
2780         * gnulib/import/m4/localcharset.m4: Update.
2781         * gnulib/import/m4/locale-fr.m4: Update.
2782         * gnulib/import/m4/locale-ja.m4: Update.
2783         * gnulib/import/m4/locale-zh.m4: Update.
2784         * gnulib/import/m4/localtime-buffer.m4: Update.
2785         * gnulib/import/m4/longlong.m4: Update.
2786         * gnulib/import/m4/lstat.m4: Update.
2787         * gnulib/import/m4/malloc.m4: Update.
2788         * gnulib/import/m4/malloca.m4: Update.
2789         * gnulib/import/m4/math_h.m4: Update.
2790         * gnulib/import/m4/mbrtowc.m4: Update.
2791         * gnulib/import/m4/mbsinit.m4: Update.
2792         * gnulib/import/m4/mbsrtowcs.m4: Update.
2793         * gnulib/import/m4/mbstate_t.m4: Update.
2794         * gnulib/import/m4/memchr.m4: Update.
2795         * gnulib/import/m4/memmem.m4: Update.
2796         * gnulib/import/m4/mempcpy.m4: Update.
2797         * gnulib/import/m4/memrchr.m4: Update.
2798         * gnulib/import/m4/mkdir.m4: Update.
2799         * gnulib/import/m4/mkstemp.m4: Update.
2800         * gnulib/import/m4/mmap-anon.m4: Update.
2801         * gnulib/import/m4/mode_t.m4: Update.
2802         * gnulib/import/m4/msvc-inval.m4: Update.
2803         * gnulib/import/m4/msvc-nothrow.m4: Update.
2804         * gnulib/import/m4/multiarch.m4: Update.
2805         * gnulib/import/m4/nocrash.m4: Update.
2806         * gnulib/import/m4/off_t.m4: Update.
2807         * gnulib/import/m4/onceonly.m4: Update.
2808         * gnulib/import/m4/open-cloexec.m4: Update.
2809         * gnulib/import/m4/open.m4: Update.
2810         * gnulib/import/m4/openat.m4: Update.
2811         * gnulib/import/m4/opendir.m4: Update.
2812         * gnulib/import/m4/pathmax.m4: Update.
2813         * gnulib/import/m4/rawmemchr.m4: Update.
2814         * gnulib/import/m4/readdir.m4: Update.
2815         * gnulib/import/m4/readlink.m4: Update.
2816         * gnulib/import/m4/realloc.m4: Update.
2817         * gnulib/import/m4/rename.m4: Update.
2818         * gnulib/import/m4/rewinddir.m4: Update.
2819         * gnulib/import/m4/rmdir.m4: Update.
2820         * gnulib/import/m4/save-cwd.m4: Update.
2821         * gnulib/import/m4/secure_getenv.m4: Update.
2822         * gnulib/import/m4/setenv.m4: Update.
2823         * gnulib/import/m4/signal_h.m4: Update.
2824         * gnulib/import/m4/ssize_t.m4: Update.
2825         * gnulib/import/m4/stat-time.m4: Update.
2826         * gnulib/import/m4/stat.m4: Update.
2827         * gnulib/import/m4/std-gnu11.m4: Update.
2828         * gnulib/import/m4/stdbool.m4: Update.
2829         * gnulib/import/m4/stddef_h.m4: Update.
2830         * gnulib/import/m4/stdint.m4: Update.
2831         * gnulib/import/m4/stdio_h.m4: Update.
2832         * gnulib/import/m4/stdlib_h.m4: Update.
2833         * gnulib/import/m4/strchrnul.m4: Update.
2834         * gnulib/import/m4/strdup.m4: Update.
2835         * gnulib/import/m4/strerror.m4: Update.
2836         * gnulib/import/m4/string_h.m4: Update.
2837         * gnulib/import/m4/strstr.m4: Update.
2838         * gnulib/import/m4/strtok_r.m4: Update.
2839         * gnulib/import/m4/sys_socket_h.m4: Update.
2840         * gnulib/import/m4/sys_stat_h.m4: Update.
2841         * gnulib/import/m4/sys_time_h.m4: Update.
2842         * gnulib/import/m4/sys_types_h.m4: Update.
2843         * gnulib/import/m4/tempname.m4: Update.
2844         * gnulib/import/m4/time_h.m4: Update.
2845         * gnulib/import/m4/unistd-safer.m4: Update.
2846         * gnulib/import/m4/unistd_h.m4: Update.
2847         * gnulib/import/m4/warn-on-use.m4: Update.
2848         * gnulib/import/m4/wchar_h.m4: Update.
2849         * gnulib/import/m4/wchar_t.m4: Update.
2850         * gnulib/import/m4/wctype_h.m4: Update.
2851         * gnulib/import/m4/wint_t.m4: Update.
2852         * gnulib/import/malloc.c: Update.
2853         * gnulib/import/malloc/scratch_buffer.h: Update.
2854         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2855         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2856         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2857         * gnulib/import/malloca.c: Update.
2858         * gnulib/import/malloca.h: Update.
2859         * gnulib/import/malloca.valgrind: Update.
2860         * gnulib/import/math.in.h: Update.
2861         * gnulib/import/mbrtowc.c: Update.
2862         * gnulib/import/mbsinit.c: Update.
2863         * gnulib/import/mbsrtowcs-impl.h: Update.
2864         * gnulib/import/mbsrtowcs-state.c: Update.
2865         * gnulib/import/mbsrtowcs.c: Update.
2866         * gnulib/import/memchr.c: Update.
2867         * gnulib/import/memmem.c: Update.
2868         * gnulib/import/mempcpy.c: Update.
2869         * gnulib/import/memrchr.c: Update.
2870         * gnulib/import/mkdir.c: Update.
2871         * gnulib/import/mkstemp.c: Update.
2872         * gnulib/import/msvc-inval.c: Update.
2873         * gnulib/import/msvc-inval.h: Update.
2874         * gnulib/import/msvc-nothrow.c: Update.
2875         * gnulib/import/msvc-nothrow.h: Update.
2876         * gnulib/import/open.c: Update.
2877         * gnulib/import/openat-die.c: Update.
2878         * gnulib/import/openat-priv.h: Update.
2879         * gnulib/import/openat-proc.c: Update.
2880         * gnulib/import/openat.c: Update.
2881         * gnulib/import/openat.h: Update.
2882         * gnulib/import/opendir.c: Update.
2883         * gnulib/import/pathmax.h: Update.
2884         * gnulib/import/pipe-safer.c: Update.
2885         * gnulib/import/rawmemchr.c: Update.
2886         * gnulib/import/readdir.c: Update.
2887         * gnulib/import/readlink.c: Update.
2888         * gnulib/import/realloc.c: Update.
2889         * gnulib/import/ref-add.sin: Update.
2890         * gnulib/import/ref-del.sin: Update.
2891         * gnulib/import/rename.c: Update.
2892         * gnulib/import/rewinddir.c: Update.
2893         * gnulib/import/rmdir.c: Update.
2894         * gnulib/import/same-inode.h: Update.
2895         * gnulib/import/save-cwd.c: Update.
2896         * gnulib/import/save-cwd.h: Update.
2897         * gnulib/import/scratch_buffer.h: Update.
2898         * gnulib/import/secure_getenv.c: Update.
2899         * gnulib/import/setenv.c: Update.
2900         * gnulib/import/signal.in.h: Update.
2901         * gnulib/import/stat-time.c: Update.
2902         * gnulib/import/stat-time.h: Update.
2903         * gnulib/import/stat-w32.c: Update.
2904         * gnulib/import/stat-w32.h: Update.
2905         * gnulib/import/stat.c: Update.
2906         * gnulib/import/stdbool.in.h: Update.
2907         * gnulib/import/stddef.in.h: Update.
2908         * gnulib/import/stdint.in.h: Update.
2909         * gnulib/import/stdio.in.h: Update.
2910         * gnulib/import/stdlib.in.h: Update.
2911         * gnulib/import/str-two-way.h: Update.
2912         * gnulib/import/strchrnul.c: Update.
2913         * gnulib/import/strdup.c: Update.
2914         * gnulib/import/streq.h: Update.
2915         * gnulib/import/strerror-override.c: Update.
2916         * gnulib/import/strerror-override.h: Update.
2917         * gnulib/import/strerror.c: Update.
2918         * gnulib/import/string.in.h: Update.
2919         * gnulib/import/stripslash.c: Update.
2920         * gnulib/import/strnlen1.c: Update.
2921         * gnulib/import/strnlen1.h: Update.
2922         * gnulib/import/strstr.c: Update.
2923         * gnulib/import/strtok_r.c: Update.
2924         * gnulib/import/sys_stat.in.h: Update.
2925         * gnulib/import/sys_time.in.h: Update.
2926         * gnulib/import/sys_types.in.h: Update.
2927         * gnulib/import/tempname.c: Update.
2928         * gnulib/import/tempname.h: Update.
2929         * gnulib/import/time.in.h: Update.
2930         * gnulib/import/unistd--.h: Update.
2931         * gnulib/import/unistd-safer.h: Update.
2932         * gnulib/import/unistd.in.h: Update.
2933         * gnulib/import/unsetenv.c: Update.
2934         * gnulib/import/verify.h: Update.
2935         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2936         * gnulib/import/wchar.in.h: Update.
2937         * gnulib/import/wctype.in.h: Update.
2938         * gnulib/import/xalloc-oversized.h: Update.
2939         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2940         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2941
2942 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2943
2944         * record-btrace.c (get_thread_current_frame): Remove
2945         old_inferior_ptid.
2946
2947 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2948
2949         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2950         with check_tag to 1 if and only if the type is tagged and the
2951         component being searched cannot been found in the current
2952         view. Otherwise, always call ada_to_fixed_type with
2953         check_tag to 0.
2954
2955 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2956
2957         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2958         declaration.
2959         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2960         * ada-varobj.c (ada_varobj_get_number_of_children,
2961         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2962
2963 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2964
2965         * ada-valprint.c (ada_value_print): Use type instead of
2966         enclosing type.
2967
2968 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2969
2970         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2971         an array of access to unconstrained array.
2972
2973 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2974
2975         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2976         (ada_check_typedef): Use it.
2977
2978 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2979
2980         * ada-varobj.c (ada_varobj_describe_struct_child)
2981         (ada_varobj_describe_child): Handle union case like struct one.
2982
2983 2018-09-10  Tom Tromey  <tom@tromey.com>
2984
2985         PR python/18380:
2986         * python/python.c (_initialize_python): Make example in "python"
2987         help work in Python 3.
2988
2989 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2990
2991         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2992         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2993         $(EXEEXT) to the script, as it is not a program.
2994
2995 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2996
2997         * python/py-prettyprint.c (pretty_print_one_value): Return
2998         gdbpy_ref<>.
2999         (print_string_repr): Adjust.
3000         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3001         * python/python-internal.h (apply_varobj_pretty_printer): Return
3002         gdbpy_ref<>.
3003         * varobj.c (varobj_value_get_print_value): Adjust.
3004
3005 2018-09-08  Tom Tromey  <tom@tromey.com>
3006
3007         PR python/16047:
3008         * python/py-prettyprint.c (pretty_print_one_value): Check for
3009         to_string method.
3010
3011 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3012
3013         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3014         replace_operator_with_call.
3015
3016 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3017
3018         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3019
3020 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3021
3022         * ada-typeprint.c (print_range): Print the bounds using TYPE
3023         rather than its TYPE_TARGET_TYPE.
3024
3025 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3026
3027         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3028         call to ada_to_fixed_value_create.
3029
3030 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3031
3032         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3033
3034 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3035
3036         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3037         by calls to error.
3038
3039 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3040
3041         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3042         Move update of loop variable "fi".
3043
3044 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3045
3046         * ada-lang.c (value_assign_to_component): In the case of
3047         big-endian targets, extract the bits of the given VAL
3048         using an src_offset of zero if container is not a scalar.
3049
3050 2018-09-06  Simon Ser  <contact@emersion.fr>
3051
3052         PR gdb/23105
3053         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3054         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3055         * fbsd-tdep.c (fbsd_make_note_desc): New.
3056         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3057         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3058         * target.h (enum target_object) Add FreeBSD-specific
3059         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3060
3061 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3062
3063         * compile/compile-c.h (generate_c_for_variable_locations):
3064         Change reference to pointer.
3065         * compile/compile-c-support.c (compile_program) <compute>:
3066         Likewise.
3067         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3068         (generate_c_for_for_one_variable): Likewise
3069         (generate_c_for_variable_locations): Likewise
3070         * compile/compile-c-types.c (compile_c_instance::convert_type):
3071         Likewise
3072         * compile/compile-cplus-symbols.c (convert_one_symbol):
3073         std::move the scope passed to enter_scope.
3074         * compile/compile-cplus-types.c
3075         (compile_cplus_instance::enter_scope): Make parameter
3076         rvalue-reference.
3077         (compile_cplus_instance::new_scope): Change reference to
3078         pointer.
3079         (compile_cplus_instance::convert_type): Likewise
3080         (compile_cplus_convert_typedef): std::move the scope passed to
3081         enter_scope.
3082         (compile_cplus_convert_struct_or_union): Likewise.
3083         (compile_cplus_convert_enum): Likewise.
3084         (compile_cplus_convert_namespace): Likewise.
3085         * compile/compile-cplus.h (compile_cplus_instance)
3086         <enter_scope>: Make parameter rvalue-reference.
3087         * compile/compile-internal.h (compile_instance)
3088         <get_cached_type>: Likewise
3089         * compile/compile-loc2c.c (push): Likewise
3090         (pushf): Likewise
3091         (unary): Likewise
3092         (binary): Likewise
3093         (print_label): Likewise
3094         (pushf_register_address): Likewise
3095         (pushf_register): Likewise
3096         (do_compile_dwarf_expr_to_c): Likewise
3097         (compile_dwarf_expr_to_c): Likewise
3098         (compile_dwarf_bounds_to_c): Likewise
3099         * compile/compile.c (compile_instance::get_cached_type):
3100         Likewise
3101         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3102         (compile_dwarf_bounds_to_c): Likewise
3103         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3104         (dwarf2_compile_property_to_c): Likewise
3105         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3106         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3107         Likewise
3108
3109 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3110
3111         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3112         * tui/tui-data.c (init_content_element): Don't initialize it.
3113
3114 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3115
3116         * tui/tui-data.h (struct tui_win_info)
3117         <detail::opaque>: Remove.
3118         * tui/tui-data.c (init_win_info): Remove assignment.
3119
3120 2018-09-05  Tom Tromey  <tom@tromey.com>
3121
3122         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3123         -Wformat-nonliteral.
3124         * target-float.c (host_float_ops<T>::to_string)
3125         (host_float_ops<T>::from_string): Use
3126         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3127         * configure: Rebuild.
3128
3129 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3130
3131         * printcmd.c (printf_c_string): Use
3132         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3133         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3134
3135 2018-09-05  Tom Tromey  <tom@tromey.com>
3136
3137         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3138
3139 2018-09-05  Tom de Vries  <tdevries@suse.de>
3140
3141         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3142         with resolve_abstract_p == true.
3143         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3144         defaulting to false. Propagate resolve_abstract_p to
3145         dwarf2_fetch_die_loc_sect_off.
3146         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3147         parameter, defaulting to false.
3148         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3149         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3150         parameter.
3151         * dwarf2read.h (struct die_info): Forward-declare.
3152         (die_info_ptr): New typedef.
3153         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3154
3155 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3156
3157         GDB 8.2 released.
3158
3159 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3160             Pedro Alves  <palves@redhat.com>
3161
3162         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3163         "aclocal-m4-deps.mk".  Include file here.
3164         $(srcdir)/aclocal.m4: Add "configure.ac".
3165         * gnulib/aclocal-m4-deps.mk: New file.
3166         * gnulib/update-gnulib.sh: Automatically update
3167         "aclocal-m4-deps.mk".
3168
3169 2018-09-04  Tom Tromey  <tom@tromey.com>
3170
3171         * configure: Rebuild.
3172         * configure.ac: Remove multi-ice code.
3173
3174 2018-09-04  Tom Tromey  <tom@tromey.com>
3175
3176         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3177         (ada-exp.o): Update.
3178
3179 2018-09-04  Tom Tromey  <tom@tromey.com>
3180
3181         * Makefile.in (printcmd.o, target-float.o): Remove.
3182         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3183
3184 2018-09-04  Tom Tromey  <tom@tromey.com>
3185
3186         * gnulib/Makefile.in: Remove obsolete comment.
3187         * Makefile.in: Remove obsolete comment.
3188
3189 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3190
3191         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3192         line with '+'.
3193
3194 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3195
3196         * riscv-tdep.c: Add 'prologue-value.h' include.
3197         (struct riscv_unwind_cache): New struct.
3198         (riscv_debug_unwinder): New global.
3199         (riscv_scan_prologue): Update arguments, capture register details
3200         from prologue scan.
3201         (riscv_skip_prologue): Reformat arguments line, move end of
3202         prologue calculation into riscv_scan_prologue.
3203         (riscv_frame_cache): Update return type, create
3204         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3205         details.
3206         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3207         (riscv_frame_prev_register): Use the trad_frame within the
3208         riscv_unwind_cache.
3209         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3210         flag.
3211
3212 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3213
3214         * trad-frame.h (trad_frame_set_realreg): Declare.
3215         (trad_frame_set_addr): Declare.
3216         * trad-frame.c (trad_frame_set_realreg): Define new function.
3217         (trad_frame_set_addr): Define new function.
3218         (trad_frame_set_reg_realreg): Use new function.
3219         (trad_frame_set_reg_addr): Use new function.
3220
3221 2018-09-01  Keith Seitz  <keiths@redhat.com>
3222
3223         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3224         pulongest instead of "%lld".
3225         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3226         ATTRIBUTE_UNUSED.
3227
3228 2018-08-31  Tom Tromey  <tom@tromey.com>
3229
3230         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3231         variant part type.
3232
3233 2018-08-31  Pedro Alves  <palves@redhat.com>
3234
3235         * gdbarch.h: Regenerate.
3236
3237 2018-08-31  Pedro Alves  <palves@redhat.com>
3238
3239         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3240         * target.h (Hardware watchpoint interfaces): Describe
3241         continuable/steppable/non-steppable watchpoints.
3242         * gdbarch.h, gdbarch.c: Regenerate.
3243
3244 2018-08-31  Pedro Alves  <palves@redhat.com>
3245
3246         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3247         Delete.
3248         * s390-linux-nat.c
3249         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3250         * target.h (target_ops::have_continuable_watchpoint): Delete.
3251         (target_have_continuable_watchpoint): Delete.
3252         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3253         * target-delegates.c: Regenerate.
3254
3255 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3256
3257         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3258         the files present in "gnulib/import/m4/".
3259
3260 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3261
3262         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3263         c.sw, c.swsp, and c.sdsp.
3264
3265 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3266
3267         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3268         (riscv_read_misa_reg): Don't cache value read into inferior data.
3269         (riscv_new_inferior_data): Delete.
3270         (riscv_inferior_data_cleanup): Delete.
3271         (riscv_inferior_data): Delete.
3272         (riscv_invalidate_inferior_data): Delete.
3273         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3274
3275 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3276
3277         * compile/compile-cplus-types.c
3278         (compile_cplus_instance::leave_scope): Take the address of scope
3279         object.
3280         (compile_cplus_instance::convert_qualified_base): Compare quals
3281         to 0.
3282
3283 2018-08-30  Keith Seitz  <keiths@redhat.com>
3284
3285         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3286         Use "%s" and host_address_to_string instead of "%p" in printf.
3287
3288 2018-08-29  Keith Seitz  <keiths@redhat.com>
3289
3290         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3291         and compile-cplus-types.c.
3292         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3293         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3294         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3295         Declare.
3296         * compile/compile-c-support.c: Include compile-cplus.h.
3297         (load_libcompile): Templatize.
3298         (get_compile_context): "New" function.
3299         (c_get_compile_context): Use get_compile_context.
3300         (cplus_get_compile_context): New function.
3301         (cplus_push_user_expression, cplus_pop_user_expression)
3302         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3303         (cplus_compute_program): Define new structs/functions.
3304         * compile/compile-cplus-symmbols.c: New file.
3305         * compile/compile-cplus-types.c: New file.
3306         * compile/compile-cplus.h: New file.
3307         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3308         Declare.
3309         * compile/compile-object-load.c (get_out_value_type): Use
3310         strncmp_iw when comparing symbol names.
3311         (compile_object_load): Add mst_bss and mst_data.
3312         * compile/compile.c (_initialize_compile): Remove
3313         -Wno-implicit-function-declaration from `compile_args'.
3314         * compile/gcc-cp-plugin.h: New file.
3315         * NEWS: Mention C++ compile support and new debug options.
3316
3317 2018-08-29  Keith Seitz  <keiths@redhat.com>
3318
3319         * linespec.c (collect_info::add_symbol): Make virtual.
3320         (struct symbol_searcher_collect_info): New struct.
3321         (symbol_searcher::find_all_symbols): New method.
3322         * symtab.h (class symbol_searcher): New class.
3323
3324 2018-08-29  Keith Seitz  <keiths@redhat.com>
3325
3326         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3327         Change to vector of block_symbol.  Update all users.
3328         (struct collect_info) <symbols>: Likewise.
3329         (collect_info::add_symbol): Take block_symbol as argument.
3330         Update all callers.
3331         (decode_compound_collector) <m_symbols>: Change type to vector
3332         of block_symbol.  Update all users.
3333         (decode_compound_collector::operator ()): Change parameter type
3334         to block_symbol.
3335         (find_method, find_function_symbols, find_linespec_symbols)
3336         (find_label_symbols_in_block, find_label_symbols): Change symbol
3337         vectors to block_symbol vectors.
3338         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3339         block_symbol.
3340
3341 2018-08-29  Keith Seitz  <keiths@redhat.com>
3342
3343         * linespec.c (symbolp): Remove typedef and VEC definitions.
3344         (bound_minimal_symbol_d): Likewise.
3345
3346 2018-08-29  Keith Seitz  <keiths@redhat.com>
3347
3348         * linespec.c (decode_compound_collector::decode_compound_collector):
3349         Remove initialization for `m_symtabs'.
3350         (decode_compound_collector::release_symbols): Change return type
3351         to std::vector.  Update all callers.
3352         (class decode_compound_collector) <m_symbols>: Change type to
3353         std::vector.
3354         (lookup_prefix_sym): Change return type to std::vector.  Update all
3355         callers.
3356         (compare_symbols): Remove.
3357         (std_compare_symbols): Rename to `compare_symbols'.
3358         (find_method): Change `sym_classes' parameter to std::vector.
3359         Update all callers.  Use std::sort to sort sym_classes.
3360         (find_linespec_symbols): Remove cleanup.
3361
3362 2018-08-29  Keith Seitz  <keiths@redhat.com>
3363
3364         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3365         std::vector.  Update all users.
3366         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3367         (struct collect_info) <minimal_symbols>: Likewise.
3368         (compare_msymbols): Return bool.  Change parameters to const
3369         bound_minimal_symbol references.
3370         (find_method, find_function_symbols, find_linespec_symbols): Change
3371         `minsyms' parameter to std::vector.  Update all callers.
3372
3373 2018-08-29  Keith Seitz  <keiths@redhat.com>
3374
3375         * linespec.c (struct linespec) <label_symbols>: Change type to
3376         std::vector.  Update all users.
3377         (find_label_symbols_in_block): Change `result' parameter to
3378         std::vector.  Update all callers.
3379         (find_label_symbols): Return std::vector.  Update all callers.
3380
3381 2018-08-29  Keith Seitz  <keiths@redhat.com>
3382
3383         * linespec.c (struct linespec) <function_symbols>: Change type to
3384         std::vector.  Update all users.
3385         (struct collect_info) <function_symbols>: Likewise.
3386         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3387         (std_compare_symbols): New function.
3388         (find_method, find_function_symbols, find_linespec_symbols)
3389         (find_label_symbols_in_block): Change `symbols' parameter to
3390         std::vector.  Update all callers.
3391         (find_label_symbols): Likewise for `function_symbols' and
3392         `label_funcs_ret'.
3393
3394 2018-08-29  Keith Seitz  <keiths@redhat.com>
3395
3396         * linespec.c (symtab_vector_up): Define.
3397         (struct linespec) <file_symtabs>: Change type to std::vector *.
3398         Update all uses.
3399         (struct collect_info) <file_symtabs>: Likewise.
3400         (collect_symtabs_from_filename): Return symtab_vector_up.
3401         Update all callers.
3402         (decode_objc): Remove cleanup.
3403         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3404         (symtab_collector::release_symtabs): Return symtab_vector_up.
3405         Update all callers.
3406         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3407         Update all users.
3408         (collect_symtabs_from_filename, symtabs_from_filename): Return
3409         symtab_vector_up.  Update all callers.
3410
3411 2018-08-29  Tom Tromey  <tom@tromey.com>
3412
3413         * csky-tdep.c (csky_analyze_prologue): Use
3414         core_addr_to_string_nz.
3415
3416 2018-08-29  Tom Tromey  <tom@tromey.com>
3417
3418         * windows-nat.c (struct xlate_exception) <them>: Change type to
3419         DWORD.
3420         (xlate): Fix formatting.  Remove last entry.
3421         (struct xlate_exception, xlate): Comment out.
3422         (windows_nat_target::resume): Use ranged for.
3423
3424 2018-08-29  Jim Wilson  <jimw@sifive.com>
3425
3426         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3427         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3428         of NT_PRFPREG.
3429         (riscv_linux_nat_target::store_registers): Likewise.
3430
3431 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3432
3433         PR gdb/23555
3434         PR gdb/23558
3435         * gnulib/aclocal.m4: Regenerate.
3436         * gnulib/config.in: Regenerate.
3437         * gnulib/configure: Regenerate.
3438         * gnulib/import/Makefile.am: Update.
3439         * gnulib/import/Makefile.in: Update.
3440         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3441         * gnulib/import/_Noreturn.h: ... this.
3442         * gnulib/import/alloca.in.h: Update.
3443         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3444         * gnulib/import/arg-nonnull.h: ... this.
3445         * gnulib/import/assure.h: Update.
3446         * gnulib/import/at-func.c: Update.
3447         * gnulib/import/basename-lgpl.c: Update.
3448         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3449         * gnulib/import/c++defs.h: ... this.
3450         * gnulib/import/canonicalize-lgpl.c: Update.
3451         * gnulib/import/cdefs.h: Update.
3452         * gnulib/import/chdir-long.c: Update.
3453         * gnulib/import/chdir-long.h: Update.
3454         * gnulib/import/cloexec.c: Update.
3455         * gnulib/import/cloexec.h: Update.
3456         * gnulib/import/close.c: Update.
3457         * gnulib/import/closedir.c: Update.
3458         * gnulib/import/config.charset: Update.
3459         * gnulib/import/dirent-private.h: Update.
3460         * gnulib/import/dirent.in.h: Update.
3461         * gnulib/import/dirfd.c: Update.
3462         * gnulib/import/dirname-lgpl.c: Update.
3463         * gnulib/import/dirname.h: Update.
3464         * gnulib/import/dosname.h: Update.
3465         * gnulib/import/dup-safer-flag.c: Update.
3466         * gnulib/import/dup-safer.c: Update.
3467         * gnulib/import/dup.c: Update.
3468         * gnulib/import/dup2.c: Update.
3469         * gnulib/import/errno.in.h: Update.
3470         * gnulib/import/error.c: Update.
3471         * gnulib/import/error.h: Update.
3472         * gnulib/import/exitfail.c: Update.
3473         * gnulib/import/exitfail.h: Update.
3474         * gnulib/import/extra/update-copyright: Update.
3475         * gnulib/import/fchdir.c: Update.
3476         * gnulib/import/fcntl.c: Update.
3477         * gnulib/import/fcntl.in.h: Update.
3478         * gnulib/import/fd-hook.c: Update.
3479         * gnulib/import/fd-hook.h: Update.
3480         * gnulib/import/fd-safer-flag.c: Update.
3481         * gnulib/import/fd-safer.c: Update.
3482         * gnulib/import/fdopendir.c: Update.
3483         * gnulib/import/filename.h: Update.
3484         * gnulib/import/filenamecat-lgpl.c: Update.
3485         * gnulib/import/filenamecat.h: Update.
3486         * gnulib/import/flexmember.h: Update.
3487         * gnulib/import/float+.h: Update.
3488         * gnulib/import/float.c: Update.
3489         * gnulib/import/float.in.h: Update.
3490         * gnulib/import/fnmatch.c: Update.
3491         * gnulib/import/fnmatch.in.h: Update.
3492         * gnulib/import/fnmatch_loop.c: Update.
3493         * gnulib/import/fpucw.h: Update.
3494         * gnulib/import/frexp.c: Update.
3495         * gnulib/import/frexpl.c: Update.
3496         * gnulib/import/fstat.c: Update.
3497         * gnulib/import/fstatat.c: Update.
3498         * gnulib/import/getcwd-lgpl.c: Update.
3499         * gnulib/import/getcwd.c: Update.
3500         * gnulib/import/getdtablesize.c: Update.
3501         * gnulib/import/getlogin_r.c: Update.
3502         * gnulib/import/getprogname.c: Update.
3503         * gnulib/import/getprogname.h: Update.
3504         * gnulib/import/gettext.h: Update.
3505         * gnulib/import/gettimeofday.c: Update.
3506         * gnulib/import/glob-libc.h: Update.
3507         * gnulib/import/glob.c: Update.
3508         * gnulib/import/glob.in.h: Update.
3509         * gnulib/import/glob_internal.h: Update.
3510         * gnulib/import/glob_pattern_p.c: Update.
3511         * gnulib/import/globfree.c: Update.
3512         * gnulib/import/hard-locale.c: Update.
3513         * gnulib/import/hard-locale.h: Update.
3514         * gnulib/import/intprops.h: Update.
3515         * gnulib/import/inttypes.in.h: Update.
3516         * gnulib/import/isnan.c: Update.
3517         * gnulib/import/isnand-nolibm.h: Update.
3518         * gnulib/import/isnand.c: Update.
3519         * gnulib/import/isnanl-nolibm.h: Update.
3520         * gnulib/import/isnanl.c: Update.
3521         * gnulib/import/itold.c: Update.
3522         * gnulib/import/libc-config.h: Update.
3523         * gnulib/import/limits.in.h: Update.
3524         * gnulib/import/localcharset.c: Update.
3525         * gnulib/import/localcharset.h: Update.
3526         * gnulib/import/localtime-buffer.c: Update.
3527         * gnulib/import/localtime-buffer.h: Update.
3528         * gnulib/import/lstat.c: Update.
3529         * gnulib/import/m4/00gnulib.m4: Update.
3530         * gnulib/import/m4/__inline.m4: Update.
3531         * gnulib/import/m4/absolute-header.m4: Update.
3532         * gnulib/import/m4/alloca.m4: Update.
3533         * gnulib/import/m4/builtin-expect.m4: Update.
3534         * gnulib/import/m4/canonicalize.m4: Update.
3535         * gnulib/import/m4/chdir-long.m4: Update.
3536         * gnulib/import/m4/close.m4: Update.
3537         * gnulib/import/m4/closedir.m4: Update.
3538         * gnulib/import/m4/configmake.m4: Update.
3539         * gnulib/import/m4/d-ino.m4: Update.
3540         * gnulib/import/m4/d-type.m4: Update.
3541         * gnulib/import/m4/dirent_h.m4: Update.
3542         * gnulib/import/m4/dirfd.m4: Update.
3543         * gnulib/import/m4/dirname.m4: Update.
3544         * gnulib/import/m4/double-slash-root.m4: Update.
3545         * gnulib/import/m4/dup.m4: Update.
3546         * gnulib/import/m4/dup2.m4: Update.
3547         * gnulib/import/m4/eealloc.m4: Update.
3548         * gnulib/import/m4/environ.m4: Update.
3549         * gnulib/import/m4/errno_h.m4: Update.
3550         * gnulib/import/m4/error.m4: Update.
3551         * gnulib/import/m4/exponentd.m4: Update.
3552         * gnulib/import/m4/exponentl.m4: Update.
3553         * gnulib/import/m4/extensions.m4: Update.
3554         * gnulib/import/m4/extern-inline.m4: Update.
3555         * gnulib/import/m4/fchdir.m4: Update.
3556         * gnulib/import/m4/fcntl-o.m4: Update.
3557         * gnulib/import/m4/fcntl.m4: Update.
3558         * gnulib/import/m4/fcntl_h.m4: Update.
3559         * gnulib/import/m4/fdopendir.m4: Update.
3560         * gnulib/import/m4/filenamecat.m4: Update.
3561         * gnulib/import/m4/flexmember.m4: Update.
3562         * gnulib/import/m4/float_h.m4: Update.
3563         * gnulib/import/m4/fnmatch.m4: Update.
3564         * gnulib/import/m4/fnmatch_h.m4: Update.
3565         * gnulib/import/m4/fpieee.m4: Update.
3566         * gnulib/import/m4/frexp.m4: Update.
3567         * gnulib/import/m4/frexpl.m4: Update.
3568         * gnulib/import/m4/fstat.m4: Update.
3569         * gnulib/import/m4/fstatat.m4: Update.
3570         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3571         * gnulib/import/m4/getcwd-path-max.m4: Update.
3572         * gnulib/import/m4/getcwd.m4: Update.
3573         * gnulib/import/m4/getdtablesize.m4: Update.
3574         * gnulib/import/m4/getlogin.m4: Update.
3575         * gnulib/import/m4/getlogin_r.m4: Update.
3576         * gnulib/import/m4/getpagesize.m4: Update.
3577         * gnulib/import/m4/getprogname.m4: Update.
3578         * gnulib/import/m4/gettimeofday.m4: Update.
3579         * gnulib/import/m4/glibc21.m4: Update.
3580         * gnulib/import/m4/glob.m4: Update.
3581         * gnulib/import/m4/glob_h.m4: Update.
3582         * gnulib/import/m4/gnulib-cache.m4: Update.
3583         * gnulib/import/m4/gnulib-common.m4: Update.
3584         * gnulib/import/m4/gnulib-comp.m4: Update.
3585         * gnulib/import/m4/gnulib-tool.m4: Update.
3586         * gnulib/import/m4/hard-locale.m4: Update.
3587         * gnulib/import/m4/include_next.m4: Update.
3588         * gnulib/import/m4/inttypes-pri.m4: Update.
3589         * gnulib/import/m4/inttypes.m4: Update.
3590         * gnulib/import/m4/isnand.m4: Update.
3591         * gnulib/import/m4/isnanl.m4: Update.
3592         * gnulib/import/m4/largefile.m4: Update.
3593         * gnulib/import/m4/limits-h.m4: Update.
3594         * gnulib/import/m4/localcharset.m4: Update.
3595         * gnulib/import/m4/locale-fr.m4: Update.
3596         * gnulib/import/m4/locale-ja.m4: Update.
3597         * gnulib/import/m4/locale-zh.m4: Update.
3598         * gnulib/import/m4/localtime-buffer.m4: Update.
3599         * gnulib/import/m4/longlong.m4: Update.
3600         * gnulib/import/m4/lstat.m4: Update.
3601         * gnulib/import/m4/malloc.m4: Update.
3602         * gnulib/import/m4/malloca.m4: Update.
3603         * gnulib/import/m4/math_h.m4: Update.
3604         * gnulib/import/m4/mbrtowc.m4: Update.
3605         * gnulib/import/m4/mbsinit.m4: Update.
3606         * gnulib/import/m4/mbsrtowcs.m4: Update.
3607         * gnulib/import/m4/mbstate_t.m4: Update.
3608         * gnulib/import/m4/memchr.m4: Update.
3609         * gnulib/import/m4/memmem.m4: Update.
3610         * gnulib/import/m4/mempcpy.m4: Update.
3611         * gnulib/import/m4/memrchr.m4: Update.
3612         * gnulib/import/m4/mkdir.m4: Update.
3613         * gnulib/import/m4/mkstemp.m4: Update.
3614         * gnulib/import/m4/mmap-anon.m4: Update.
3615         * gnulib/import/m4/mode_t.m4: Update.
3616         * gnulib/import/m4/msvc-inval.m4: Update.
3617         * gnulib/import/m4/msvc-nothrow.m4: Update.
3618         * gnulib/import/m4/multiarch.m4: Update.
3619         * gnulib/import/m4/nocrash.m4: Update.
3620         * gnulib/import/m4/off_t.m4: Update.
3621         * gnulib/import/m4/onceonly.m4: Update.
3622         * gnulib/import/m4/open-cloexec.m4: Update.
3623         * gnulib/import/m4/open.m4: Update.
3624         * gnulib/import/m4/openat.m4: Update.
3625         * gnulib/import/m4/opendir.m4: Update.
3626         * gnulib/import/m4/pathmax.m4: Update.
3627         * gnulib/import/m4/rawmemchr.m4: Update.
3628         * gnulib/import/m4/readdir.m4: Update.
3629         * gnulib/import/m4/readlink.m4: Update.
3630         * gnulib/import/m4/realloc.m4: Update.
3631         * gnulib/import/m4/rename.m4: Update.
3632         * gnulib/import/m4/rewinddir.m4: Update.
3633         * gnulib/import/m4/rmdir.m4: Update.
3634         * gnulib/import/m4/save-cwd.m4: Update.
3635         * gnulib/import/m4/secure_getenv.m4: Update.
3636         * gnulib/import/m4/setenv.m4: Update.
3637         * gnulib/import/m4/signal_h.m4: Update.
3638         * gnulib/import/m4/ssize_t.m4: Update.
3639         * gnulib/import/m4/stat-time.m4: Update.
3640         * gnulib/import/m4/stat.m4: Update.
3641         * gnulib/import/m4/std-gnu11.m4: Update.
3642         * gnulib/import/m4/stdbool.m4: Update.
3643         * gnulib/import/m4/stddef_h.m4: Update.
3644         * gnulib/import/m4/stdint.m4: Update.
3645         * gnulib/import/m4/stdio_h.m4: Update.
3646         * gnulib/import/m4/stdlib_h.m4: Update.
3647         * gnulib/import/m4/strchrnul.m4: Update.
3648         * gnulib/import/m4/strdup.m4: Update.
3649         * gnulib/import/m4/strerror.m4: Update.
3650         * gnulib/import/m4/string_h.m4: Update.
3651         * gnulib/import/m4/strstr.m4: Update.
3652         * gnulib/import/m4/strtok_r.m4: Update.
3653         * gnulib/import/m4/sys_socket_h.m4: Update.
3654         * gnulib/import/m4/sys_stat_h.m4: Update.
3655         * gnulib/import/m4/sys_time_h.m4: Update.
3656         * gnulib/import/m4/sys_types_h.m4: Update.
3657         * gnulib/import/m4/tempname.m4: Update.
3658         * gnulib/import/m4/time_h.m4: Update.
3659         * gnulib/import/m4/unistd-safer.m4: Update.
3660         * gnulib/import/m4/unistd_h.m4: Update.
3661         * gnulib/import/m4/warn-on-use.m4: Update.
3662         * gnulib/import/m4/wchar_h.m4: Update.
3663         * gnulib/import/m4/wchar_t.m4: Update.
3664         * gnulib/import/m4/wctype_h.m4: Update.
3665         * gnulib/import/m4/wint_t.m4: Update.
3666         * gnulib/import/malloc.c: Update.
3667         * gnulib/import/malloc/scratch_buffer.h: Update.
3668         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3669         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3670         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3671         * gnulib/import/malloca.c: Update.
3672         * gnulib/import/malloca.h: Update.
3673         * gnulib/import/malloca.valgrind: Update.
3674         * gnulib/import/math.in.h: Update.
3675         * gnulib/import/mbrtowc.c: Update.
3676         * gnulib/import/mbsinit.c: Update.
3677         * gnulib/import/mbsrtowcs-impl.h: Update.
3678         * gnulib/import/mbsrtowcs-state.c: Update.
3679         * gnulib/import/mbsrtowcs.c: Update.
3680         * gnulib/import/memchr.c: Update.
3681         * gnulib/import/memmem.c: Update.
3682         * gnulib/import/mempcpy.c: Update.
3683         * gnulib/import/memrchr.c: Update.
3684         * gnulib/import/mkdir.c: Update.
3685         * gnulib/import/mkstemp.c: Update.
3686         * gnulib/import/msvc-inval.c: Update.
3687         * gnulib/import/msvc-inval.h: Update.
3688         * gnulib/import/msvc-nothrow.c: Update.
3689         * gnulib/import/msvc-nothrow.h: Update.
3690         * gnulib/import/open.c: Update.
3691         * gnulib/import/openat-die.c: Update.
3692         * gnulib/import/openat-priv.h: Update.
3693         * gnulib/import/openat-proc.c: Update.
3694         * gnulib/import/openat.c: Update.
3695         * gnulib/import/openat.h: Update.
3696         * gnulib/import/opendir.c: Update.
3697         * gnulib/import/pathmax.h: Update.
3698         * gnulib/import/pipe-safer.c: Update.
3699         * gnulib/import/rawmemchr.c: Update.
3700         * gnulib/import/readdir.c: Update.
3701         * gnulib/import/readlink.c: Update.
3702         * gnulib/import/realloc.c: Update.
3703         * gnulib/import/ref-add.sin: Update.
3704         * gnulib/import/ref-del.sin: Update.
3705         * gnulib/import/rename.c: Update.
3706         * gnulib/import/rewinddir.c: Update.
3707         * gnulib/import/rmdir.c: Update.
3708         * gnulib/import/same-inode.h: Update.
3709         * gnulib/import/save-cwd.c: Update.
3710         * gnulib/import/save-cwd.h: Update.
3711         * gnulib/import/scratch_buffer.h: Update.
3712         * gnulib/import/secure_getenv.c: Update.
3713         * gnulib/import/setenv.c: Update.
3714         * gnulib/import/signal.in.h: Update.
3715         * gnulib/import/stat-time.c: Update.
3716         * gnulib/import/stat-time.h: Update.
3717         * gnulib/import/stat-w32.c: Update.
3718         * gnulib/import/stat-w32.h: Update.
3719         * gnulib/import/stat.c: Update.
3720         * gnulib/import/stdbool.in.h: Update.
3721         * gnulib/import/stddef.in.h: Update.
3722         * gnulib/import/stdint.in.h: Update.
3723         * gnulib/import/stdio.in.h: Update.
3724         * gnulib/import/stdlib.in.h: Update.
3725         * gnulib/import/str-two-way.h: Update.
3726         * gnulib/import/strchrnul.c: Update.
3727         * gnulib/import/strdup.c: Update.
3728         * gnulib/import/streq.h: Update.
3729         * gnulib/import/strerror-override.c: Update.
3730         * gnulib/import/strerror-override.h: Update.
3731         * gnulib/import/strerror.c: Update.
3732         * gnulib/import/string.in.h: Update.
3733         * gnulib/import/stripslash.c: Update.
3734         * gnulib/import/strnlen1.c: Update.
3735         * gnulib/import/strnlen1.h: Update.
3736         * gnulib/import/strstr.c: Update.
3737         * gnulib/import/strtok_r.c: Update.
3738         * gnulib/import/sys_stat.in.h: Update.
3739         * gnulib/import/sys_time.in.h: Update.
3740         * gnulib/import/sys_types.in.h: Update.
3741         * gnulib/import/tempname.c: Update.
3742         * gnulib/import/tempname.h: Update.
3743         * gnulib/import/time.in.h: Update.
3744         * gnulib/import/unistd--.h: Update.
3745         * gnulib/import/unistd-safer.h: Update.
3746         * gnulib/import/unistd.in.h: Update.
3747         * gnulib/import/unsetenv.c: Update.
3748         * gnulib/import/verify.h: Update.
3749         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3750         * gnulib/import/wchar.in.h: Update.
3751         * gnulib/import/wctype.in.h: Update.
3752         * gnulib/import/xalloc-oversized.h: Update.
3753         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3754         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3755
3756 2018-08-16  Gary Benson <gbenson@redhat.com>
3757
3758         PR gdb/13000:
3759         * gdb/main.c (captured_main_1): Exit with nonzero status
3760         in batch mode if the last command to be executed failed.
3761         * NEWS: Mention the above.
3762
3763 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3764
3765         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3766         end of warning message.
3767
3768 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3769
3770         PR gdb/22943:
3771         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3772         (aarch64_extract_return_value): Use
3773         aapcs_is_vfp_call_or_return_candidate.
3774         (aarch64_return_in_memory): Likewise.
3775         (aarch64_store_return_value): Likewise.
3776
3777 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3778
3779         * aarch64-tdep.c
3780         (aapcs_is_vfp_call_or_return_candidate): Make static
3781         (pass_in_v_or_stack): Remove function.
3782         (pass_in_v_vfp_candidate): New function.
3783         (aarch64_push_dummy_call): Check for float register candidates.
3784
3785 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3786
3787         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3788         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3789         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3790
3791 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3792
3793         PR build/23399
3794         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3795         (struct ipa_sym_addresses): Rename to...
3796         (struct ipa_sym_addresses_common): ... this.
3797         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3798
3799 2018-08-28  Tom Tromey  <tom@tromey.com>
3800
3801         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3802         (token_fifo): Now a std::vector.
3803         (yylex, c_parse): Update.
3804         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3805         (token_fifo): Now a std::vector.
3806         (yylex, d_parse): Update.
3807         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3808         (token_fifo): Now a std::vector.
3809         (yylex, go_parse): Update.
3810
3811 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3812
3813         * parser-defs.h (struct type_stack) <elements>: Change type to
3814         std::vector<union type_stack_elt>.
3815         <depth, size>: Remove.
3816         * parse.c (parse_exp_in_context_1): Adjust.
3817         (type_stack_reserve): Remove.
3818         (check_type_stack_depth): Remove.
3819         (insert_into_type_stack): Adjust to std::vector.
3820         (insert_type): Likewise.
3821         (push_type): Likewise.
3822         (push_type_int): Likewise.
3823         (insert_type_address_space): Likewise.
3824         (pop_type): Likewise.
3825         (pop_type_int): Likewise.
3826         (pop_typelist): Likewise.
3827         (pop_type_stack): Likewise.
3828         (append_type_stack): Likewise.
3829         (push_type_stack): Likewise.
3830         (get_type_stack): Likewise.
3831         (type_stack_cleanup): Likewise.
3832         (push_typelist): Likewise.
3833         (follow_types): Likewise.
3834         (_initialize_parse): Likewise.
3835
3836 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3837
3838         * NEWS: Mention csky target.
3839
3840 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3841             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3842             Don Breazeal  <donb@codesourcery.com>
3843
3844         * csky-linux-tdep.c: New file.
3845         * csky-tdep.c: Likewise.
3846         * csky-tdep.h: Likewise.
3847         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3848         csky-tdep.o.
3849         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3850         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3851         * configure.tgt: Add csky support.
3852
3853 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3854
3855         * python/py-framefilter.c (py_print_frame): Print frame architecture
3856         when printing on an MI output.
3857
3858 2018-08-27  Tom Tromey  <tom@tromey.com>
3859
3860         PR build/23087:
3861         * configure: Rebuild.
3862         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3863
3864 2018-08-27  Tom Tromey  <tom@tromey.com>
3865
3866         * aarch64-linux-tdep.c
3867         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3868         casts to int.
3869
3870 2018-08-27  Tom Tromey  <tom@tromey.com>
3871
3872         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3873         unsigned.
3874         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3875         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3876         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3877         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3878         unsigned.
3879
3880 2018-08-27  Tom Tromey  <tom@tromey.com>
3881
3882         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3883         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3884
3885 2018-08-27  Tom Tromey  <tom@tromey.com>
3886
3887         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3888         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3889         ULONGEST_MAX.
3890         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3891         ULONGEST_MAX.
3892         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3893         ULONGEST_MAX.
3894         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3895         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3896         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3897         ULONGEST_MAX.
3898         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3899         (ppc64_linux_sigaction_tramp_frame)
3900         (ppc32_linux_sighandler_tramp_frame)
3901         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3902         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3903         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3904         * mn10300-linux-tdep.c (am33_linux_sigframe)
3905         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3906         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3907         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3908         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3909         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3910         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3911         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3912         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3913         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3914         * microblaze-linux-tdep.c
3915         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3916         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3917         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3918         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3919         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3920         * common/common-types.h (ULONGEST_MAX): New define.
3921         (CORE_ADDR_MAX): Fix formatting.
3922         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3923         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3924         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3925         (arm_linux_rt_sigreturn_tramp_frame)
3926         (arm_eabi_linux_sigreturn_tramp_frame)
3927         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3928         (thumb2_eabi_linux_sigreturn_tramp_frame)
3929         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3930         (arm_linux_restart_syscall_tramp_frame)
3931         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3932         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3933         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3934         ULONGEST_MAX.
3935         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3936
3937 2018-08-27  Tom Tromey  <tom@tromey.com>
3938
3939         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3940         CORE_ADDR_MAX.
3941         * mips-tdep.c (mips_deal_with_atomic_sequence)
3942         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3943         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3944         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3945         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3946         CORE_ADDR_MAX.
3947         * aarch64-tdep.c (aarch64_software_single_step): Use
3948         CORE_ADDR_MAX.
3949
3950 2018-08-27  Tom Tromey  <tom@tromey.com>
3951
3952         * linespec.c (complete_linespec_component): Add cast to "char".
3953         * completer.c (completion_tracker::build_completion_result): Add
3954         cast to "char".
3955
3956 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3957
3958         * solist.h (struct solist, struct target_so_ops): Fix
3959         indentation.
3960
3961 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3962
3963         * ada-tasks.c (ada_task_info_s): Remove typedef.
3964         (DEF_VEC_O(ada_task_info_s)): Remove.
3965         (struct ada_tasks_inferior_data): Initialize fields.
3966         <task_list>: Make an std::vector.
3967         (get_ada_tasks_inferior_data): Allocate with new.
3968         (ada_get_task_number): Adjust.
3969         (get_task_number_from_id): Likewise.
3970         (valid_task_id): Likewise.
3971         (ada_get_task_info_from_ptid): Likewise.
3972         (iterate_over_live_ada_tasks): Likewise.
3973         (add_ada_task): Likewise.
3974         (read_known_tasks): Likewise.
3975         (ada_build_task_list): Likewise.
3976         (print_ada_task_info): Likewise.
3977         (info_task): Likewise.
3978         (task_command_1): Likewise.
3979
3980 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3981
3982         * ada-lang.c (add_angle_brackets): Return std::string.
3983
3984 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3985
3986         * python/py-threadevent.c (py_get_event_thread): Initialize
3987         pythread.
3988
3989 2018-08-24  Pedro Alves  <palves@redhat.com>
3990
3991         * python/py-bpevent.c (create_breakpoint_event_object): Use
3992         copy-initialization.
3993         * python/py-continueevent.c (emit_continue_event): Use
3994         copy-initialization.
3995         * python/py-exitedevent.c (create_exited_event_object): Return a
3996         gdbpy_ref<>.
3997         (emit_exited_event): Use copy-initialization.
3998         * python/py-inferior.c (python_new_inferior)
3999         (python_inferior_deleted, add_thread_object): Use
4000         copy-initialization.
4001         * python/py-infevents.c (create_inferior_call_event_object)
4002         (create_register_changed_event_object)
4003         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4004         (emit_inferior_call_event, emit_memory_changed_event)
4005         (emit_register_changed_event): Use copy-initialization.
4006         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4007         Return a gdbpy_ref<>.
4008         (emit_new_objfile_event): Use copy-initialization.
4009         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4010         (emit_clear_objfiles_event): Use copy-initialization.
4011         * python/py-signalevent.c (create_signal_event_object): Use
4012         copy-initialization.
4013         * python/py-threadevent.c (create_thread_event_object): Use
4014         copy-initialization.
4015
4016 2018-08-24  Pedro Alves  <palves@redhat.com>
4017             Simon Marchi  <simon.marchi@ericsson.com>
4018
4019         PR gdb/23379
4020         * python/py-continueevent.c: Include "gdbthread.h".
4021         (create_continue_event_object): Add intro comment.  Add 'ptid'
4022         parameter.  Use it to find thread to pass to
4023         create_thread_event_object.
4024         (emit_continue_event): Pass PTID down to
4025         create_continue_event_object.
4026         * python/py-event.h (py_get_event_thread): Declare.
4027         (create_thread_event_object): Remove default from 'thread'
4028         parameter.
4029         * python/py-stopevent.c (create_stop_event_object): Use
4030         py_get_event_thread.
4031         * python/py-threadevent.c (get_event_thread): Rename to ...
4032         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4033         and use it to find the thread.
4034         (create_thread_event_object): Assert that THREAD isn't null.
4035         Don't find the event thread here.
4036
4037 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4038
4039         * block.h (blockrange, blockranges): New struct declarations.
4040         (struct block): Add new field named `ranges'.
4041         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4042         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4043         macros for accessing ranges in struct block.
4044         (make_blockranges): New declaration.
4045         block.c (make_blockranges): New function.
4046         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4047         for block.
4048         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4049         * blockframe.c (cache_pc_function_block): New static global.
4050         (clear_pc_function_cache): Clear cache_pc_function_block.
4051         (find_pc_partial_function): Move comment to symtab.h.  Add
4052         support for non-contiguous blocks.
4053         * cli/cli-cmds.c (block.h): Include.
4054         (print_disassembly): Handle printing of non-contiguous blocks.
4055         (disassemble_current_function): Likewise.
4056         (disassemble_command): Likewise.
4057
4058         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4059         BLOCK_START.
4060         * blockframe.c (get_pc_function_start): Likewise.
4061         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4062         (gcc_symbol_address): Likewise.
4063         * compile/compile-object-run.c (compile_object_run): Likewise.
4064         * compile/compile.c (get_expr_block_and_pc): Likewise.
4065         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4066         (func_addr_to_tail_call_list): Likewise.
4067         * findvar.c (default_read_var_value): Likewise.
4068         * inline-frame.c (inline_frame_this_id): Likewise.
4069         (skip-inline_frames): Likewise.
4070         * infcmd.c (until_next_command): Likewise.
4071         * linespec.c (convert_linespec_to_sals): Likewise.
4072         * parse.c (parse_exp_in_context_1): Likewise.
4073         * printcmd.c (build_address_symbolic): likewise.
4074         (info_address_command): Likewise.
4075         symtab.c (find_function_start_sal): Likewise.
4076         (skip_prologue_sal): Likewise.
4077         (find_function_alias_target): Likewise.
4078         (find_gnu_ifunc): Likewise.
4079         * stack.c (find_frame_funname): Likewise.
4080         * symtab.c (fixup_symbol_section): Likewise.
4081         (find_function_start_sal): Likewise.
4082         (skip_prologue_sal): Likewsie.
4083         (find_function_alias_target): Likewise.
4084         (find_gnu_ifunc): Likewise.
4085         * tracepoint.c (info_scope_command): Likewise.
4086         * value.c (value_fn_field): Likewise.
4087
4088         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4089         in place of find_pc_partial_function.
4090         * blockframe.c (find_function_entry_range_from_pc): New function.
4091         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4092         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4093         for each range in a block.
4094
4095
4096 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4097
4098         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4099         incrementation.
4100
4101 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4102
4103         * solib-svr4.c (read_program_headers_from_bfd): Return
4104         gdb::optional<gdb::byte_vector>.
4105         (svr4_exec_displacement): Adjust.
4106
4107 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4108
4109         * solib-svr4.c (read_program_header): Return
4110         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4111         (find_program_interpreter): Return
4112         gdb::optional<gdb::byte_vector>.
4113         (scan_dyntag_auxv): Adjust.
4114         (enable_break): Adjust.
4115         (svr4_exec_displacement): Adjust.
4116
4117 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4118
4119         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4120         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4121
4122 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4123
4124         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4125         string_vprintf.
4126         * guile/scm-utils.c (gdbscm_printf): Likewise.
4127         * serial.c (serial_printf): Likewise.
4128         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4129
4130 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4131
4132         * stack.c (print_frame): Print frame architecture when printing on
4133         an MI output.
4134         * NEWS: Mention new "arch" attribute in frame output.
4135
4136 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4137
4138         * arch/aarch64.h (aarch64_regnum): Update comment.
4139
4140 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4141
4142         * NEWS: Add SVE to 8.2 section.
4143
4144 2018-08-21  Pedro Alves  <palves@redhat.com>
4145
4146         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4147         out from gdbscm_parse_function_args.
4148         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4149         gdbscm_parse_function_args_1.
4150
4151 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4152
4153         PR gdb/17816
4154         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4155         operator.
4156
4157 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4158
4159         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4160
4161 2018-08-19  Michael Spang  <spang@google.com>
4162
4163         PR gdb/11786
4164         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4165         for PT_TLS segments.
4166
4167 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4168
4169         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4170         dwarf_variable_value.
4171         * dwarf2-frame.c (class dwarf_expr_executor):
4172         Add override for dwarf_variable_value.
4173         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4174         (class symbol_needs_eval_context): Likewise.
4175         (indirect_synthetic_pointer): Add forward declaration.
4176         (sect_variable_value): New function.
4177         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4178         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4179         for DW_OP_GNU_variable_value.
4180
4181 2018-08-16  Tom Tromey  <tom@tromey.com>
4182
4183         * top.c (read_command_file): Update.
4184         (command_line_input): Remove "repeat" argument.
4185         * ada-lang.c (get_selections): Update.
4186         * linespec.c (decode_line_2): Update.
4187         * defs.h (command_line_input): Remove argument.
4188         * cli/cli-script.c (read_next_line): Update.
4189         * python/py-gdb-readline.c: Update.
4190
4191 2018-08-17  Tom Tromey  <tom@tromey.com>
4192
4193         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4194         command_line_input.
4195
4196 2018-08-15  Tom Tromey  <tom@tromey.com>
4197
4198         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4199
4200 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4201
4202         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4203         If used, use find_pc_partial_function to find address range
4204         to disassemble.
4205         * mi/mi-main.c (mi_cmd_list_features): Report
4206         "data-disassemble-a-option" feature.
4207         * NEWS: Mention new -data-disassemble option -a.
4208
4209 2018-08-13  Tom Tromey  <tom@tromey.com>
4210
4211         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4212
4213 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4214
4215         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4216         (aarch64_linux_collect_sve_regset): Likewise.
4217         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4218         * regcache.h (regcache_map_entry_size): New function.
4219
4220 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4221
4222         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4223         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4224         (SVE_HEADER_VL_LENGTH): Likewise.
4225         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4226         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4227         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4228         (SVE_HEADER_SIZE_OFFSET): Likewise.
4229         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4230         (SVE_HEADER_VL_OFFSET): Likewise.
4231         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4232         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4233         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4234         (SVE_HEADER_SIZE): Likewise.
4235         (aarch64_linux_core_read_vq): Add function.
4236         (aarch64_linux_core_read_description): Check for SVE section.
4237
4238 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4239
4240         * aarch64-fbsd-tdep.c
4241         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4242         collect_size.
4243         * aarch64-linux-tdep.c
4244         (aarch64_linux_iterate_over_regset_sections): Likewise.
4245         * alpha-linux-tdep.c
4246         (alpha_linux_iterate_over_regset_sections):
4247         * alpha-nbsd-tdep.c
4248         (alphanbsd_iterate_over_regset_sections): Likewise.
4249         * amd64-fbsd-tdep.c
4250         (amd64fbsd_iterate_over_regset_sections): Likewise.
4251         * amd64-linux-tdep.c
4252         (amd64_linux_iterate_over_regset_sections): Likewise.
4253         * arm-bsd-tdep.c
4254         (armbsd_iterate_over_regset_sections): Likewise.
4255         * arm-fbsd-tdep.c
4256         (arm_fbsd_iterate_over_regset_sections): Likewise.
4257         * arm-linux-tdep.c
4258         (arm_linux_iterate_over_regset_sections): Likewise.
4259         * corelow.c (get_core_registers_cb): Likewise.
4260         (core_target::fetch_registers): Likewise.
4261         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4262         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4263         * gdbarch.h (void): Regenerate.
4264         * gdbarch.sh: Add supply_size and collect_size.
4265         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4266         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4267         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4268         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4269         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4270         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4271         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4272         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4273         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4274         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4275         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4276         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4277         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4278         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4279         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4280         Likewise.
4281         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4282         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4283         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4284         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4285         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4286         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4287         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4288         Likewise.
4289         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4290         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4291         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4292         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4293         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4294         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4295         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4296         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4297
4298 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4299
4300         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4301         with string_printf.
4302
4303 2018-08-10  Keith Seitz  <keiths@redhat.com>
4304
4305         * compile/compile-c-support.c (add_code_header, add_code_footer):
4306         Move into policy class.
4307         (c_push_user_expression, pop_user_expression_nop)
4308         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4309         (compile_program): New host class.
4310         (c_compile_program): New typedef.
4311         (c_compute_porgram): Use c_compile_program.
4312
4313 2018-08-10  Keith Seitz  <keiths@redhat.com>
4314
4315         * compile/compile-internal.h (compile_instance::~compile_instance):
4316         Remove calls to htab_delete.
4317         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4318         * compile.c (compile_instance::compile_instance): Initialize
4319         htab unique pointers.
4320         (compile_instance::get_cached_type, compile_instance::insert_type)
4321         (compile_instance::error_symbol_once): Update for unique_ptr.
4322
4323 2018-08-10  Keith Seitz  <keiths@redhat.com>
4324
4325         * compile/compile-c-symbols.c (struct symbol_error)
4326         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4327         (compile_instance::insert_symbol_error)
4328         (compile_instance::error_symbol_once): Move to ...
4329         * compile/compile.c: ... here.
4330
4331 2018-08-10  Keith Seitz  <keiths@redhat.com>
4332
4333         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4334         instead of `new_compile_instance'.
4335         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4336         Update description.
4337         If the symbol error map is not initialized, create it.
4338         (generate_c_for_for_one_symbol): Do not check/initialize
4339         the symbol error map.
4340         * compile/compile-c-types.c (compile_c_instance): Make a class.
4341         Update all callers.
4342         (compile_instance::compile_instance): Initialize the type cache.
4343         (get_cached_type): New function.
4344         (insert_type): Update description.
4345         (compile_c_instance::m_default_cflags): Define.
4346         (convert_type): Update description.  Use get_cached_type.
4347         (delete_instance): Moved to destructor.
4348         (new_compile_instance): Moved to constructor.
4349         * compile/compile-c.h (compile_c_instance): Make class inheriting
4350         from compile_instance.
4351         <base>: Remove field.
4352         <type_map, symbol_err_map>: Move to base class.
4353         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4354         * compile/compile-internal.h (compile_instance): Make class.
4355         <type_map_t, symbol_err_map_t>: Define.
4356         <fe>: Rename to `m_gcc_fe'.
4357         <scope, block, gcc_target_options>: Add `m_' prefix.
4358         <m_type_map, m_symbol_err_map>: New fields, moved from
4359         compile_c_instance.
4360         <destroy>: Remove.
4361         (convert_type, new_compile_instance): Remove.
4362         * compile/compile.c (cleanup_compile_instance): Remove.
4363         (compile_to_object): Use unique_ptr to eliminate cleanups.
4364         (compile_instance::set_print_callback, compile_instance::version)
4365         (compile_instance::set_verbose)
4366         (compile_instance::set_driver_filename)
4367         (compile_instance::set_triplet_regexp)
4368         (compile_instance::set_arguments)
4369         (compile_instance::set_source_file)
4370         (compile_instance::compile): Define.
4371
4372 2018-08-10  Keith Seitz  <keiths@redhat.com>
4373
4374         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4375         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4376         gcc-c-fe.def to define C plugin.
4377         (delete_instance): Delete `c_plugin'.
4378         (new_compile_instance): Initialize `c_plugin'.
4379         * compile/compile-c.h: Include gcc_c_plugin.h.
4380         (struct compile_c_instance) <c_plugin>: New member.
4381         * gcc-c-plugin.h: New file.
4382         Update all callers with API change.
4383
4384 2018-08-10  Keith Seitz  <keiths@redhat.com>
4385
4386         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4387         (HFILES_NO_SRCDIR): ... to here.
4388         Add compile-internal.h and compile-c.h.
4389         * compile/compile-c-support.c: Include compile-c.h.
4390         * compile/compile-c-symbols.c: Include compile-c.h.
4391         (generate_c_for_variable_locations): Update comment.
4392         * compile/compile-c-types.c: Include compile-c.h.
4393         * compile/compile-c.h: New file -- moved C language declarations
4394         from other files here.
4395         * compile/compile-internal.h: Do not include hashtab.h or
4396         common/enum-flags.h.
4397         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4398         (gcc_convert_symbol, gcc_symbol_address)
4399         (generate_c_for_variable_locations, c_get_mode_for_size)
4400         (c_get_range_decl_name): Definitions moved to compile-c.h.
4401         * compile/compile-loc2c.c: Include compile-c.h.
4402
4403 2018-08-10  Keith Seitz  <keiths@redhat.com>
4404
4405         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4406         (c_symbol_substitution_name): ... this.
4407         Update all callers.
4408
4409 2018-08-10  Keith Seitz  <keiths@redhat.com>
4410
4411         * compile/compile-c-support.c (c_compute_program): Use
4412         unique_xmalloc_ptr to eliminate cleanup.
4413         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4414         Return a unique_xmalloc_ptr and eliminate cleanup.
4415         * compile/compile-internal.h (generate_c_for_variable_locations):
4416         Return unique_xmalloc_ptr and update description.
4417
4418 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4419
4420         * corelow.c (core_target::get_core_register_section): Rename
4421         min_size to section_min_size.
4422
4423 2018-08-09  Jim Wilson  <jimw@sifive.com>
4424
4425         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4426         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4427         * NEWS: Mention new GNU/Linux RISC-V target.
4428         * configure.host: Add riscv*-*-linux*.
4429         * configure.nat: Add riscv*.
4430         * configure.tgt: Add riscv*-*-linux*.
4431         * riscv-linux-nat.c: New file.
4432         * riscv-linux-tdep.c: New file.
4433
4434 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4435
4436         * infrun.c (resume): Make static, add forward declaration.
4437         (proceed): Update header comment.
4438         * infrun.h (resume): Delete declaration.
4439
4440 2018-08-09  Tom Tromey  <tom@tromey.com>
4441
4442         * riscv-tdep.h: Minor formatting fixes.
4443
4444 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4445
4446         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4447         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4448         (test_mkdir_recursive): Likewise.
4449         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4450
4451 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4452
4453         * valarith.c (value_subscripted_rvalue): If an array is not in
4454         memory, and we don't know the upper bound, then we can't know that
4455         the requested element exists or not.
4456
4457 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4458
4459         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4460         (target_options_to_string): Add comment.
4461
4462 2018-08-08  Tom Tromey  <tom@tromey.com>
4463
4464         * unittests/scoped_mmap-selftests.c: Check result of "write".
4465
4466 2018-08-08  Jim Wilson  <jimw@sifive.com>
4467
4468         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4469         (decode_register_index_short): New.
4470         (decode_j_type_insn, decode_cj_type_insn): New.
4471         (decode_b_type_insn, decode_cb_type_insn): New.
4472         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4473         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4474         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4475         is_c_sw_insn instead of is_sw_insn.
4476         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4477         (riscv_software_single_step): New.
4478         * riscv-tdep.h (riscv_software_single_step): Declare.
4479
4480         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4481         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4482
4483 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4484
4485         PR gdb/18050:
4486         * target.c (dispose_inferior): Don't dispose of inferiors that are
4487         already killed.
4488
4489 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4490
4491         * remote.c (remote_target::download_tracepoint): Change char* to
4492         const char*.
4493
4494 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4495
4496         * target.h (target_options_to_string): Return an std::string.
4497         * target.c (str_comma_list_concat_elem): Return void, use
4498         std::string.
4499         (do_option): Likewise.
4500         (target_options_to_string): Return an std::string.
4501         * linux-nat.c (linux_nat_target::wait): Adjust.
4502         * target-debug.h (target_debug_print_options): Adjust.
4503
4504 2018-08-07  Tom Tromey  <tom@tromey.com>
4505
4506         * Makefile.in (CPPFLAGS): New variable.
4507         (INTERNAL_CPPFLAGS): Use it.
4508
4509 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4510
4511         * NEWS: Mention the index cache.
4512
4513 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4514
4515         * common/pathstuff.h (get_standard_cache_dir): New.
4516         * common/pathstuff.c (get_standard_cache_dir): New.
4517         * build-id.h (build_id_to_string): New.
4518         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4519         DEBUG_STR_SUFFIX): Move to here.
4520         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4521         DEBUG_STR_SUFFIX): Move from there.
4522         (write_psymtabs_to_index): Make non-static, add basename
4523         parameter.  Write to temporary files, rename when done.
4524         (save_gdb_index_command): Adjust call to
4525         write_psymtabs_to_index.
4526         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4527         field.
4528         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4529         (get_gdb_index_contents_from_cache): New.
4530         (get_gdb_index_contents_from_cache_dwz): New.
4531         (dwarf2_initialize_objfile): Read index from cache.
4532         (dwarf2_build_psymtabs): Save to index.
4533         * dwarf-index-cache.h: New file.
4534         * dwarf-index-cache.c: New file.
4535         * dwarf-index-write.h: New file.
4536
4537 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4538
4539         * gnulib/aclocal.m4: Re-generate.
4540         * gnulib/config.in: Re-generate.
4541         * gnulib/configure: Re-generate.
4542         * gnulib/import/Makefile.am: Re-generate.
4543         * gnulib/import/Makefile.in: Re-generate.
4544         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4545         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4546         * gnulib/import/m4/mkdir.m4: New file.
4547         * gnulib/import/mkdir.c: New file.
4548         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4549         module.
4550
4551 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4552
4553         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4554         * common/scoped_mmap.c: New file.
4555         * common/scoped_mmap.h (destroy): New method.
4556         (~scoped_mmap, reset): Use destroy.
4557         (scoped_mmap): New move constructor.
4558         (mmap_file): New declaration.
4559         * unittests/scoped_mmap-selftests.c (test_normal,
4560         test_invalid_filename, run_tests): New functions.
4561         (_initialize_scoped_mmap_selftests): Register selftest.
4562
4563 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4564
4565         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4566         (read_gdb_index_from_buffer): ... this.  Remove section
4567         parameter, add buffer parameter.
4568         (get_gdb_index_contents_ftype,
4569         get_gdb_index_contents_dwz_ftype): New typedefs.
4570         (dwarf2_read_gdb_index): Add callback parameters to get the
4571         index contents.
4572         (get_gdb_index_contents_from_section): New.
4573         (dwarf2_initialize_objfile): Update call to
4574         dwarf2_read_gdb_index.
4575
4576 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4577
4578         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4579         (gdb_open_cloexec): Likewise.
4580         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4581         (commandline_from_pid): Likewise.
4582         (linux_xfer_osdata_threads): Likewise.
4583         (linux_xfer_osdata_fds): Likewise.
4584         * ada-lang.c (is_package_name): Likewise.
4585         * auxv.c (procfs_xfer_auxv): Likewise.
4586         * breakpoint.c (print_one_breakpoint_location): Use
4587         uiout::field_fmt.
4588         (print_one_catch_solib): Use string_printf.
4589         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4590         (add_pe_forwarded_sym): Likewise.
4591         * dwarf2read.c (create_type_unit_group): Likewise.
4592         (build_error_marker_type): Likewise.
4593         * infcall.c (get_function_name): Likewise.
4594         * valprint.c (print_converted_chars_to_obstack): Likewise.
4595         * xtensa-tdep.c (xtensa_register_type): Likewise.
4596
4597 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4598
4599         * remote.c (remote_target::download_tracepoint): Fix format
4600         string errors.
4601
4602 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4603
4604         * tracefile.c: Include common/byte-vector.h.
4605         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4606         with trace_regblock_size if needed.  Update uses of buf.
4607
4608 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4609
4610         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4611         std::vector<unsigned char>.
4612         * tracepoint.c (collection_list::collection_list): Remove
4613         m_regs_mask initializer from initializer list.  Resize
4614         m_regs_mask using the largest remote register number.
4615         (collection_list::add_remote_register): Remove size check on
4616         m_regs_mask.  Use at to access element.
4617         (collection_list::stringify): Change type of temp_buf to
4618         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4619         stringify the register mask.  Use pack_hex_byte for the register
4620         mask.
4621
4622 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4623
4624         * tracepoint.h (class collection_list) <add_register>: Remove.
4625         <add_remote_register, add_ax_registers, add_local_register>:
4626         Declare.
4627         <add_memrange>: Add scope parameter.
4628         * tracepoint.c (encode_actions_1): Likewise.
4629         (collection_list::add_register): Rename to ...
4630         (collection_list::add_remote_register): ... this.  Update
4631         comment.
4632         (collection_list::add_ax_registers, add_local_register): New
4633         methods.
4634         (collection_list::add_memrange): Add scope parameter.  Call
4635         add_local_register instead of add_register.
4636         (finalize_tracepoint_aexpr): New function.
4637         (collection_list::collect_symbol): Update calls to add_memrange.
4638         Call add_local_register instead of add_register.  Call
4639         add_ax_registers.  Call finalize_tracepoint_aexpr.
4640         (encode_actions_1): Get remote regnos for $reg action.  Call
4641         add_remote_register, add_ax_registers, and add_local_register.
4642         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4643         (validate_actionline): Call finalize_tracepoint_aexpr.
4644
4645 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4646
4647         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4648         Replace array buf with gdb::char_vector buf, of size
4649         get_remote_packet_size ().  Replace references to buf and
4650         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4651         and xsnprintf with snprintf.  Raise errors if the buffer is too
4652         small.
4653
4654 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4655
4656         * remote.c (remote_target::download_tracepoint): Fix the has_more
4657         predicate in the QTDP action list iteration.
4658
4659 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4660
4661         * remote.c (remote_target::download_tracepoint): Fix indentation
4662         in for block.
4663
4664 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4665
4666         * proc-api.c (_initialize_proc_api): Remove c, unused.
4667         * procfs.c (procfs_init_inferior): Remove signals, unused.
4668         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4669         unused.
4670
4671 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4672             Andrew Burgess  <andrew.burgess@embecosm.com>
4673
4674         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4675         'W_STOPCODE (0)' as this could be ambiguous.
4676
4677 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4678
4679         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4680         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4681         "ai_socktype").
4682
4683 2018-08-02  Tom Tromey  <tom@tromey.com>
4684
4685         PR symtab/16842.
4686         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4687         symbols.
4688         (process_structure_scope): Likewise.
4689
4690 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4691
4692         PR gdb/22629:
4693         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4694         kill inferior.
4695
4696 2018-08-02  Tom Tromey  <tom@tromey.com>
4697
4698         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4699         (darwin_suspend_inferior, darwin_resume_inferior)
4700         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4701         (darwin_check_new_threads): Check result of get_darwin_inferior.
4702
4703 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4704
4705         GDB 8.1.1 released.
4706
4707 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4708
4709         * varobj.c (varobj_get_path_expr_parent): Report an error if
4710         parent is a dynamic varobj.
4711
4712 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4713
4714         * gnulib/aclocal.m4: Re-generate.
4715         * gnulib/config.in: Re-generate.
4716         * gnulib/configure: Re-generate.
4717         * gnulib/import/Makefile.in: Re-generate.
4718         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4719         * gnulib/import/m4/onceonly.m4: Re-generate.
4720
4721 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4722
4723         * target-descriptions.c (struct xml_test_tdesc): New.
4724         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4725         (record_xml_tdesc): Update.
4726         (maintenance_check_xml_descriptions): Update.
4727         * target-descriptions.h (record_xml_tdesc): Update comment.
4728
4729 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4730
4731         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4732         checking array bounds are defined.
4733
4734 2018-07-30  Tom Tromey  <tom@tromey.com>
4735
4736         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4737         irreflexivity violation.
4738
4739 2018-07-30  Tom Tromey  <tom@tromey.com>
4740
4741         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4742         * value.c (unpack_long): Remove lint code.
4743         * valops.c (value_ind): Remove lint code.
4744         * valarith.c (value_x_binop, value_x_unop, value_equal)
4745         (value_pos): Remove lint code.
4746
4747 2018-07-28  Tom de Vries  <tdevries@suse.de>
4748
4749         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4750         with undefined upper bound as <optimized out>.
4751
4752 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4753
4754         * gcore.in: Rename variable "name" to "prefix".  Expand
4755         "usage" text.
4756
4757 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4758
4759         * windows-nat.c (windows_nat_target::create_inferior): Update to
4760         call close() in global namespace.
4761
4762 2018-07-26  Tom Tromey  <tom@tromey.com>
4763
4764         * dwarf-index-write.c (add_address_entry): Don't add objfile
4765         offsets.
4766         * dbxread.c (find_stab_function): Rename from
4767         find_stab_function_addr.  Return a bound_minimal_symbol.
4768         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4769         Don't add objfile offsets.
4770         (end_psymtab): Use raw_text_low, raw_text_high,
4771         MSYMBOL_VALUE_RAW_ADDRESS.
4772         (read_ofile_symtab): Update.
4773         (process_one_symbol): Update.
4774         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4775         offsets.
4776         (dw2_relocate): Remove.
4777         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4778         searching addrmap.
4779         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4780         Update.
4781         (process_psymtab_comp_unit_reader, add_partial_symbol)
4782         (add_partial_subprogram, dwarf2_ranges_read): Update.
4783         (load_partial_dies): Update.
4784         (add_address_entry): Don't add objfile offsets.
4785         (dwarf2_build_include_psymtabs): Update.
4786         (create_addrmap_from_aranges): Don't add objfile offsets.
4787         (dw2_find_pc_sect_compunit_symtab): Update.
4788         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4789         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4790         Update.
4791         (parse_partial_symbols): Don't add objfile offsets.  Use
4792         raw_text_low, raw_text_high.  Update.
4793         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4794         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4795         or call 'relocate' quick function.  Clear psymbol_map.
4796         * psympriv.h (struct partial_symbol) <address>: Add section
4797         offset.
4798         <set_unrelocated_address>: Rename from set_address.
4799         <raw_text_low, raw_text_high>: New methods.
4800         <text_low, text_high>: Add objfile parameter.
4801         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4802         set_unrelocated_address.
4803         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4804         (find_pc_psymbol): Update.
4805         (fixup_psymbol_section, relocate_psymtabs): Remove.
4806         (dump_psymtab, psym_functions): Update.
4807         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4808         parameter.
4809         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4810         (start_psymtab_common): Update.
4811         * symfile-debug.c (debug_qf_relocate): Remove.
4812         (debug_sym_quick_functions): Update.
4813         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4814         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4815         Update.
4816
4817 2018-07-26  Tom Tromey  <tromey@redhat.com>
4818
4819         * dbxread.c (end_psymtab): Use text_high_valid and
4820         text_low_valid.
4821         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4822         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4823         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4824         Update comment.
4825         <text_low_valid, text_high_valid>: New fields.
4826         <set_text_low, set_text_high>: Update.
4827         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4828
4829 2018-07-26  Tom Tromey  <tom@tromey.com>
4830
4831         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4832         Update.
4833         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4834         textlow and texthigh fields.
4835         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4836         Update.
4837         * mdebugread.c (parse_lines, parse_partial_symbols)
4838         (psymtab_to_symtab_1): Update.
4839         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4840         Rename fields.  Update comment.  Now private.
4841         <text_low, text_high, set_text_low, set_text_high>: New methods.
4842         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4843         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4844         (start_psymtab_common, maintenance_info_psymtabs)
4845         (maintenance_check_psymtabs): Update.
4846         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4847         texthigh fields.
4848         (scan_xcoff_symtab): Update.
4849
4850 2018-07-26  Tom Tromey  <tromey@redhat.com>
4851
4852         * psympriv.h (struct partial_symbol) <unrelocated_address,
4853         address, set_address>: New methods.
4854         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4855         (fixup_psymbol_section, relocate_psymtabs): Update.
4856         (print_partial_symbols): Add 'objfile' parameter.  Update.
4857         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4858         Update.
4859
4860 2018-07-26  Tom Tromey  <tom@tromey.com>
4861
4862         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4863         (debug_names::write_psymbols): Update.
4864         * psympriv.h (struct partial_symbol): Derive from
4865         general_symbol_info.
4866         <obj_section>: New method.
4867         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4868         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4869         (find_pc_sect_psymbol, fixup_psymbol_section)
4870         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4871         (print_partial_symbols, recursively_search_psymtabs)
4872         (compare_psymbols, psymbol_hash, psymbol_compare)
4873         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4874         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4875
4876 2018-07-26  Tom Tromey  <tromey@redhat.com>
4877
4878         * dbxread.c (end_psymtab): Remove dead code.
4879
4880 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4881
4882         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4883         DWARF unwinders are disabled.
4884         * dwarf2-frame.c: Add dwarf2read.h include.
4885         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4886         disabled.
4887         (dwarf2_frame_unwinders_enabled_p): Define.
4888         (show_dwarf_unwinders_enabled_p): New function.
4889         (_initialize_dwarf2_frame): Register switch to control DWARF
4890         unwinder use.
4891         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4892         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4893         (show_dwarf_cmdlist): Remove static keyword.
4894         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4895         (show_dwarf_cmdlist): Declare.
4896         * NEWS: Document new feature.
4897
4898 2018-07-26  Tom de Vries  <tdevries@suse.de>
4899
4900         PR breakpoints/23366
4901         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4902
4903 2018-07-26  Tom de Vries  <tdevries@suse.de>
4904
4905         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4906         DW_AT_count can't be translated to a dynamic prop.
4907
4908 2018-07-25  Tom de Vries  <tdevries@suse.de>
4909
4910         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4911         try/catch.
4912
4913 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4914
4915         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4916
4917 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4918
4919         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4920
4921 2018-07-24  Keith Seitz  <keiths@redhat.comt
4922
4923         PR symtab/23010
4924         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4925         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4926         instead of add_symbol_to_list.
4927         (read_file_scope): Call prepare_one_comp_unit before reading
4928         any other DIEs.
4929
4930 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4931
4932         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4933
4934 2018-07-24  Tom Tromey  <tom@tromey.com>
4935
4936         * utils.c (malloc, realloc, free): Don't declare.
4937         * configure, config.in: Rebuild.
4938         * configure.ac: Don't check for declarations of free, malloc, or
4939         realloc.
4940
4941 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4942
4943         * aarch64-linux-nat.c
4944         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4945         variable.
4946         * arm-linux-nat.c (fetch_regs): Likewise.
4947         (store_regs): Likewise.
4948         (fetch_vfp_regs): Likewise.
4949         (store_vfp_regs): Likewise.
4950         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4951         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4952         (arm_linux_nat_target::insert_watchpoint): Likewise.
4953         (arm_linux_nat_target::remove_watchpoint): Likewise.
4954         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4955         Likewise.
4956         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4957         Likewise.
4958         * ppc-linux-nat.c (fetch_register): Likewise.
4959         (fetch_all_gp_regs): Likewise.
4960         (fetch_ppc_registers): Likewise.
4961         (store_all_gp_regs): Likewise.
4962         (store_ppc_registers): Likewise.
4963         (hwdebug_insert_point): Likewise.
4964         (can_use_watchpoint_cond_accel): Likewise.
4965         * remote-sim.c (gdb_os_write_stdout): Likewise.
4966
4967 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4968             Tom Tromey  <tom@tromey.com>
4969
4970         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4971         test for it.
4972         * configure: Rebuild.
4973
4974 2018-07-22  Tom Tromey  <tom@tromey.com>
4975
4976         * regformats/regdat.sh: Define xmltarget_${name} inside
4977         #ifndef IN_PROCESS_AGENT.
4978
4979 2018-07-22  Tom Tromey  <tom@tromey.com>
4980
4981         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4982
4983 2018-07-22  Tom Tromey  <tom@tromey.com>
4984
4985         * symfile.c (reread_symbols): Notify iter, not objfile.
4986
4987 2018-07-22  Tom Tromey  <tom@tromey.com>
4988
4989         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4990         Use arch_ops.
4991         (ravenscar_thread_target::prepare_to_store): Likewise.
4992
4993 2018-07-22  Tom Tromey  <tom@tromey.com>
4994
4995         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4996         unused variable.  Call value_fetch_lazy when needed.
4997         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4998         Remove unused variable.  Call value_fetch_lazy when needed.
4999
5000 2018-07-22  Tom Tromey  <tom@tromey.com>
5001
5002         * m32c-tdep.c (mark_dma): Return void.
5003         (make_regs): Remove unused declarations.
5004
5005 2018-07-22  Tom Tromey  <tom@tromey.com>
5006
5007         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5008         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5009         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5010         bkscm_get_valid_block_smob_arg_unsafe for effect.
5011
5012 2018-07-22  Tom Tromey  <tom@tromey.com>
5013
5014         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5015         value_type.
5016
5017 2018-07-22  Tom Tromey  <tom@tromey.com>
5018
5019         * windows-nat.c (saved_context): Conditionally define.
5020         * remote.c (remote_target::remote_btrace_maybe_reopen):
5021         Conditionally declare "warned".
5022         * inflow.c (sigquit_ours): Conditionally define.
5023         (new_tty): Move "tty" declaration inside #if.
5024         * guile/guile.c (guile_datadir): Conditionally define.
5025         * charset.c (set_be_le_names): Move some declarations inside #if.
5026         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5027         #if.
5028         (parse_xml_btrace_conf): Likewise.
5029
5030 2018-07-22  Tom Tromey  <tom@tromey.com>
5031
5032         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5033
5034 2018-07-22  Tom Tromey  <tom@tromey.com>
5035
5036         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5037         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5038         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5039         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5040         * stack.c (frame_apply_level_command): Remove unused variable.
5041         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5042         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5043         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5044         unused variable.
5045         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5046         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5047         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5048         variable.
5049         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5050         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5051         variable.
5052         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5053         Remove unused variable.
5054         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5055         variable.
5056         * common/tdesc.c (print_xml_feature::visit): Remove unused
5057         variable.
5058         * compile/compile-object-load.c (store_regs): Remove unused
5059         variables.
5060         * complaints.c (clear_complaints): Remove unused variable.
5061         * corelow.c (core_target_open): Remove unused variable.
5062         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5063         variable.
5064         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5065         variable.
5066         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5067         variable.
5068         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5069         variable.
5070         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5071         variable.
5072         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5073         variable.
5074         * ia64-tdep.c (examine_prologue): Remove unused variable.
5075         * infcall.c (run_inferior_call): Remove unused variable.
5076         * inferior.c (exit_inferior): Remove unused variable.
5077         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5078         * linespec.c (decode_line_2): Remove unused variable.
5079         * linux-nat.c (super_close): Remove.
5080         * linux-tdep.c (linux_info_proc): Remove unused variable.
5081         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5082         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5083         Remove unused variable.
5084         * parse.c (find_minsym_type_and_address): Remove unused variable.
5085         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5086         variable.
5087         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5088         variable.
5089         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5090         variables.
5091         * record-btrace.c (record_btrace_target::store_registers): Remove
5092         unused variable.
5093         (cmd_show_record_btrace_cpu): Remove unused variable.
5094         * riscv-tdep.c (riscv_register_reggroup_p)
5095         (riscv_push_dummy_call, riscv_return_value): Remove unused
5096         variable.
5097         * rust-exp.y (literal): Remove unused variable.
5098         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5099         unused variable.
5100         <STRUCTOP_ANONYMOUS>: Likewise.
5101         * s390-linux-tdep.c (s390_linux_init_abi_31)
5102         (s390_linux_init_abi_64): Remove unused variable.
5103         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5104         (file_select_thread, net_windows_open, _initialize_ser_windows):
5105         Remove unused variables.
5106         * symtab.c (find_pc_sect_line): Remove unused variable.
5107         * target-memory.c (compute_garbled_blocks): Remove unused
5108         variable.
5109         (target_write_memory_blocks): Remove unused variable.
5110         * target.c (target_stack::unpush): Remove unused variables.
5111         * tracepoint.c (start_tracing, all_tracepoint_actions)
5112         (merge_uploaded_trace_state_variables)
5113         (print_one_static_tracepoint_marker): Remove unused variable.
5114         * unittests/basic_string_view/element_access/char/1.cc (test01):
5115         Remove unused variable.
5116         * windows-nat.c (windows_continue, windows_add_all_dlls)
5117         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5118         Remove unused variables.
5119
5120 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5121
5122         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5123         attr_profile in HAVE_ELF.
5124         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5125         HAVE_ELF.
5126
5127 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5128
5129         * frame.c (frame_register_unwind): Change parameter name.
5130         (frame_unwind_register): Likewise.
5131         (frame_unwind_register_value): Likewise.
5132         (frame_unwind_register_signed): Likewise.
5133         (frame_unwind_register_unsigned): Likewise.
5134         * frame.h (frame_register_unwind): Likewise.
5135         (frame_unwind_register): Likewise.
5136         (frame_unwind_register_value): Likewise.
5137         (frame_unwind_register_signed): Likewise.
5138         (frame_unwind_register_unsigned): Likewise.
5139         (frame_unwind_arch): Likewise.
5140
5141 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5142
5143         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5144         ISA maintenance.
5145
5146 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5147
5148         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5149         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5150         hand.
5151
5152 2018-07-20  Keith Seitz  <keiths@redhat.com>
5153
5154         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5155         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5156         m_compunit_symtab, m_language>: Add "m_" prefix.
5157         Update all uses.
5158         * buildsym.c: Update all uses.
5159
5160 2018-07-20  Tom Tromey  <tom@tromey.com>
5161
5162         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5163         * buildsym.h (record_line_ftype): Remove typedef.
5164
5165 2018-07-20  Tom Tromey  <tom@tromey.com>
5166
5167         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5168         (end_expandable_symtab): Likewise.
5169         (end_symtab_get_static_block): Likewise.
5170         (end_symtab_from_static_block): Likewise.
5171         * buildsym-legacy.c (augment_type_symtab): Remove.
5172         (end_expandable_symtab): Remove.
5173         (end_symtab_get_static_block): Remove.
5174         (end_symtab_from_static_block): Remove.
5175
5176 2018-07-20  Tom Tromey  <tom@tromey.com>
5177
5178         * dwarf2read.c: Include buildsym.h.
5179         (struct dwarf2_cu) <builder>: New method.
5180         (fixup_go_packaging): Update.
5181         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5182         use scoped_free_pendings.
5183         (using_directives): Add "cu" parameter, remove "language".
5184         (read_import_statement, setup_type_unit_groups, )
5185         (read_func_scope, read_lexical_block_scope)
5186         (dwarf2_record_block_ranges, read_namespace): Update.
5187         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5188         (lnp_state_machine::handle_end_sequence): Update.
5189         (class lnp_state_machine) <m_cu>: New member.
5190         <m_record_line_callback>: Remove.
5191         <m_currently_recording_lines>: New member.
5192         (lnp_state_machine::handle_set_file): Update.
5193         (noop_record_line): Remove.
5194         (dwarf_record_line_p): Add cu parameter.
5195         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5196         (lnp_state_machine::record_line)
5197         (lnp_state_machine::lnp_state_machine)
5198         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5199         (dwarf_decode_lines): Update.
5200         (dwarf2_start_subfile): Add cu parameter.
5201         (dwarf2_start_symtab, new_symbol): Update.
5202         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5203         Remove dwarf2_per_objfile parameter.
5204         (dwarf_decode_macros): Update.
5205
5206 2018-07-20  Tom Tromey  <tom@tromey.com>
5207
5208         * stabsread.c (define_symbol): Update.
5209         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5210         * dwarf2read.c (new_symbol): Update.
5211         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5212         * cp-namespace.c: Include buildsym.h.
5213         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5214         * buildsym-legacy.c (get_buildsym_compunit): New function.
5215
5216 2018-07-20  Tom Tromey  <tom@tromey.com>
5217
5218         * xcoffread.c: Include buildsym-legacy.h.
5219         * windows-nat.c: Include buildsym-legacy.h.
5220         * stabsread.c: Include buildsym-legacy.h.
5221         * mdebugread.c: Include buildsym-legacy.h.
5222         * buildsym-legacy.h: New file.
5223         * buildsym-legacy.c: New file, from buildsym.c.
5224         * go32-nat.c: Include buildsym-legacy.h.
5225         * dwarf2read.c: Include buildsym-legacy.h.
5226         * dbxread.c: Include buildsym-legacy.h.
5227         * cp-namespace.c: Include buildsym-legacy.h.
5228         * coffread.c: Include buildsym-legacy.h.
5229         * buildsym.h: Move some contents to buildsym-legacy.h.
5230         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5231         buildsym-legacy.c.
5232         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5233
5234 2018-07-20  Tom Tromey  <tom@tromey.com>
5235
5236         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5237         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5238         (buildsym_compunit::buildsym_compunit)
5239         (buildsym_compunit::~buildsym_compunit)
5240         (buildsym_compunit::get_macro_table): Define.
5241
5242 2018-07-20  Tom Tromey  <tom@tromey.com>
5243
5244         * buildsym.c (reset_symtab_globals): Remove.
5245         (buildsym_compunit::end_symtab_from_static_block): Update.
5246         (buildsym_compunit::augment_type_symtab): Update.
5247         (end_symtab_from_static_block): Call free_buildsym_compunit.
5248         (augment_type_symtab, end_symtab, end_expandable_symtab):
5249         Likewise.
5250
5251 2018-07-20  Tom Tromey  <tom@tromey.com>
5252
5253         * arch-utils.c: Do not include buildsym.h.
5254         * mipsread.c: Do not include buildsym.h.
5255         * machoread.c: Do not include buildsym.h.
5256         * elfread.c: Do not include buildsym.h.
5257
5258 2018-07-20  Tom Tromey  <tom@tromey.com>
5259
5260         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5261         initialization.
5262         (buildsym_compunit): Add new constructor.
5263         (struct buildsym_compunit) <get_last_source_file, finish_block,
5264         record_block_range, start_subfile, patch_subfile_names,
5265         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5266         set_last_source_start_addr, get_last_source_start_addr,
5267         get_local_using_directives, set_local_using_directives,
5268         get_global_using_directives, outermost_context_p,
5269         get_current_context_stack, get_context_stack_depth,
5270         get_current_subfile, get_local_symbols, get_file_symbols,
5271         get_global_symbols, record_debugformat, record_producer,
5272         push_context, pop_context, end_symtab_get_static_block,
5273         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5274         New public methods.
5275         <record_pending_block, finish_block_internal, make_blockvector,
5276         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5277         private methods.
5278         Update all users.
5279
5280 2018-05-22  Tom Tromey  <tom@tromey.com>
5281
5282         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5283         parameter.
5284         (finish_block_internal): Update.
5285
5286 2018-07-20  Tom Tromey  <tom@tromey.com>
5287
5288         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5289         parameter.
5290         (finish_block_internal): Update.
5291
5292 2018-07-20  Tom Tromey  <tom@tromey.com>
5293
5294         * buildsym.h (EXTERN): Don't define or undef.
5295         * buildsym.c (EXTERN): Don't define.
5296
5297 2018-07-20  Tom Tromey  <tom@tromey.com>
5298
5299         * buildsym.c: Remove TODO comment.
5300
5301 2018-07-20  Tom Tromey  <tom@tromey.com>
5302
5303         * coffread.c (coff_symtab_read): Update.
5304         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5305         (xcoff_new_init): Update.
5306         * mipsread.c (mipscoff_new_init): Update.
5307         * mdebugread.c (mdebug_build_psymtabs): Update.
5308         * elfread.c (elf_new_init): Update.
5309         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5310         Update.
5311         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5312         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5313         (stabsect_build_psymtabs): Update.
5314         * buildsym.h (buildsym_init): Don't declare.
5315         * buildsym.c: Update comment.
5316         (prepare_for_building): Remove.
5317         (start_symtab, restart_symtab): Update.
5318         (reset_symtab_globals): Update comment.
5319         (buildsym_init): Remove.
5320
5321 2018-07-20  Tom Tromey  <tom@tromey.com>
5322
5323         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5324         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5325         (read_enum_type, common_block_start, common_block_end)
5326         (cleanup_undefined_types_1, finish_global_stabs): Update.
5327         * mdebugread.c (psymtab_to_symtab_1): Update.
5328         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5329         (read_lexical_block_scope, new_symbol): Update.
5330         * dbxread.c (process_one_symbol): Update.
5331         * coffread.c (coff_symtab_read, process_coff_symbol)
5332         (coff_read_enum_type): Update.
5333         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5334         declare.
5335         (get_local_symbols, get_file_symbols, get_global_symbols): New
5336         functions.
5337         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5338         m_global_symbols.
5339         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5340         (~scoped_free_pendings): Update.
5341         (finish_block, prepare_for_building, reset_symtab_globals)
5342         (end_symtab_get_static_block, end_symtab_with_blockvector)
5343         (augment_type_symtab, push_context): Update.
5344         (get_local_symbols, get_file_symbols, get_global_symbols): New
5345         functions.
5346         (buildsym_init): Update.
5347
5348 2018-07-20  Tom Tromey  <tom@tromey.com>
5349
5350         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5351         (process_full_type_unit): Likewise.
5352         (dwarf2_start_symtab): Set list_in_scope.
5353
5354 2018-07-20  Tom Tromey  <tom@tromey.com>
5355
5356         * dwarf2read.c (process_psymtab_comp_unit_reader)
5357         (build_type_psymtabs_reader): Do not set list_in_scope.
5358
5359 2018-07-20  Tom Tromey  <tom@tromey.com>
5360
5361         * buildsym.c (free_pendings): Remove.
5362         (add_symbol_to_list, scoped_free_pendings)
5363         (finish_block_internal, buildsym_init): Update.
5364
5365 2018-07-20  Tom Tromey  <tom@tromey.com>
5366
5367         * xcoffread.c (read_xcoff_symtab): Update.
5368         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5369         Update.
5370         * dbxread.c (process_one_symbol): Update.
5371         * coffread.c (coff_symtab_read): Update.
5372         * buildsym.h (finish_block): Update.
5373         * buildsym.c (finish_block): Remove "listhead" argument.
5374         (end_symtab_get_static_block): Update.
5375
5376 2018-07-20  Tom Tromey  <tom@tromey.com>
5377
5378         * buildsym.h (class scoped_free_pendings): Remove constructor.
5379         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5380         method.
5381         <m_pending_block_obstack, m_pending_blocks>: New members.
5382         (pending_block_obstack, pending_blocks): Remove.
5383         (scoped_free_pendings::scoped_free_pendings): Default.
5384         (~scoped_free_pendings): Update.
5385         (free_pending_blocks): Remove.
5386         (finish_block_internal, record_pending_block, make_blockvector)
5387         (end_symtab_get_static_block, augment_type_symtab, push_context)
5388         (buildsym_init): Update.
5389
5390 2018-07-20  Tom Tromey  <tom@tromey.com>
5391
5392         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5393         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5394         members.
5395         (pending_addrmap, pending_addrmap_obstack)
5396         (pending_addrmap_interesting): Remove.
5397         (scoped_free_pendings, record_block_range, make_blockvector)
5398         (prepare_for_building, reset_symtab_globals, buildsym_init):
5399         Update.
5400
5401 2018-07-20  Tom Tromey  <tom@tromey.com>
5402
5403         * xcoffread.c (process_linenos): Update.
5404         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5405         * mdebugread.c (psymtab_to_symtab_1): Update.
5406         * dwarf2read.c (setup_type_unit_groups)
5407         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5408         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5409         * dbxread.c (process_one_symbol): Update.
5410         * coffread.c (coff_symtab_read, enter_linenos)
5411         (process_coff_symbol): Update.
5412         * buildsym.h (current_subfile): Don't declare.
5413         (get_current_subfile): Declare.
5414         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5415         member.
5416         (start_subfile, free_buildsym_compunit, push_subfile)
5417         (prepare_for_building, start_symtab): Update.
5418         (get_current_subfile): New function.
5419
5420 2018-07-20  Tom Tromey  <tom@tromey.com>
5421
5422         * coffread.c (coff_symtab_read): Update.
5423         * xcoffread.c (read_xcoff_symtab): Update.
5424         * dwarf2read.c (new_symbol): Update.
5425         (read_func_scope, read_lexical_block_scope): Update.
5426         * dbxread.c (process_one_symbol): Update.
5427         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5428         (outermost_context_p): Remove macro.
5429         (outermost_context_p, get_current_context_stack)
5430         (get_context_stack_depth): Declare.
5431         (pop_context): Return struct context_stack.
5432         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5433         member.
5434         (context_stack_size): Remove.
5435         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5436         (prepare_for_building, end_symtab_get_static_block)
5437         (augment_type_symtab, push_context): Update.
5438         (pop_context): Return struct context_stack.
5439         (outermost_context_p, get_current_context_stack)
5440         (get_context_stack_depth): New functions.
5441         (buildsym_init): Update.
5442
5443 2018-07-20  Tom Tromey  <tom@tromey.com>
5444
5445         * rust-exp.y: Now a pure parser.  Update all rules.
5446         (%union): Move earlier.
5447         (current_parser, work_obstack): Remove globals.
5448         (rust_parser, ~rust_parser): Update.
5449         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5450         lex_character, lex_number, lex_string, lex_identifier,
5451         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5452         convert_name, convert_params_to_expression,
5453         convert_ast_to_expression, ast_basic_type, ast_operation,
5454         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5455         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5456         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5457         ast_array_type, ast_slice_type, ast_reference_type,
5458         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5459         (rust_parse): Update.
5460         (rustyyerror, rustyylex): Add parser parameter.
5461         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5462         (rust_lex_stringish_test, rust_lex_test_sequence)
5463         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5464         (rust_lex_test_push_back, rust_lex_tests): Update.
5465
5466 2018-07-19  Pedro Alves  <palves@redhat.com>
5467
5468         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5469         gdb::unique_xmalloc_ptr.
5470         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5471         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5472         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5473         copy-initialization.
5474         * guile/scm-pretty-print.c (ppscm_print_children): Use
5475         gdb::unique_xmalloc_ptr instead of cleanups.
5476         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5477         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5478         gdb::unique_xmalloc_ptr.
5479         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5480         Adjust to use gdb::unique_xmalloc_ptr.
5481         * guile/scm-utils.c (extract_arg): Adjust.
5482         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5483         gdb::unique_xmalloc_ptr instead of a cleanup.
5484
5485 2018-07-19  Tom Tromey  <tom@tromey.com>
5486
5487         * utils.c (do_value_free_to_mark)
5488         (make_cleanup_value_free_to_mark): Remove.
5489         * utils.h (make_cleanup_value_free_to_mark): Remove.
5490
5491 2018-07-19  Pedro Alves  <palves@redhat.com>
5492
5493         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5494         forwarding reference.
5495
5496 2018-07-18  Pedro Alves  <palves@redhat.com>
5497
5498         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5499         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5500         cleanup.
5501
5502 2018-07-18  Pedro Alves  <palves@redhat.com>
5503
5504         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5505         exceptions.
5506         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5507         (gdbscm_wrap): New.
5508         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5509         directly instead of a cleanup.
5510         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5511         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5512         (vlscm_binop_gdbthrow): New, factored out from ...
5513         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5514         (vlscm_rich_compare): Use gdbscm_wrap.
5515         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5516         instead of a cleanup.
5517         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5518         cleanup.
5519         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5520         Use xfree directly instead of a cleanup.
5521         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5522         Adjust to use gdbscm_wrap and scoped_value_mark.
5523         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5524         (gdbscm_value_address, gdbscm_value_dereference)
5525         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5526         scoped_value_mark.
5527         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5528         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5529         scoped_value_mark.
5530         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5531         gdbscm_wrap and scoped_value_mark.
5532         (gdbscm_value_to_string): Use xfree directly instead of a
5533         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5534         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5535         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5536         scoped_value_mark.
5537         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5538         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5539         scoped_value_mark.
5540         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5541         gdbscm_wrap.
5542
5543 2018-07-18  Tom de Vries  <tdevries@suse.de>
5544
5545         * findvar.c (default_read_var_value): Also resolve dynamic type for
5546         LOC_OPTIMIZED_OUT vars.
5547
5548 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5549
5550         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5551         decoding.
5552
5553 2018-07-17  Tom Tromey  <tom@tromey.com>
5554
5555         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5556         (compute_enum_list, pascm_set_param_value_x)
5557         (gdbscm_parameter_value): Update.
5558         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5559         (gdbscm_scm_to_host_string): Update.
5560         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5561         Update.
5562         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5563         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5564         * guile/scm-string.c (gdbscm_scm_to_string): Return
5565         unique_xmalloc_ptr.
5566         (gdbscm_scm_to_host_string): Likewise.
5567
5568 2018-07-17  Tom Tromey  <tom@tromey.com>
5569
5570         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5571         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5572         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5573         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5574         unique_xmalloc_ptr.
5575
5576 2018-07-17  Tom Tromey  <tom@tromey.com>
5577
5578         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5579         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5580         Update.
5581         * guile/scm-cmd.c (cmdscm_function): Update.
5582         * guile/scm-pretty-print.c
5583         (ppscm_print_exception_unless_memory_error): Update.
5584         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5585         Return unique_xmalloc_ptr.
5586
5587 2018-07-17  Tom Tromey  <tom@tromey.com>
5588
5589         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5590         Use string_printf.
5591
5592 2018-07-17  Jim Wilson  <jimw@sifive.com>
5593
5594         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5595         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5596         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5597         unecessary braces after EF_RISCV_RVC test.  Delete call to
5598         set_gdbarch_decr_pc_after_break.
5599
5600         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5601         RISCV_LAST_FP_REGNUM + 1.
5602         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5603
5604 2018-07-17  Tom Tromey  <tom@tromey.com>
5605
5606         * configure.ac: Remove --disable-gdbcli.
5607         * configure: Rebuild.
5608         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5609         (SUBDIR_CLI_CFLAGS): Remove.
5610         (SFILES): Use SUBDIR_CLI_SRCS.
5611         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5612
5613 2018-07-17  Tom Tromey  <tom@tromey.com>
5614
5615         PR gdb/18624:
5616         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5617
5618 2018-07-16  Jim Wilson  <jimw@sifive.com>
5619
5620         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5621
5622 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5623
5624         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5625         variable.
5626         (libunwind_frame_sniffer): Likewise.
5627         (libunwind_frame_prev_register): Likewise.
5628         (libunwind_sigtramp_frame_sniffer): Likewise.
5629         * ia64-tdep.c (ia64_access_reg): Likewise.
5630         (ia64_access_rse_reg): Likewise.
5631         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5632         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5633
5634 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5635
5636         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5637
5638 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5639
5640         * remote-sim.c (gdbsim_target::close,
5641         gdbsim_target::mourn_inferior): Remove unused variables.
5642
5643 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5644
5645         * ia64-tdep.c (ktab_buf): New global.
5646         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5647         (get_kernel_table): Adjust.
5648
5649 2018-07-16  Tom Tromey  <tom@tromey.com>
5650
5651         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5652         * dwarf2read.c (using_directives, new_symbol): Use
5653         outermost_context_p.
5654         * dbxread.c (process_one_symbol): Use outermost_context_p.
5655         * coffread.c (coff_symtab_read): Use outermost_context_p.
5656
5657 2018-07-16  Tom Tromey  <tom@tromey.com>
5658
5659         * dwarf2read.c (using_directives, read_func_scope)
5660         (read_lexical_block_scope): Update.
5661         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5662         * buildsym.h (local_using_directives, global_using_directives):
5663         Don't declare.
5664         (get_local_using_directives, set_local_using_directives)
5665         (get_global_using_directives): Declare.
5666         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5667         m_global_using_directives>: New members.
5668         (finish_block_internal, prepare_for_building)
5669         (reset_symtab_globals, end_symtab_get_static_block)
5670         (push_context): Update.
5671         (get_local_using_directives, set_local_using_directives)
5672         (get_global_using_directives): New functions.
5673         (buildsym_init): Update.
5674
5675 2018-07-16  Tom Tromey  <tom@tromey.com>
5676
5677         * xcoffread.c (xcoff_initial_scan): Don't call
5678         free_pending_blocks.
5679         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5680         * buildsym.h (class scoped_free_pendings): Add constructor.
5681         (free_pending_blocks): Don't declare.
5682         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5683         (free_pending_blocks): Now static.
5684
5685 2018-07-16  Tom Tromey  <tom@tromey.com>
5686
5687         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5688         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5689         member.
5690         (struct subfile_stack): Remove.
5691         (subfile_stack): Remove.
5692         (push_subfile, pop_subfile, buildsym_init): Update.
5693
5694 2018-07-16  Tom Tromey  <tom@tromey.com>
5695
5696         * buildsym.c (push_subfile): Use gdb_assert.
5697         (pop_subfile): Use gdb_assert.
5698
5699 2018-07-16  Tom Tromey  <tom@tromey.com>
5700
5701         * buildsym.h (merge_symbol_lists): Remove.
5702         * buildsym.c (merge_symbol_lists): Remove.
5703
5704 2018-07-16  Tom Tromey  <tom@tromey.com>
5705
5706         * stabsread.c (scan_file_globals): Update comment.
5707         * stabsread.h (scan_file_globals): Move from buildsym.h.
5708         * buildsym.h (scan_file_globals): Move to stabsread.h.
5709
5710 2018-07-16  Tom Tromey  <tom@tromey.com>
5711
5712         * xcoffread.c (xcoff_new_init): Update.
5713         * mipsread.c (mipscoff_new_init): Update.
5714         * mdebugread.c (mdebug_build_psymtabs): Update.
5715         * elfread.c (elf_new_init): Update.
5716         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5717         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5718         * buildsym.h (buildsym_new_init): Don't declare.
5719         * buildsym.c (buildsym_new_init): Remove.
5720
5721 2018-07-16  Tom Tromey  <tom@tromey.com>
5722
5723         * stabsread.h (within_function): Move from buildsym.h.
5724         * stabsread.c (start_stabs): Clear within_function.
5725         * coffread.c (coff_start_symtab): Clear within_function.
5726         * buildsym.h (within_function): Move to stabsread.h.
5727         * buildsym.c (prepare_for_building): Update.
5728
5729 2018-07-16  Tom Tromey  <tom@tromey.com>
5730
5731         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5732         * dwarf2read.c (dwarf2_start_symtab): Don't set
5733         processing_gcc_compilation.
5734         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5735
5736 2018-07-16  Tom Tromey  <tom@tromey.com>
5737
5738         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5739         (next_symbol_text_func): Move from buildsym.h.
5740         * stabsread.c (hashname): Move from buildsym.c.
5741         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5742         (next_symbol_text_func, hashname): Move to stabsread.h.
5743         * buildsym.c: Don't include bcache.h
5744         (hashname): Move to stasbread.c.
5745
5746 2018-07-16  Tom Tromey  <tom@tromey.com>
5747
5748         * buildsym.h (context_stack_size): Don't declare.
5749         * buildsym.c (context_stack_size): New global.
5750
5751 2018-07-16  Tom Tromey  <tom@tromey.com>
5752
5753         * dbxread.c (processing_acc_compilation): New global.
5754         * buildsym.h (processing_acc_compilation): Don't declare.
5755
5756 2018-07-16  Tom Tromey  <tom@tromey.com>
5757
5758         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5759         * dbxread.c (read_ofile_symtab): Update.
5760         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5761         * buildsym.h (last_source_start_addr): Remove.
5762         (set_last_source_start_addr, get_last_source_start_addr):
5763         Declare.
5764         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5765         parameter.
5766         (struct buildsym_compunit) <m_last_source_start_addr>: New
5767         member.
5768         (prepare_for_building): Remove start_addr parameter.
5769         (start_symtab, restart_symtab, end_symtab_get_static_block)
5770         (end_symtab_with_blockvector): Update.
5771         (set_last_source_start_addr, get_last_source_start_addr): New
5772         functions.
5773
5774 2018-07-16  Tom Tromey  <tom@tromey.com>
5775
5776         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5777         member.
5778         (have_line_numbers): Remove.
5779         (record_line, prepare_for_building, end_symtab_get_static_block)
5780         (augment_type_symtab): Update.
5781
5782 2018-07-16  Tom Tromey  <tom@tromey.com>
5783
5784         * buildsym.c (~buildsym_compunit): Free the macro table.
5785         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5786         methods.
5787         <m_pending_macros>: New member.
5788         (pending_macros): Remove.
5789         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5790         (reset_symtab_globals, end_symtab_get_static_block)
5791         (end_symtab_with_blockvector, augment_type_symtab)
5792         (buildsym_init): Update.
5793
5794 2018-07-16  Tom Tromey  <tom@tromey.com>
5795
5796         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5797         parameter.
5798         (buildsym_compunit::set_last_source_file): New method.
5799         <m_last_source_file>: New member.
5800         (prepare_for_building): Remove "name" parameter.
5801         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5802         (last_source_file): Remove.
5803         (set_last_source_file, get_last_source_file): Update.
5804
5805 2018-07-16  Tom Tromey  <tom@tromey.com>
5806
5807         * buildsym.c (prepare_for_building): Add assert.
5808
5809 2018-07-16  Tom Tromey  <tom@tromey.com>
5810
5811         * buildsym.c (~buildsym_compunit): Update.
5812         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5813         (start_subfile, patch_subfile_names)
5814         (end_symtab_with_blockvector): Update.
5815
5816 2018-07-16  Tom Tromey  <tom@tromey.com>
5817
5818         * buildsym.c (struct buildsym_compunit): Add constructor,
5819         destructor, initializers.
5820         (start_buildsym_compunit): Remove.
5821         (free_buildsym_compunit): Use "delete".
5822         (start_symtab, restart_symtab): Use "new".
5823
5824 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5825
5826         * symfile.c (set_objfile_default_section_offset): Remove struct
5827         keyword.
5828
5829 2018-07-14  Stafford Horne  <shorne@gmail.com>
5830
5831         * (Responsible Maintainers): Add myself as or1k maintainer.
5832
5833 2018-07-13  Tom Tromey  <tom@tromey.com>
5834
5835         * symfile.c (set_objfile_default_section_offset): Use extra braces
5836         around initializer.
5837
5838 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5839
5840         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5841         non-branching basr.
5842
5843 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5844
5845         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5846         unittests/cli-utils-selftests.c
5847         * unittests/cli-utils-selftests.c: New file.
5848
5849 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5850
5851         * NEWS: Mention new commands. Mention change to 'thread apply'.
5852
5853 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5854
5855         * thread.c (thr_try_catch_cmd): New function.
5856         (thread_apply_all_command): Handle qcs flags.
5857         (thread_apply_command): Handle qcs flags.
5858         (taas_command): New function.
5859         (tfaas_command): New function.
5860         (_initialize_thread): Update to setup the new commands 'taas
5861         and 'tfaas'. Change doc string for 'thread apply'.
5862
5863 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5864
5865         * stack.c: (trailing_outermost_frame): New function, mostly
5866         extracted from backtrace_command_1.
5867         (leading_innermost_frame): New function.
5868         (backtrace_command_1): Update to call trailing_outermost_frame.
5869         (frame_apply_command_count): New function.
5870         (frame_apply_level_command): New function.
5871         (frame_apply_all_command): New function.
5872         (frame_apply_command): New function.
5873         (faas_command): New function.
5874         (frame_cmd_list): New variable.
5875         (_initialize_stack): Update to setup the new commands 'frame apply'
5876         and 'faas'.
5877
5878 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5879
5880         * cli-utils.c (number_or_range_parser::get_number): Only handle
5881         numbers or convenience var as numbers.
5882         (parse_flags): New function.
5883         (parse_flags_qcs): New function.
5884         (number_or_range_parser::finished): Ensure parsing end is detected
5885         before end of string.
5886         * cli-utils.h (parse_flags): New function.
5887         (parse_flags_qcs): New function.
5888         (number_or_range_parser): Remove m_finished bool.
5889         (number_or_range_parser::skip_range): Set m_in_range to false.
5890
5891 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5892
5893         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5894         on Windows.
5895
5896 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5897             Jan Kratochvil  <jan.kratochvil@redhat.com>
5898             Paul Fertser  <fercerpav@gmail.com>
5899             Tsutomu Seki  <sekiriki@gmail.com>
5900             Pedro Alves  <palves@redhat.com>
5901
5902         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5903         'unittests/parse-connection-spec-selftests.c'.
5904         (COMMON_SFILES): Add 'common/netstuff.c'.
5905         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5906         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5907         * common/netstuff.c: New file.
5908         * common/netstuff.h: New file.
5909         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5910         (wait_for_connect): Update comment.  New parameter
5911         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5912         Use 'sock' directly instead of 'scb->fd'.
5913         (try_connect): New function, with code from 'net_open'.
5914         (net_open): Rewrite main loop to deal with multiple
5915         sockets/addresses.  Handle IPv6-style hostnames; implement
5916         support for IPv6 connections.
5917         * unittests/parse-connection-spec-selftests.c: New file.
5918
5919 2018-07-11  Pedro Alves  <palves@redhat.com>
5920
5921         PR gdb/23377
5922         * remote.c (remote_target::remote_detach_pid): Call
5923         set_current_process.
5924
5925 2018-07-11  Pedro Alves  <palves@redhat.com>
5926
5927         * h8300-tdep.c (h8300_gdbarch_init): Remove
5928         set_gdbarch_ecoff_reg_to_regnum calls.
5929
5930 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5931
5932         PR c++/23373
5933         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5934         offsets/sizes for static members of a class/struct.
5935
5936 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5937
5938         * target-descriptions.c (tdesc_register_bitsize): Rename.
5939         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5940         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5941         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5942
5943 2018-07-10  Tom Tromey  <tom@tromey.com>
5944
5945         * breakpoint.c (moribund_locations): Now static and a
5946         std::vector.
5947         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5948         (build_bpstat_chain, update_global_location_list)
5949         (breakpoint_retire_moribund): Update.
5950         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5951         VEC.
5952
5953 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5954
5955         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5956         (riscv_register_reggroup_p): Use new function, remove unneeded
5957         parenthesis.
5958         (riscv_push_dummy_call): Extend assert to compare against xlen or
5959         flen based on register type.
5960
5961 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5962
5963         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5964
5965 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5966
5967         * remote.c (show_hardware_watchpoint_limit): New function.
5968         (show_hardware_watchpoint_length_limit): New function.
5969         (show_hardware_breakpoint_limit): New function.
5970         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5971         where appropriate, update help text.
5972
5973 2018-07-09  Tom Tromey  <tom@tromey.com>
5974
5975         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5976         (CLIBS): Don't mention NAT_CLIBS.
5977
5978 2018-07-09  Tom Tromey  <tom@tromey.com>
5979
5980         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5981         (LIBGDB_OBS, clean mostlyclean): Update.
5982         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5983
5984 2018-07-09  Tom Tromey  <tom@tromey.com>
5985
5986         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5987         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5988         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5989
5990 2018-07-09  Tom Tromey  <tom@tromey.com>
5991
5992         * Makefile.in (ALLDEPFILES): Remove exec.c.
5993         (COMMON_OBS): Remove exec.o.
5994         (COMMON_SFILES): Add exec.c.
5995
5996 2018-07-09  Tom Tromey  <tom@tromey.com>
5997
5998         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5999
6000 2018-07-09  Tom Tromey  <tom@tromey.com>
6001
6002         * Makefile.in (clean mostlyclean): Remove stamp-version.
6003         (version.c): Depend on stamp-version.
6004         (stamp-version): New rule, from version.c rule.
6005
6006 2018-07-09  Tom Tromey  <tom@tromey.com>
6007
6008         * Makefile.in (init.c): Depend on stamp-init.
6009         (stamp-init): New rule, from init.c rule.
6010         (clean mostlyclean): Remove stamp-init.
6011
6012 2018-07-09  Tom Tromey  <tom@tromey.com>
6013
6014         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6015         SUBDIR_GCC_COMPILE_SRCS.
6016
6017 2018-07-09  Tom Tromey  <tom@tromey.com>
6018
6019         * Makefile.in (init.c): Remove some unused sed rules.
6020
6021 2018-07-09  Tom Tromey  <tom@tromey.com>
6022
6023         * Makefile.in (TSOBS): Remove.
6024         (INIT_FILES): Update.
6025         (LIBGDB_OBS): Update.
6026         (COMMON_SFILES): Add inflow.c.
6027         (SFILES): Remove inflow.c.
6028
6029 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6030
6031         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6032
6033 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6034
6035         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6036         get_saveloc_name, is_signal_frame_name, step_name,
6037         init_remote_name, create_addr_space_name,
6038         destroy_addr_space_name, search_unwind_table_name,
6039         find_dyn_list_name): Constify.
6040
6041 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6042
6043         * darwin-nat.c (darwin_pthread_kill): New function.
6044         (darwin_resume_thread): Use darwin_pthread_kill.
6045
6046 2018-07-05  Tom de Vries  <tdevries@suse.de>
6047
6048         * macroexp.c (macro_buffer) <operator=>: New member function.
6049
6050 2018-07-04  Tom Tromey  <tom@tromey.com>
6051
6052         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6053
6054 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6055
6056         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6057         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6058         * maint.c: Likewise.
6059         * top.c: Likewise.
6060
6061 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6062
6063         * NEWS: Create a new section for the next release branch.
6064         Rename the section of the current branch, now that it has
6065         been cut.
6066
6067 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6068
6069         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6070         * version.in: Bump version to 8.2.50.DATE-git.
6071
6072 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6073             Pedro Alves  <palves@redhat.com>
6074
6075         * linux-nat.c (linux_init_ptrace): Rename to ...
6076         (linux_init_ptrace_procfs): ... this.  Call
6077         linux_proc_init_warnings.
6078         (linux_nat_target::post_attach)
6079         (linux_nat_target::post_startup_inferior): Adjust.
6080         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6081         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6082
6083 2018-07-04  Tom de Vries  <tdevries@suse.de>
6084
6085         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6086         check ...
6087         (read_comp_unit_head): ... here.
6088
6089 2018-07-03  Tom Tromey  <tom@tromey.com>
6090
6091         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6092         (stop_tracing, tstatus_command)
6093         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6094         (print_one_static_tracepoint_marker): Update.
6095         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6096         std::vector.
6097         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6098         VEC.
6099         (all_tracepoints, static_tracepoints_here): Return std::vector.
6100
6101 2018-07-03  Tom Tromey  <tom@tromey.com>
6102
6103         * common/ptid.c (ptid_equal): Remove.
6104         * common/ptid.h (ptid_equal): Don't declare.
6105         * ada-tasks.c: Update.
6106         * breakpoint.c: Update.
6107         * common/agent.c: Update.
6108         * corelow.c: Update.
6109         * darwin-nat-info.c: Update.
6110         * darwin-nat.c: Update.
6111         * dcache.c: Update.
6112         * dtrace-probe.c: Update.
6113         * dummy-frame.c: Update.
6114         * fbsd-nat.c: Update.
6115         * frame.c: Update.
6116         * gdbthread.h: Update.
6117         * gnu-nat.c: Update.
6118         * go32-nat.c: Update.
6119         * inf-loop.c: Update.
6120         * inf-ptrace.c: Update.
6121         * infcall.c: Update.
6122         * infcmd.c: Update.
6123         * inflow.c: Update.
6124         * infrun.c: Update.
6125         * linux-fork.c: Update.
6126         * linux-nat.c: Update.
6127         * linux-thread-db.c: Update.
6128         * mi/mi-cmd-var.c: Update.
6129         * mi/mi-interp.c: Update.
6130         * mi/mi-main.c: Update.
6131         * nto-procfs.c: Update.
6132         * ppc-linux-tdep.c: Update.
6133         * procfs.c: Update.
6134         * python/py-inferior.c: Update.
6135         * python/py-record-btrace.c: Update.
6136         * python/py-record.c: Update.
6137         * ravenscar-thread.c: Update.
6138         * regcache.c: Update.
6139         * remote-sim.c: Update.
6140         * remote.c: Update.
6141         * sol-thread.c: Update.
6142         * solib.c: Update.
6143         * target.c: Update.
6144         * tui/tui-stack.c: Update.
6145         * varobj.c: Update.
6146         * windows-nat.c: Update.
6147         * windows-tdep.c: Update.
6148
6149 2018-07-03  Tom Tromey  <tom@tromey.com>
6150
6151         * common/ptid.c (ptid_match): Remove.
6152         * common/ptid.h (ptid_match): Don't declare.
6153         * fbsd-nat.c: Update.
6154         * infcmd.c: Update.
6155         * infrun.c: Update.
6156         * linux-nat.c: Update.
6157         * record-btrace.c: Update.
6158         * regcache.c: Update.
6159         * remote.c: Update.
6160
6161 2018-07-03  Tom Tromey  <tom@tromey.com>
6162
6163         * common/ptid.c (ptid_tid_p): Remove.
6164         * common/ptid.h (ptid_tid_p): Don't declare.
6165         * sol-thread.c: Update.
6166
6167 2018-07-03  Tom Tromey  <tom@tromey.com>
6168
6169         * common/ptid.c (ptid_lwp_p): Remove.
6170         * common/ptid.h (ptid_lwp_p): Don't declare.
6171         * fbsd-nat.c: Update.
6172         * linux-nat.c: Update.
6173         * nat/linux-procfs.c: Update.
6174         * nat/x86-linux-dregs.c: Update.
6175         * sol-thread.c: Update.
6176
6177 2018-07-03  Tom Tromey  <tom@tromey.com>
6178
6179         * common/ptid.c (ptid_is_pid): Remove.
6180         * common/ptid.h (ptid_is_pid): Don't declare.
6181         * infrun.c: Update.
6182         * linux-nat.c: Update.
6183         * mi/mi-interp.c: Update.
6184         * remote.c: Update.
6185         * thread.c: Update.
6186
6187 2018-07-03  Tom Tromey  <tom@tromey.com>
6188
6189         * common/ptid.c (ptid_get_tid): Remove.
6190         * common/ptid.h (ptid_get_tid): Don't declare.
6191         * ada-tasks.c: Update.
6192         * aix-thread.c: Update.
6193         * bsd-uthread.c: Update.
6194         * darwin-nat.c: Update.
6195         * fbsd-nat.c: Update.
6196         * i386-darwin-nat.c: Update.
6197         * infrun.c: Update.
6198         * linux-tdep.c: Update.
6199         * nto-procfs.c: Update.
6200         * ppc-ravenscar-thread.c: Update.
6201         * python/py-infthread.c: Update.
6202         * ravenscar-thread.c: Update.
6203         * sol-thread.c: Update.
6204         * sparc-ravenscar-thread.c: Update.
6205         * windows-nat.c: Update.
6206
6207 2018-07-03  Tom Tromey  <tom@tromey.com>
6208
6209         * common/ptid.c (ptid_get_lwp): Remove.
6210         * common/ptid.h (ptid_get_lwp): Don't declare.
6211         * aarch64-linux-nat.c: Update.
6212         * ada-tasks.c: Update.
6213         * aix-thread.c: Update.
6214         * amd64-linux-nat.c: Update.
6215         * arm-linux-nat.c: Update.
6216         * corelow.c: Update.
6217         * fbsd-nat.c: Update.
6218         * fbsd-tdep.c: Update.
6219         * gnu-nat.c: Update.
6220         * i386-cygwin-tdep.c: Update.
6221         * i386-gnu-nat.c: Update.
6222         * i386-linux-nat.c: Update.
6223         * ia64-linux-nat.c: Update.
6224         * inf-ptrace.c: Update.
6225         * infrun.c: Update.
6226         * linux-fork.c: Update.
6227         * linux-nat.c: Update.
6228         * linux-tdep.c: Update.
6229         * linux-thread-db.c: Update.
6230         * mips-linux-nat.c: Update.
6231         * nat/aarch64-linux-hw-point.c: Update.
6232         * nat/aarch64-linux.c: Update.
6233         * nat/linux-btrace.c: Update.
6234         * nat/linux-osdata.c: Update.
6235         * nat/linux-procfs.c: Update.
6236         * nat/x86-linux-dregs.c: Update.
6237         * obsd-nat.c: Update.
6238         * ppc-fbsd-nat.c: Update.
6239         * ppc-linux-nat.c: Update.
6240         * procfs.c: Update.
6241         * python/py-infthread.c: Update.
6242         * ravenscar-thread.c: Update.
6243         * remote.c: Update.
6244         * s390-linux-nat.c: Update.
6245         * sol-thread.c: Update.
6246         * sol2-tdep.c: Update.
6247         * spu-linux-nat.c: Update.
6248         * x86-linux-nat.c: Update.
6249         * xtensa-linux-nat.c: Update.
6250
6251 2018-07-03  Tom Tromey  <tom@tromey.com>
6252
6253         * common/ptid.c (ptid_get_pid): Remove.
6254         * common/ptid.h (ptid_get_pid): Don't declare.
6255         * aarch64-linux-nat.c: Update.
6256         * ada-lang.c: Update.
6257         * aix-thread.c: Update.
6258         * alpha-bsd-nat.c: Update.
6259         * amd64-fbsd-nat.c: Update.
6260         * amd64-linux-nat.c: Update.
6261         * arm-linux-nat.c: Update.
6262         * arm-nbsd-nat.c: Update.
6263         * auxv.c: Update.
6264         * break-catch-syscall.c: Update.
6265         * breakpoint.c: Update.
6266         * bsd-uthread.c: Update.
6267         * corelow.c: Update.
6268         * ctf.c: Update.
6269         * darwin-nat.c: Update.
6270         * fbsd-nat.c: Update.
6271         * fbsd-tdep.c: Update.
6272         * gcore.c: Update.
6273         * gnu-nat.c: Update.
6274         * hppa-nbsd-nat.c: Update.
6275         * hppa-obsd-nat.c: Update.
6276         * i386-fbsd-nat.c: Update.
6277         * ia64-linux-nat.c: Update.
6278         * inf-ptrace.c: Update.
6279         * infcmd.c: Update.
6280         * inferior.c: Update.
6281         * inferior.h: Update.
6282         * inflow.c: Update.
6283         * infrun.c: Update.
6284         * linux-fork.c: Update.
6285         * linux-nat.c: Update.
6286         * linux-tdep.c: Update.
6287         * linux-thread-db.c: Update.
6288         * m68k-bsd-nat.c: Update.
6289         * mi/mi-interp.c: Update.
6290         * mi/mi-main.c: Update.
6291         * mips-linux-nat.c: Update.
6292         * mips-nbsd-nat.c: Update.
6293         * mips64-obsd-nat.c: Update.
6294         * nat/aarch64-linux-hw-point.c: Update.
6295         * nat/aarch64-linux.c: Update.
6296         * nat/linux-btrace.c: Update.
6297         * nat/linux-osdata.c: Update.
6298         * nat/linux-procfs.c: Update.
6299         * nat/x86-linux-dregs.c: Update.
6300         * nto-procfs.c: Update.
6301         * obsd-nat.c: Update.
6302         * ppc-linux-nat.c: Update.
6303         * ppc-nbsd-nat.c: Update.
6304         * ppc-obsd-nat.c: Update.
6305         * proc-service.c: Update.
6306         * procfs.c: Update.
6307         * python/py-inferior.c: Update.
6308         * python/py-infthread.c: Update.
6309         * ravenscar-thread.c: Update.
6310         * record.c: Update.
6311         * remote-sim.c: Update.
6312         * remote.c: Update.
6313         * rs6000-nat.c: Update.
6314         * s390-linux-nat.c: Update.
6315         * sh-nbsd-nat.c: Update.
6316         * sol-thread.c: Update.
6317         * sparc-nat.c: Update.
6318         * sparc64-tdep.c: Update.
6319         * spu-linux-nat.c: Update.
6320         * spu-tdep.c: Update.
6321         * target-debug.h: Update.
6322         * target.c: Update.
6323         * thread.c: Update.
6324         * tid-parse.c: Update.
6325         * tracefile-tfile.c: Update.
6326         * vax-bsd-nat.c: Update.
6327         * windows-nat.c: Update.
6328         * x86-linux-nat.c: Update.
6329         * x86-nat.c: Update.
6330
6331 2018-07-03  Tom Tromey  <tom@tromey.com>
6332
6333         * common/ptid.c (pid_to_ptid): Remove.
6334         * common/ptid.h (pid_to_ptid): Don't declare.
6335         * aix-thread.c: Update.
6336         * arm-linux-nat.c: Update.
6337         * common/ptid.c: Update.
6338         * common/ptid.h: Update.
6339         * corelow.c: Update.
6340         * ctf.c: Update.
6341         * darwin-nat.c: Update.
6342         * fbsd-nat.c: Update.
6343         * fork-child.c: Update.
6344         * gnu-nat.c: Update.
6345         * go32-nat.c: Update.
6346         * inf-ptrace.c: Update.
6347         * infcmd.c: Update.
6348         * inferior.c: Update.
6349         * infrun.c: Update.
6350         * linux-fork.c: Update.
6351         * linux-nat.c: Update.
6352         * nat/aarch64-linux-hw-point.c: Update.
6353         * nat/fork-inferior.c: Update.
6354         * nat/x86-linux-dregs.c: Update.
6355         * nto-procfs.c: Update.
6356         * obsd-nat.c: Update.
6357         * procfs.c: Update.
6358         * progspace.c: Update.
6359         * remote.c: Update.
6360         * rs6000-nat.c: Update.
6361         * s390-linux-nat.c: Update.
6362         * sol-thread.c: Update.
6363         * spu-linux-nat.c: Update.
6364         * target.c: Update.
6365         * top.c: Update.
6366         * tracefile-tfile.c: Update.
6367         * windows-nat.c: Update.
6368
6369 2018-07-03  Tom Tromey  <tom@tromey.com>
6370
6371         * common/ptid.h (ptid_build): Don't declare.
6372         * common/ptid.c (ptid_build): Remove.
6373         * aix-thread.c: Update.
6374         * bsd-kvm.c: Update.
6375         * bsd-uthread.c: Update.
6376         * common/agent.c: Update.
6377         * common/ptid.c: Update.
6378         * common/ptid.h: Update.
6379         * corelow.c: Update.
6380         * darwin-nat.c: Update.
6381         * fbsd-nat.c: Update.
6382         * gnu-nat.c: Update.
6383         * linux-fork.c: Update.
6384         * linux-nat.c: Update.
6385         * linux-thread-db.c: Update.
6386         * nat/linux-osdata.c: Update.
6387         * nat/linux-procfs.c: Update.
6388         * nto-procfs.c: Update.
6389         * obsd-nat.c: Update.
6390         * proc-service.c: Update.
6391         * procfs.c: Update.
6392         * ravenscar-thread.c: Update.
6393         * remote-sim.c: Update.
6394         * remote.c: Update.
6395         * sol-thread.c: Update.
6396         * target.c: Update.
6397         * windows-nat.c: Update.
6398
6399 2018-07-03  Tom Tromey  <tom@tromey.com>
6400
6401         * infrun.c (follow_exec): Use exit_inferior_silent.
6402         * inferior.c (exit_inferior_num_silent): Remove.
6403         * inferior.h (exit_inferior_num_silent): Don't declare.
6404
6405 2018-07-03  Tom Tromey  <tom@tromey.com>
6406
6407         PR cli/23340:
6408         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6409         inferior_ptid on error.
6410
6411 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6412             Simon Marchi  <simon.marchi@polymtl.ca>
6413
6414         PR tdep/8282
6415         * disasm.h (gdb_disassembler): Add
6416         `m_disassembler_options_holder'. member
6417         * disasm.c (get_all_disassembler_options): New function.
6418         (gdb_disassembler::gdb_disassembler): Use it.
6419         (gdb_buffered_insn_length_init_dis): Likewise.
6420         (gdb_buffered_insn_length): Adjust accordingly.
6421         (set_disassembler_options): Handle options with arguments.
6422         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6423         line if showing options with descriptions.
6424         (disassembler_options_completer): Adapt to using the
6425         `disasm_options_and_args_t' structure.
6426         * mips-tdep.c (mips_disassembler_options): New variable.
6427         (mips_disassembler_options_o32): Likewise.
6428         (mips_disassembler_options_n32): Likewise.
6429         (mips_disassembler_options_n64): Likewise.
6430         (gdb_print_insn_mips): Don't set `disassembler_options'.
6431         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6432         functions.
6433         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6434         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6435         `gdbarch_disassembler_options_implicit' and
6436         `gdbarch_valid_disassembler_options'.
6437         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6438         `disasm_options_and_args_t' structure.
6439         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6440         method.
6441         (valid_disassembler_options): Switch from `disasm_options_t' to
6442         the `disasm_options_and_args_t' structure.
6443         * NEWS: Document `set disassembler-options' support for the MIPS
6444         target.
6445         * gdbarch.h: Regenerate.
6446         * gdbarch.c: Regenerate.
6447
6448 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6449
6450         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6451
6452 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6453
6454         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6455         parameter in call to amd64_target_description.
6456         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6457         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6458         (amd64fbsd_init_abi): Likewise.
6459         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6460         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6461         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6462         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6463
6464 2018-06-29  Pedro Alves  <palves@redhat.com>
6465
6466         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6467         "segments" parameter.
6468         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6469         (_initialize_amd64_tdep): Update call to
6470         amd64_create_target_description.
6471         (amd64_target_description): Add "segments" parameter.  Adjust
6472         the implementation to use it.
6473         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6474         call to amd64_create_target_description.
6475         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6476         * gdb/arch/amd64.h (amd64_create_target_description): Add
6477         "segments" register.
6478         * gdb/arch/amd64.c (amd64_create_target_description): Add
6479         "segments" parameter.  Call create_feature_i386_64bit_segments
6480         only if SEGMENTS is true.
6481         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6482         call to amd64_create_target_description.
6483
6484 2018-06-29  Pedro Alves  <palves@redhat.com>
6485
6486         * thread.c (thread_target_id_str): New, factored out from ...
6487         (print_thread_info_1): ... here.  Use it to compute the max
6488         "Target Id" column width.
6489
6490 2018-06-29  Pedro Alves  <palves@redhat.com>
6491
6492         * remote.c (remote_target::extra_thread_info): Delete
6493         'display_buf' and 'n' locals.  from the cache, regardless of
6494         packet mechanims is in use.  Use cache for qThreadExtra and qP
6495         methods too.
6496
6497 2018-06-29  Pedro Alves  <palves@redhat.com>
6498
6499         * blockframe.c (find_pc_sect_containing_function): New function.
6500         * breakpoint.c (print_breakpoint_location): Don't call
6501         find_pc_sect_function.
6502         * linespec.c (create_sals_line_offset): Record the location's
6503         symbol in the sal.
6504         * linespec.c (convert_address_location_to_sals): Fill in sal's
6505         symbol with find_pc_sect_containing_function.
6506         * symtab.c (find_function_start_sal): Rename to ...
6507         (find_function_start_sal_1): ... this.
6508         (find_function_start_sal): Reimplement as wrapper around
6509         find_function_start_sal_1, and use
6510         find_pc_sect_containing_function to fill in the sal's symbol.
6511         (find_function_start_sal(symbol*, bool)): Adjust.
6512         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6513         comments.
6514         (find_pc_sect_containing_function): Declare.
6515
6516 2018-06-29  Pedro Alves  <palves@redhat.com>
6517
6518         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6519         true if the the location has no symbol.
6520
6521 2018-06-28  Tom Tromey  <tom@tromey.com>
6522
6523         * NEWS: Mention --enable-codesign.
6524         * silent-rules.mk (ECHO_SIGN): New variable.
6525         * configure.ac: Add --enable-codesign.
6526         * configure: Rebuild.
6527         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6528         (gdb$(EXEEXT)): Optionally invoke codesign.
6529
6530 2018-06-28  Pedro Alves  <palves@redhat.com>
6531
6532         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6533         comments.
6534         (switch_to_thread_no_regs): Adjust comment.
6535         * infcmd.c (stop_pc): Delete.
6536         (post_create_inferior, info_program_command): Replace references
6537         to stop_pc with references to thread_info->suspend.stop_pc.
6538         * inferior.h (stop_pc): Delete declaration.
6539         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6540         (handle_inferior_event_1, handle_signal_stop)
6541         (process_event_stop_test, keep_going_stepped_thread)
6542         (handle_step_into_function, handle_step_into_function_backward)
6543         (print_stop_location): Replace references to stop_pc with
6544         references to thread_info->suspend.stop_pc.
6545         (struct infcall_suspend_state) <stop_pc>: Delete field.
6546         (save_infcall_suspend_state, restore_infcall_suspend_state):
6547         Remove references to inf_stat->stop_pc.
6548         * linux-fork.c (fork_load_infrun_state): Likewise.
6549         * record-btrace.c (record_btrace_set_replay): Likewise.
6550         * record-full.c (record_full_goto_entry): Likewise.
6551         * remote.c (print_one_stopped_thread): Likewise.
6552         * target.c (target_resume): Extend comment.
6553         * thread.c (set_executing_thread): New.
6554         (set_executing): Use it.
6555         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6556         Remove references to stop_pc.
6557
6558 2018-06-28  Pedro Alves  <palves@redhat.com>
6559
6560         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6561         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6562
6563 2018-06-28  Tom Tromey  <tom@tromey.com>
6564
6565         * coffread.c (coff_symfile_finish): Update.
6566         * xcoffread.c (xcoff_symfile_finish): Update.
6567         * elfread.c (elf_symfile_finish): Update.
6568         * symfile.h (dwarf2_free_objfile): Don't declare.
6569         * dwarf2read.c (_initialize_dwarf2_read): Use
6570         register_objfile_data_with_cleanup.
6571         (dwarf2_free_objfile): Now static.  Change signature.
6572
6573 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6574
6575         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6576         option "-o" to add-symbol-file-load to add an offset to each
6577         section's load address.
6578         * symfile.c (set_objfile_default_section_offset): New function.
6579
6580 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6581
6582         * symfile.c (add_symbol_file_command): Make sure that sections
6583         with the same name are sorted in the same order.
6584
6585 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6586
6587         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6588         require the second argument.  If omitted, load sections at the
6589         addresses specified in the file.
6590
6591 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6592
6593         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6594         (_initialize_symfile): Add option "-o" to symbol-file to add an
6595         offset to each section of the symbol file.
6596
6597 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6598
6599         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6600
6601 2018-06-27  Tom Tromey  <tom@tromey.com>
6602
6603         * stack.c (_initialize_stack): Update "func" help text.
6604
6605 2018-06-27  Tom Tromey  <tom@tromey.com>
6606
6607         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6608         std::vector.
6609         (unwind_infopy_str, pyuw_create_unwind_info)
6610         (unwind_infopy_add_saved_register, pyuw_sniffer)
6611         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6612         Update.
6613         (struct saved_reg): Add constructor.
6614         <value>: Now a gdbpy_ref<>.
6615
6616 2018-06-27  Tom Tromey  <tom@tromey.com>
6617
6618         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6619
6620 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6621
6622         * gdb-gdb.py.in: Format using autopep8.
6623
6624 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6625
6626         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6627         (type_lookup_function): Recognize CORE_ADDR values.
6628
6629 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6630
6631         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6632         print tag_name.
6633
6634 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6635
6636         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6637         <__lt__>: Add.
6638
6639 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6640
6641         * gdb-gdb.py: Move to...
6642         * gdb-gdb.py.in: ... here.
6643         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6644         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6645         dependencies.
6646         (distclean): Remove gdb-gdb.py when cleaning.
6647         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6648         * configure: Re-generate.
6649
6650 2018-06-27  Pedro Alves  <palves@redhat.com>
6651
6652         * proc-service.c (get_ps_regcache): New.
6653         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6654         (ps_lsetfpregs): Use it.
6655
6656 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6657
6658         PR gdb/21695
6659         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6660         declaration.
6661         (dwarf_decode_lines_1): Adjust.
6662
6663 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6664
6665         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6666         override.
6667         <info_proc>: Likewise.
6668
6669 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6670
6671         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6672         to windows_fetch_one_register, and only handle the case of
6673         fetching one register.  Move the code that reloads the context
6674         and iterates over all registers if R is negative to...
6675         (windows_nat_target::fetch_registers): ... here.
6676         (do_windows_store_inferior_registers): Rename to
6677         windows_store_one_register, and only handle the case of storing
6678         one register.  Move the code that handles the case where r is
6679         negative to...
6680         (windows_nat_target::store_registers) ... here.
6681
6682 2018-06-26  Tom Tromey  <tom@tromey.com>
6683
6684         PR rust/22574:
6685         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6686         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6687         Update.
6688         (rust_internal_print_type): Add podata parameter.
6689         (rust_print_type): Update.
6690
6691 2018-06-26  Tom Tromey  <tom@tromey.com>
6692
6693         * typeprint.h (struct print_offset_data) <update, finish,
6694         maybe_print_hole>: New methods.
6695         <indentation>: New constant.
6696         * typeprint.c (print_offset_data::indentation): Define.
6697         (print_offset_data::maybe_print_hole, print_offset_data::update)
6698         (print_offset_data::finish): Move from c-typeprint.c and rename.
6699         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6700         (print_spaces_filtered_with_print_options): Update.
6701         (c_print_type_union_field_offset, maybe_print_hole)
6702         (c_print_type_struct_field_offset): Move to typeprint.c and
6703         rename.
6704         (c_type_print_base_struct_union): Update.
6705
6706 2018-06-25  Pedro Alves  <palves@redhat.com>
6707
6708         * gdbthread.h (thread_info_ref, delete_thread)
6709         (delete_thread_silent, first_thread_of_inferior)
6710         (any_thread_of_inferior, switch_to_thread)
6711         (enable_thread_stack_temporaries)
6712         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6713         (get_last_thread_stack_temporary)
6714         (value_in_thread_stack_temporaries, can_access_registers_thread):
6715         Spell out "struct thread_info" instead of just "thread_info".
6716         * inferior.h (notice_new_inferior): Likewise.
6717
6718 2018-06-25  Pedro Alves  <palves@redhat.com>
6719
6720         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6721         pass thread_info pointer to delete_thread.
6722         (windows_nat_target::detach): Pass inferior pointer to
6723         detach_inferior.
6724         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6725         delete_thread.
6726         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6727         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6728         and pass a thread_info pointer to delete_thread.
6729         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6730         pass thread_info pointer to delete_thread.
6731         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6732         delete_thread_silent call.
6733         * procfs.c (procfs_target::detach): Pass inferior pointer to
6734         detach_inferior.
6735         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6736         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6737         delete_thread_silent call.
6738         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6739         pass thread_info pointer to delete_thread.
6740         (windows_nat_target::detach): Pass inferior pointer to
6741         delete_inferior.
6742
6743 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6744
6745         * regcache.c (readable_regcache::read_part): Fix asserts.
6746         (reg_buffer::raw_collect_part): New function.
6747         (regcache::write_part): Fix asserts.
6748         (reg_buffer::raw_supply_part): New function.
6749         (regcache::transfer_regset_register): New helper function.
6750         (regcache::transfer_regset): Call new functions.
6751         (regcache_supply_regset): Use gdb_byte*.
6752         (regcache::supply_regset): Likewise.
6753         (regcache_collect_regset): Likewise.
6754         (regcache::collect_regset): Likewise.
6755         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6756         (reg_buffer::raw_supply_part): Likewise.
6757         (regcache::transfer_regset_register): Likewise.
6758         (regcache::transfer_regset): Use gdb_byte*.
6759
6760 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6761
6762         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6763
6764 2018-06-21  Pedro Alves  <palves@redhat.com>
6765
6766         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6767         instead of a ptid_t.  All callers adjusted.
6768         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6769         adjusted.
6770         (print_ada_task_info, display_current_task_id, task_command_1):
6771         Adjust.
6772         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6773         inferior_thread.
6774         (breakpoint_kind): Adjust.
6775         (remove_breakpoints_pid): Rename to ...
6776         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6777         pointer.  All callers adjusted.
6778         (bpstat_clear_actions): Use inferior_thread.
6779         (get_bpstat_thread): New.
6780         (bpstat_do_actions): Use it.
6781         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6782         to take a thread_info pointer.  All callers adjusted.
6783         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6784         (breakpoint_re_set_thread): Use inferior_thread.
6785         * breakpoint.h (struct inferior): Forward declare.
6786         (bpstat_stop_status): Update.
6787         (remove_breakpoints_pid): Delete.
6788         (remove_breakpoints_inf): New.
6789         * bsd-uthread.c (bsd_uthread_target::wait)
6790         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6791         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6792         (maint_btrace_packet_history_cmd)
6793         (maint_btrace_clear_packet_history_cmd): Adjust.
6794         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6795         inferior_thread.
6796         * cli/cli-interp.c: Include "inferior.h".
6797         * common/refcounted-object.h (struct
6798         refcounted_object_ref_policy): New.
6799         * compile/compile-object-load.c: Include gdbthread.h.
6800         (store_regs): Use inferior_thread.
6801         * corelow.c (core_target::close): Use current_inferior.
6802         (core_target_open): Adjust to use first_thread_of_inferior and use
6803         the current inferior.
6804         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6805         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6806         <thread>: ... this new field.  All references adjusted.
6807         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6808         Take a thread_info pointer instead of a ptid_t.
6809         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6810         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6811         thread_info pointer instead of a ptid_t.
6812         * elfread.c: Include "inferior.h".
6813         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6814         Use inferior_thread.
6815         * eval.c (evaluate_subexp): Likewise.
6816         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6817         inferior_thread.
6818         * gdb_proc_service.h (struct thread_info): Forward declare.
6819         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6820         <thread>: ... this new field.  All references adjusted.
6821         * gdbarch.h, gdbarch.c: Regenerate.
6822         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6823         'thread' parameter.  All implementations and callers adjusted.
6824         * gdbthread.h (thread_info) <set_running>: New method.
6825         (delete_thread, delete_thread_silent): Take a thread_info pointer
6826         instead of a ptid.
6827         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6828         (first_thread_of_process): Delete, replaced by ...
6829         (first_thread_of_inferior): ... this new function.  All callers
6830         adjusted.
6831         (any_live_thread_of_process): Delete, replaced by ...
6832         (any_live_thread_of_inferior): ... this new function.  All callers
6833         adjusted.
6834         (switch_to_thread, switch_to_no_thread): Declare.
6835         (is_executing): Delete.
6836         (enable_thread_stack_temporaries): Update comment.
6837         <enable_thread_stack_temporaries>: Take a thread_info pointer
6838         instead of a ptid_t.  Incref the thread.
6839         <~enable_thread_stack_temporaries>: Decref the thread.
6840         <m_ptid>: Delete
6841         <m_thr>: New.
6842         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6843         (get_last_thread_stack_temporary)
6844         (value_in_thread_stack_temporaries, can_access_registers_thread):
6845         Take a thread_info pointer instead of a ptid_t.  All callers
6846         adjusted.
6847         * infcall.c (get_call_return_value): Use inferior_thread.
6848         (run_inferior_call): Work with thread pointers instead of ptid_t.
6849         (call_function_by_hand_dummy): Work with thread pointers instead
6850         of ptid_t.  Use thread_info_ref.
6851         * infcmd.c (proceed_thread_callback): Access thread's state
6852         directly.
6853         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6854         access thread's state directly.
6855         (continue_command): Use inferior_thread.
6856         (info_program_command): Use find_thread_ptid and access thread
6857         state directly.
6858         (proceed_after_attach_callback): Use thread state directly.
6859         (notice_new_inferior): Take a thread_info pointer instead of a
6860         ptid_t.  All callers adjusted.
6861         (exit_inferior): Take an inferior pointer instead of a pid.  All
6862         callers adjusted.
6863         (exit_inferior_silent): New.
6864         (detach_inferior): Delete.
6865         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6866         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6867         (detach_inferior_command, kill_inferior_command): Use
6868         find_inferior_id instead of valid_gdb_inferior_id and
6869         gdb_inferior_id_to_pid.
6870         (inferior_command): Use inferior and thread pointers.
6871         * inferior.h (struct thread_info): Forward declare.
6872         (notice_new_inferior): Take a thread_info pointer instead of a
6873         ptid_t.  All callers adjusted.
6874         (detach_inferior): Delete declaration.
6875         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6876         instead of a pid.  All callers adjusted.
6877         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6878         (valid_gdb_inferior_id): Delete.
6879         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6880         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6881         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6882         ...
6883         <inf>: ... this new field.
6884         <step_ptid>: Delete, replaced by ...
6885         <step_thread>: ... this new field.
6886         (get_displaced_stepping_state): Take an inferior pointer instead
6887         of a pid.  All callers adjusted.
6888         (displaced_step_in_progress_any_inferior): Adjust.
6889         (displaced_step_in_progress_thread): Take a thread pointer instead
6890         of a ptid_t.  All callers adjusted.
6891         (displaced_step_in_progress, add_displaced_stepping_state): Take
6892         an inferior pointer instead of a pid.  All callers adjusted.
6893         (get_displaced_step_closure_by_addr): Adjust.
6894         (remove_displaced_stepping_state): Take an inferior pointer
6895         instead of a pid.  All callers adjusted.
6896         (displaced_step_prepare_throw, displaced_step_prepare)
6897         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6898         All callers adjusted.
6899         (start_step_over): Adjust.
6900         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6901         displaced step queue.
6902         (do_target_resume): Adjust.
6903         (fetch_inferior_event): Use inferior_thread.
6904         (context_switch, get_inferior_stop_soon): Take an
6905         execution_control_state pointer instead of a ptid_t.  All callers
6906         adjusted.
6907         (switch_to_thread_cleanup): Delete.
6908         (stop_all_threads): Use scoped_restore_current_thread.
6909         * inline-frame.c: Include "gdbthread.h".
6910         (inline_state) <inline_state>: Take a thread pointer instead of a
6911         ptid_t.  All callers adjusted.
6912         <ptid>: Delete, replaced by ...
6913         <thread>: ... this new field.
6914         (find_inline_frame_state): Take a thread pointer instead of a
6915         ptid_t.  All callers adjusted.
6916         (skip_inline_frames, step_into_inline_frame)
6917         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6918         pointer instead of a ptid_t.  All callers adjusted.
6919         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6920         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6921         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6922         pointers directly.
6923         * linux-nat.c (get_detach_signal): Likewise.
6924         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6925         (thread_db_notice_clone): Adjust.
6926         (thread_db_find_new_threads_silently)
6927         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6928         a thread pointer instead of a ptid_t.  All callers adjusted.
6929         * mi/mi-cmd-var.c: Include "inferior.h".
6930         (mi_cmd_var_update_iter): Update to use thread pointers.
6931         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6932         inferior directly.
6933         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6934         out to ...
6935         (mi_output_running): ... this new function.
6936         (mi_on_resume_1): Adjust to use it.
6937         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6938         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6939         directly.
6940         (interrupt_thread_callback): : Adjust to use thread and inferior
6941         pointers.
6942         * proc-service.c: Include "gdbthread.h".
6943         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6944         * progspace-and-thread.c: Include "inferior.h".
6945         * progspace.c: Include "inferior.h".
6946         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6947         hold a reference to an inferior_object.
6948         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6949         inferior_thread.
6950         * python/py-inferior.c (struct inferior_object): Give the type a
6951         tag name instead of a typedef.
6952         (python_on_normal_stop): No need to check if the current thread is
6953         listed.
6954         (inferior_to_inferior_object): Change return type to
6955         inferior_object.  All callers adjusted.
6956         (find_thread_object): Delete, bits factored out to ...
6957         (thread_to_thread_object): ... this new function.
6958         * python/py-infthread.c (create_thread_object): Use
6959         inferior_to_inferior_object.
6960         (thpy_is_stopped): Use thread pointer directly.
6961         (gdbpy_selected_thread): Use inferior_thread.
6962         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6963         field, replaced with ...
6964         <thread>: ... this new field.  All users adjusted.
6965         (btpy_insn_or_gap_new): Drop const.
6966         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6967         callers adjusted.
6968         * python/py-record.c: Include "gdbthread.h".
6969         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6970         a ptid_t.  All callers adjusted.
6971         (gdbpy_current_recording): Use inferior_thread.
6972         * python/py-record.h (recpy_record_object) <ptid>: Delete
6973         field, replaced with ...
6974         <thread>: ... this new field.  All users adjusted.
6975         (recpy_element_object) <ptid>: Delete
6976         field, replaced with ...
6977         <thread>: ... this new field.  All users adjusted.
6978         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6979         a ptid_t.  All callers adjusted.
6980         * python/py-threadevent.c: Include "gdbthread.h".
6981         (get_event_thread): Use thread_to_thread_object.
6982         * python/python-internal.h (struct inferior_object): Forward
6983         declare.
6984         (find_thread_object, find_inferior_object): Delete declarations.
6985         (thread_to_thread_object, inferior_to_inferior_object): New
6986         declarations.
6987         * record-btrace.c: Include "inferior.h".
6988         (require_btrace_thread): Use inferior_thread.
6989         (record_btrace_frame_sniffer)
6990         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6991         (get_thread_current_frame): Use scoped_restore_current_thread and
6992         switch_to_thread.
6993         (get_thread_current_frame): Use thread pointer directly.
6994         (record_btrace_replay_at_breakpoint): Use thread's inferior
6995         pointer directly.
6996         * record-full.c: Include "inferior.h".
6997         * regcache.c: Include "gdbthread.h".
6998         (get_thread_arch_regcache): Use the inferior's address space
6999         directly.
7000         (get_thread_regcache, registers_changed_thread): New.
7001         * regcache.h (get_thread_regcache(thread_info *thread)): New
7002         overload.
7003         (registers_changed_thread): New.
7004         (remote_target) <remote_detach_1>: Swap order of parameters.
7005         (remote_add_thread): <remote_add_thread>: Return the new thread.
7006         (get_remote_thread_info(ptid_t)): New overload.
7007         (remote_target::remote_notice_new_inferior): Use thread pointers
7008         directly.
7009         (remote_target::process_initial_stop_replies): Use
7010         thread_info::set_running.
7011         (remote_target::remote_detach_1, remote_target::detach)
7012         (extended_remote_target::detach): Adjust.
7013         * stack.c (frame_show_address): Use inferior_thread.
7014         * target-debug.h (target_debug_print_thread_info_pp): New.
7015         * target-delegates.c: Regenerate.
7016         * target.c (default_thread_address_space): Delete.
7017         (memory_xfer_partial_1): Use current_inferior.
7018         (target_detach): Use current_inferior.
7019         (target_thread_address_space): Delete.
7020         (generic_mourn_inferior): Use current_inferior.
7021         * target.h (struct target_ops) <thread_address_space>: Delete.
7022         (target_thread_address_space): Delete.
7023         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7024         pointers directly.
7025         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7026         thread pointer instead of a ptid_t.  Adjust all callers.
7027         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7028         (first_thread_of_process): Delete, replaced by ...
7029         (first_thread_of_inferior): ... this new function.  All callers
7030         adjusted.
7031         (any_thread_of_process): Rename to ...
7032         (any_thread_of_inferior): ... this, and take an inferior pointer.
7033         (any_live_thread_of_process): Rename to ...
7034         (any_live_thread_of_inferior): ... this, and take an inferior
7035         pointer.
7036         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7037         (value_in_thread_stack_temporaries)
7038         (get_last_thread_stack_temporary): Take a thread pointer instead
7039         of a ptid_t.  Adjust all callers.
7040         (thread_info::set_running): New.
7041         (validate_registers_access): Use inferior_thread.
7042         (can_access_registers_ptid): Rename to ...
7043         (can_access_registers_thread): ... this, and take a thread
7044         pointer.
7045         (print_thread_info_1): Adjust to compare thread pointers instead
7046         of ptids.
7047         (switch_to_no_thread, switch_to_thread): Make extern.
7048         (scoped_restore_current_thread::~scoped_restore_current_thread):
7049         Use m_thread pointer directly.
7050         (scoped_restore_current_thread::scoped_restore_current_thread):
7051         Use inferior_thread.
7052         (thread_command): Use thread pointer directly.
7053         (thread_num_make_value_helper): Use inferior_thread.
7054         * top.c (execute_command): Use inferior_thread.
7055         * tui/tui-interp.c: Include "inferior.h".
7056         * varobj.c (varobj_create): Use inferior_thread.
7057         (value_of_root_1): Use find_thread_global_id instead of
7058         global_thread_id_to_ptid.
7059
7060 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7061
7062         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7063         possible.
7064         (regcache::write_part): Likewise.
7065         (readable_regcache::cooked_read_part): Update comment.
7066         (readable_regcache::cooked_write_part): Likewise.
7067         * regcache.h: (readable_regcache::read_part): Likewise.
7068         (regcache::write_part): Likewise.
7069
7070 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7071             Dirk Schubert  <dirk.schubert@arm.com>
7072
7073         * aarch64-linux-nat.c (post_attach): New.
7074         (aarch64_linux_nat_target::post_attach): Override post_attach to
7075         record the number of hardware debug registers.
7076
7077 2018-06-20  Tom Tromey  <tom@tromey.com>
7078
7079         * python/py-param.c (add_setshow_generic): Make parameters const.
7080         (parmpy_init): Update.
7081
7082 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7083
7084         * regcache.h (regcache_cooked_read_ftype): Rename to...
7085         (register_read_ftype): ...this, change type to function_view.
7086         (class reg_buffer) <save>: Remove src parameter.
7087         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7088         parameter non-const in first overload.  Remove src parameter in
7089         second overload.
7090         * regcache.c (do_cooked_read): Remove.
7091         (readonly_detached_regcache::readonly_detached_regcache): Make
7092         parameter non-const, adjust call to other constructor.
7093         (reg_buffer::save): Remove src parameter.
7094         * frame.c (do_frame_register_read): Remove.
7095         (frame_save_as_regcache): Use lambda function.
7096         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7097         parameter to ppu2spu_data *.
7098         (ppu2spu_sniffer): Use lambda function.
7099
7100 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7101
7102         * record-full.c (record_full_target::insert_breakpoint): Remove
7103         "struct" keyword, add const.
7104
7105 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7106
7107         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7108         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7109         * configure.ac: Remove AC_PREREQ, add missing quoting.
7110         * gnulib/configure.ac: Modernize usage of
7111         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7112         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7113         (AUTOMAKE_VERSION): Bump to 1.15.1.
7114         * configure: Re-generate.
7115         * config.in: Re-generate.
7116         * aclocal.m4: Re-generate.
7117         * gnulib/aclocal.m4: Re-generate.
7118         * gnulib/config.in: Re-generate.
7119         * gnulib/configure: Re-generate.
7120         * gnulib/import/Makefile.in: Re-generate.
7121
7122 2018-06-19  Pedro Alves  <palves@redhat.com>
7123
7124         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7125         (lookup_minimal_symbol_by_pc_section): ... here with
7126         gdb_assert_not_reached added.
7127
7128 2018-06-19  Pedro Alves  <palves@redhat.com>
7129
7130         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7131         parameter with a block parameter.  Compare location's block symbol
7132         with the frame's block instead of addresses.
7133         (skip_inline_frames): Pass the current block instead of the
7134         frame's address.  Break out as soon as we determine the frame
7135         should not be skipped.
7136
7137 2018-06-18  Tom Tromey  <tom@tromey.com>
7138
7139         * solib-aix.c (solib_aix_get_section_offsets): Return
7140         unique_xmalloc_ptr.
7141         (solib_aix_solib_create_inferior_hook): Update.
7142
7143 2018-06-18  Tom Tromey  <tom@tromey.com>
7144
7145         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7146
7147 2018-06-18  Tom Tromey  <tom@tromey.com>
7148
7149         * solib-frv.c (frv_relocate_main_executable): Use
7150         unique_xmalloc_ptr.
7151         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7152         unique_xmalloc_ptr.
7153
7154 2018-06-18  Tom Tromey  <tom@tromey.com>
7155
7156         * objfiles.h (inhibit_section_map_updates): Update.
7157         (resume_section_map_updates, resume_section_map_updates_cleanup):
7158         Remove.
7159         * solib-svr4.c (svr4_handle_solib_event): Update.
7160         * objfiles.c (inhibit_section_map_updates): Return
7161         scoped_restore_tmpl<int>.
7162         (resume_section_map_updates, resume_section_map_updates_cleanup):
7163         Remove.
7164
7165 2018-06-18  Tom Tromey  <tom@tromey.com>
7166
7167         * valprint.h (read_string): Update.
7168         * valprint.c (read_string): Change type of "buffer".
7169         (val_print_string): Update.
7170         * python/py-value.c (valpy_string): Update.
7171         * language.h (struct language_defn) <la_get_string>: Change
7172         type of "buffer".
7173         (default_get_string, c_get_string): Update.
7174         * language.c (default_get_string): Change type of "buffer".
7175         * guile/scm-value.c (gdbscm_value_to_string): Update.
7176         * c-lang.c (c_get_string): Change type of "buffer".
7177
7178 2018-06-18  Tom Tromey  <tom@tromey.com>
7179
7180         * ser-mingw.c (struct pipe_state_destroyer): New.
7181         (pipe_state_up): New typedef.
7182         (cleanup_pipe_state): Remove.
7183         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7184
7185 2018-06-18  Tom Tromey  <tom@tromey.com>
7186
7187         * rust-lang.h (rust_yyerror): Don't declare.
7188         * rust-lang.c (rust_language_defn): Update.
7189         * rust-exp.y (yyerror): Now static.
7190         * parse.c (parse_exp_in_context_1): Update.
7191         * p-lang.h (p_yyerror): Don't declare.
7192         * p-lang.c (p_language_defn): Update.
7193         * p-exp.y (yyerror): Now static.
7194         * opencl-lang.c (opencl_language_defn): Update.
7195         * objc-lang.c (objc_language_defn): Update.
7196         * m2-lang.h (m2_yyerror): Don't declare.
7197         * m2-lang.c (m2_language_defn): Update.
7198         * m2-exp.y (yyerror): Now static.
7199         * language.h (struct language_defn) <la_error>: Remove.
7200         * language.c (unk_lang_error): Remove.
7201         (unknown_language_defn, auto_language_defn): Remove.
7202         * go-lang.h (go_yyerror): Don't declare.
7203         * go-lang.c (go_language_defn): Update.
7204         * go-exp.y (yyerror): Now static.
7205         * f-lang.h (f_yyerror): Don't declare.
7206         * f-lang.c (f_language_defn): Update.
7207         * f-exp.y (yyerror): Now static.
7208         * d-lang.h (d_yyerror): Don't declare.
7209         * d-lang.c (d_language_defn): Update.
7210         * d-exp.y (yyerror): Now static.
7211         * c-lang.h (c_yyerror): Don't declare.
7212         * c-lang.c (c_language_defn, cplus_language_defn)
7213         (asm_language_defn, minimal_language_defn): Update.
7214         * c-exp.y (yyerror): Now static.
7215         * ada-lang.h (ada_yyerror): Don't declare.
7216         * ada-lang.c (ada_language_defn): Update.
7217         * ada-exp.y (yyerror): Now static.
7218
7219 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7220
7221         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7222         (store_sveregs_to_thread): Likewise.
7223         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7224         (aarch64_linux_store_inferior_registers): Likewise.
7225         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7226         function.
7227         (aarch64_sve_regs_copy_to_regcache): Likewise.
7228         (aarch64_sve_regs_copy_from_regcache): Likewise.
7229         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7230         declaration.
7231         (aarch64_sve_regs_copy_to_regcache): Likewise.
7232         (aarch64_sve_regs_copy_from_regcache): Likewise.
7233         (sve_context): Structure from Linux headers.
7234         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7235         (SVE_SIG_ZREG_SIZE): Likewise.
7236         (SVE_SIG_PREG_SIZE): Likewise.
7237         (SVE_SIG_FFR_SIZE): Likewise.
7238         (SVE_SIG_REGS_OFFSET): Likewise.
7239         (SVE_SIG_ZREGS_OFFSET): Likewise.
7240         (SVE_SIG_ZREG_OFFSET): Likewise.
7241         (SVE_SIG_ZREGS_SIZE): Likewise.
7242         (SVE_SIG_PREGS_OFFSET): Likewise.
7243         (SVE_SIG_PREG_OFFSET): Likewise.
7244         (SVE_SIG_PREGS_SIZE): Likewise.
7245         (SVE_SIG_FFR_OFFSET): Likewise.
7246         (SVE_SIG_REGS_SIZE): Likewise.
7247         (SVE_SIG_CONTEXT_SIZE): Likewise.
7248         (SVE_PT_REGS_MASK): Likewise.
7249         (SVE_PT_REGS_FPSIMD): Likewise.
7250         (SVE_PT_REGS_SVE): Likewise.
7251         (SVE_PT_VL_INHERIT): Likewise.
7252         (SVE_PT_VL_ONEXEC): Likewise.
7253         (SVE_PT_REGS_OFFSET): Likewise.
7254         (SVE_PT_FPSIMD_OFFSET): Likewise.
7255         (SVE_PT_FPSIMD_SIZE): Likewise.
7256         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7257         (SVE_PT_SVE_PREG_SIZE): Likewise.
7258         (SVE_PT_SVE_FFR_SIZE): Likewise.
7259         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7260         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7261         (__SVE_SIG_TO_PT): Likewise.
7262         (SVE_PT_SVE_OFFSET): Likewise.
7263         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7264         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7265         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7266         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7267         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7268         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7269         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7270         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7271         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7272         (SVE_PT_SVE_SIZE): Likewise.
7273         (SVE_PT_SIZE): Likewise.
7274         (HAS_SVE_STATE): New define.
7275
7276 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7277
7278         * nat/aarch64-sve-linux-sigcontext.h: New file.
7279         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7280         new files.
7281         (SVE_VQ_MIN): Likewise.
7282         (SVE_VQ_MAX): Likewise.
7283         (SVE_VL_MIN): Likewise.
7284         (SVE_VL_MAX): Likewise.
7285         (SVE_NUM_ZREGS): Likewise.
7286         (SVE_NUM_PREGS): Likewise.
7287         (sve_vl_valid): Likewise.
7288         (struct user_sve_header): Likewise.
7289
7290 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7291             Richard Bunt <Richard.Bunt@arm.com>
7292
7293         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7294         was requested by GDB.
7295
7296 2018-06-15  Tom de Vries  <tdevries@suse.de>
7297
7298         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7299
7300 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7301
7302         * gnulib/update-gnulib.sh: Print expected versions of
7303         autoconf/aclocal.
7304
7305 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7306
7307         * arch-utils.c (default_type_align): Use type_length_units.
7308         * gdbtypes.c (type_align): Use type_length_units.
7309
7310 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7311
7312         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7313         of 'define' command.
7314
7315 2018-06-14  Tom de Vries  <tdevries@suse.de>
7316
7317         PR cli/22573
7318         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7319         get_no_prettyformat_print_options.
7320
7321 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7322
7323         * sparc-nat.h: Include target.h.
7324         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7325         <fetch_registers>: Remove this argument in function call.
7326         <store_registers>: Remove this argument in function call, remove
7327         extra semicolon.
7328         <low_forget_process>: Call sparc64_forget_process instead of
7329         sparc_forget_process.
7330
7331 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7332
7333         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7334         (procfs_target::make_corefile_notes): Adjust to new
7335         target_read_alloc return type.
7336
7337 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7338             Stephen Roberts  <stephen.roberts@arm.com>
7339
7340         PR gdb/22882
7341         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7342         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7343         Move should_notify_stop local into more inner scope.
7344
7345 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7346             Stephen Roberts  <stephen.roberts@arm.com>
7347
7348         PR gdb/22882
7349         * infrun.c (resume_1): Add call to mark_async_event_handler.
7350
7351 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7352
7353         * infrun.c (do_target_wait): Change old version of $pc printed.
7354
7355 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7356
7357         * dwarf2read.c (read_index_from_section): Rename to...
7358         (read_gdb_index_from_section): ... this, update all callers.
7359         (dwarf2_read_index): Rename to...
7360         (dwarf2_read_gdb_index): ... this, update all callers.
7361
7362 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7363
7364         * hppa-linux-nat.c
7365         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7366         hppa_linux_nat_target::fetch_registers.
7367
7368 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7369
7370         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7371         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7372         (AARCH64_DWARF_SVE_FFR): Likewise.
7373         (AARCH64_DWARF_SVE_P0): Likewise.
7374         (AARCH64_DWARF_SVE_Z0): Likewise.
7375
7376 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7377
7378         * common/common-regcache.h (raw_compare): New function.
7379         * regcache.c (regcache::raw_compare): Likewise.
7380         * regcache.h (regcache::raw_compare): New declaration.
7381
7382 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7383
7384         * common/common-regcache.h (reg_buffer_common): New structure.
7385         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7386         (reg_buffer::raw_supply): Likewise.
7387         (reg_buffer::raw_supply_integer): Likewise.
7388         (reg_buffer::raw_supply_zeroed): Likewise.
7389         (reg_buffer::raw_collect): Likewise.
7390         (reg_buffer::raw_collect_integer): Likewise.
7391         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7392         (reg_buffer::raw_supply): Likewise.
7393         (reg_buffer::raw_supply_integer): Likewise.
7394         (reg_buffer::raw_supply_zeroed): Likewise.
7395         (reg_buffer::raw_collect): Likewise.
7396         (reg_buffer::raw_collect_integer): Likewise.
7397
7398 2018-06-10  Tom Tromey  <tom@tromey.com>
7399
7400         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7401         (class remote_state) <stop_reply_queue>: Now std::vector.
7402         (remote_state::~remote_state)
7403         (remote_target::stop_reply_queue_length): Update.
7404         (struct queue_iter_param, remove_child_of_pending_fork)
7405         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7406         (check_pending_event_prevents_wildcard_vcont_callback)
7407         (remove_stop_reply_for_inferior)
7408         (remove_stop_reply_of_remote_state)
7409         (remote_notif_remove_once_on_match)
7410         (stop_reply_match_ptid_and_ws)
7411         (remote_kill_child_of_pending_fork): Remove.
7412         (remote_target::remove_new_fork_children)
7413         (remote_target::check_pending_events_prevent_wildcard_vcont)
7414         (remote_target::discard_pending_stop_replies)
7415         (remote_target::discard_pending_stop_replies_in_queue)
7416         (remote_target::remote_notif_remove_queued_reply)
7417         (remote_target::queued_stop_reply)
7418         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7419         (remote_target::wait, remote_target::kill_new_fork_children)
7420         (remote_target::async): Update.
7421
7422 2018-06-10  Tom Tromey  <tom@tromey.com>
7423
7424         * record-full.c (record_full_arch_list_cleanups): Remove.
7425         (record_full_message): Use try/catch.
7426         (record_full_wait_cleanups): Remove.
7427         (record_full_wait_1): Use try/catch.
7428         (record_full_restore): Likewise.
7429
7430 2018-06-10  Tom Tromey  <tom@tromey.com>
7431
7432         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7433         declare VEC.  Add constructor.
7434         <in_target_beneath>: Now bool.
7435         (record_full_breakpoints): Now a std::vector, static.
7436         (record_full_sync_record_breakpoints)
7437         (record_full_init_record_breakpoints)
7438         (record_full_target::insert_breakpoint)
7439         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7440
7441 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7442
7443         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7444         * serial.c (serial_interface_lookup): Remove struct keyword.
7445
7446 2018-06-10  Tom Tromey  <tom@tromey.com>
7447
7448         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7449         method.
7450         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7451         a method.
7452         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7453         method.
7454         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7455         "beneath" as a method.
7456         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7457         Use "beneath" as a method.
7458
7459 2018-06-10  Tom Tromey  <tom@tromey.com>
7460
7461         * tracefile.c (struct trace_file_writer_deleter): New.
7462         <operator()>: Rename from trace_file_writer_xfree.
7463         (trace_file_writer_up): New typedef.
7464         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7465
7466 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7467
7468         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7469         <m_registers, m_register_status>: Change type to
7470         std::unique_ptr.
7471         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7472         XCNEWVEC.
7473
7474 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7475
7476         * common/common-regcache.h (enum register_status): Add
7477         underlying type "signed char".
7478         * regcache.h (reg_buffer) <m_register_status>: Change type to
7479         register_status *.
7480         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7481         register_status instead of signed char.
7482         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7483         (reg_buffer::get_register_status): Remove cast.
7484         (readable_regcache::raw_read): Remove cast.
7485         (readable_regcache::cooked_read): Remove cast.
7486
7487 2018-06-09  Tom Tromey  <tom@tromey.com>
7488
7489         * source.c (reverse_search_command, forward_search_command): Use
7490         scoped_fd.
7491
7492 2018-06-09  Tom Tromey  <tom@tromey.com>
7493
7494         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7495         (serial_ops_list): Now static, std::vector.
7496         (serial_interface_lookup, serial_add_interface): Update.
7497
7498 2018-06-09  Tom Tromey  <tom@tromey.com>
7499
7500         * dwarf2read.c (process_cu_includes): Update.
7501         (process_full_comp_unit): Update.
7502         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7503         std::vector.
7504
7505 2018-06-08  Paul Koning  <paul_koning@dell.com>
7506
7507         PR gdb/23252
7508
7509         * python/python.c (do_start_initialization):
7510         Avoid call to internal Python API.
7511         (init__gdb_module): New function.
7512
7513 2018-06-08  Gary Benson <gbenson@redhat.com>
7514
7515         * linux-thread-db.c (valprint.h): New include.
7516         (struct check_thread_db_info): New structure.
7517         (check_thread_db_on_load, tdb_testinfo): New static globals.
7518         (check_thread_db, check_thread_db_callback): New functions.
7519         (try_thread_db_load_1): Run integrity checks if requested.
7520         (maintenance_check_libthread_db): New function.
7521         (_initialize_thread_db): Register "maint check libthread-db"
7522         and "maint set/show check-libthread-db".
7523         * NEWS: Mention the above new commands.
7524
7525 2018-06-08  Tom Tromey  <tom@tromey.com>
7526
7527         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7528         now a method.
7529
7530 2018-06-08  Tom Tromey  <tom@tromey.com>
7531
7532         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7533
7534 2018-06-08  Tom Tromey  <tom@tromey.com>
7535
7536         * common/btrace-common.h (struct btrace_data): Add constructor,
7537         destructor, move assignment operator.
7538         <empty, clear, fini>: New methods.
7539         <format>: Initialize.
7540         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7541         (btrace_data_empty): Don't declare.
7542         * common/btrace-common.c (btrace_data_init): Remove.
7543         (btrace_data::fini): Rename from btrace_data_fini.
7544         (btrace_data::empty): Rename from btrace_data_empty.
7545         (btrace_data::clear): Rename from btrace_data_clear.  Return
7546         bool.
7547         * btrace.h (make_cleanup_btrace_data): Don't declare.
7548         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7549         (parse_xml_btrace): Update.
7550         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7551         (maint_btrace_clear_packet_history_cmd): Update.
7552
7553 2018-06-07  Pedro Alves  <palves@redhat.com>
7554
7555         * target.h (target_ops) <beneath>: Now a method.  All references
7556         updated.
7557         (class target_stack): New.
7558         * target.c (g_target_stack): New.
7559         (g_current_top_target): Delete.
7560         (current_top_target): Get the top target out of g_target_stack.
7561         (target_stack::push, target_stack::unpush): New.
7562         (push_target, unpush_target): Reimplement.
7563         (target_is_pushed): Reimplement in terms of g_target_stack.
7564         (target_ops::beneath, target_stack::find_beneath): New.
7565
7566 2018-06-07  Pedro Alves  <palves@redhat.com>
7567
7568         * target.h (find_target_beneath): Delete declaration.
7569         * target.c (find_target_beneath): Delete definition.
7570         * aix-thread.c: All callers of find_target_beneath adjusted to
7571         call target_ops::beneath instead.
7572         * bsd-uthread.c: Likewise.
7573         * linux-thread-db.c: Likewise.
7574         * ravenscar-thread.c: Likewise.
7575         * sol-thread.c: Likewise.
7576         * spu-multiarch.c: Likewise.
7577
7578 2018-06-07  Pedro Alves  <palves@redhat.com>
7579
7580         * target.h (target_ops) <beneath>: Now a method.  All references
7581         updated.
7582         (target_ops) <m_beneath>: New.
7583         * target.c (target_ops::beneath): New.
7584         * corelow.c: Adjust all references to target_ops::beneath.
7585         * linux-thread-db.c: Likewise.
7586         * make-target-delegates: Likewise.
7587         * record-btrace.c: Likewise.
7588         * record-full.c: Likewise.
7589         * remote.c: Likewise.
7590         * target.c: Likewise.
7591         * target-delegates.c: Regenerate.
7592
7593 2018-06-07  Pedro Alves  <palves@redhat.com>
7594
7595         * target.h (target_stack): Delete.
7596         (current_top_target): Declare function.
7597         * target.c (target_stack): Delete.
7598         (g_current_top_target): New.
7599         (current_top_target): New function.
7600         * auxv.c: Use current_top_target instead of target_stack
7601         throughout.
7602         * avr-tdep.c: Likewise.
7603         * breakpoint.c: Likewise.
7604         * corefile.c: Likewise.
7605         * elfread.c: Likewise.
7606         * eval.c: Likewise.
7607         * exceptions.c: Likewise.
7608         * frame.c: Likewise.
7609         * gdbarch-selftests.c: Likewise.
7610         * gnu-v3-abi.c: Likewise.
7611         * ia64-tdep.c: Likewise.
7612         * ia64-vms-tdep.c: Likewise.
7613         * infcall.c: Likewise.
7614         * infcmd.c: Likewise.
7615         * infrun.c: Likewise.
7616         * linespec.c: Likewise.
7617         * linux-tdep.c: Likewise.
7618         * minsyms.c: Likewise.
7619         * ppc-linux-nat.c: Likewise.
7620         * ppc-linux-tdep.c: Likewise.
7621         * procfs.c: Likewise.
7622         * regcache.c: Likewise.
7623         * remote.c: Likewise.
7624         * rs6000-tdep.c: Likewise.
7625         * s390-linux-nat.c: Likewise.
7626         * s390-tdep.c: Likewise.
7627         * solib-aix.c: Likewise.
7628         * solib-darwin.c: Likewise.
7629         * solib-dsbt.c: Likewise.
7630         * solib-spu.c: Likewise.
7631         * solib-svr4.c: Likewise.
7632         * solib-target.c: Likewise.
7633         * sparc-tdep.c: Likewise.
7634         * sparc64-tdep.c: Likewise.
7635         * spu-tdep.c: Likewise.
7636         * symfile.c: Likewise.
7637         * symtab.c: Likewise.
7638         * target-descriptions.c: Likewise.
7639         * target-memory.c: Likewise.
7640         * target.c: Likewise.
7641         * target.h: Likewise.
7642         * tracefile-tfile.c: Likewise.
7643         * tracepoint.c: Likewise.
7644         * valops.c: Likewise.
7645         * valprint.c: Likewise.
7646         * value.c: Likewise.
7647         * windows-tdep.c: Likewise.
7648         * mi/mi-main.c: Likewise.
7649
7650 2018-06-07  Tom Tromey  <tom@tromey.com>
7651
7652         * valprint.h (build_address_symbolic): Declare.
7653         * printcmd.c (print_address_symbolic): Update.
7654         (build_address_symbolic): Change "name" and "filename" to
7655         std::string.
7656         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7657         Update.
7658         * defs.h (build_address_symbolic): Remove declaration.
7659
7660 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7661
7662         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7663         (aarch64_vnv_type): Add function.
7664         (aarch64_pseudo_register_name): Add V regs for SVE.
7665         (aarch64_pseudo_register_type): Likewise.
7666         (aarch64_pseudo_register_reggroup_p): Likewise.
7667         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7668         (aarch64_pseudo_read_value): Add V regs for SVE.
7669         (aarch64_pseudo_write_2): Use V0 offset for SVE
7670         (aarch64_pseudo_write): Add V regs for SVE.
7671         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7672
7673 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7674
7675         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7676         (sve_vl_from_vq): Likewise.
7677
7678 2018-06-05  Tom Tromey  <tom@tromey.com>
7679
7680         * cli/cli-cmds.c (show_version): Update.
7681         * top.c (print_gdb_version): Add "interactive" parameter.
7682         Update.
7683         * main.c (captured_main_1): Update.
7684         * top.h (print_gdb_version): Add "interactive" parameter and a
7685         comment.
7686
7687 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7688
7689         * common/enum-flags.h: Add trailing semicolon to example in
7690         comment.
7691
7692 2018-06-05  Tom Tromey  <tom@tromey.com>
7693
7694         PR cli/12326:
7695         * NEWS: Add entry about pager.
7696         * utils.c (pagination_disabled_for_command): New global.
7697         (prompt_for_continue): Allow "c" response to prompt.
7698         (reinitialize_more_filter): Clear
7699         pagination_disabled_for_command.
7700         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7701
7702 2018-06-04  Tom Tromey  <tom@tromey.com>
7703
7704         * ada-lang.h (ada_lookup_symbol_list): Update.
7705         * ada-lang.c (resolve_subexp): Update.
7706         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7707         parameter.
7708         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7709         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7710         results parameter to std::vector.
7711         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7712         Update.
7713         * ada-exp.y (block_lookup): Update.
7714         (select_possible_type_sym): Change type of syms.  Remove nsyms
7715         parameter.
7716         (write_var_or_type, write_name_assoc): Update.
7717
7718 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7719
7720         * windows-nat.c (windows_nat_target::xfer_partial): Return
7721         TARGET_XFER_E_IO if we need to delegate to the target beneath
7722         but BENEATH is NULL.
7723
7724 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7725
7726         * Makefile.in (config.status): Add configure.nat as a
7727         dependency.
7728
7729 2018-06-04  Tom Tromey  <tom@tromey.com>
7730
7731         * cp-name-parser.y (cpname_state): Add method declarations.
7732         (HANDLE_QUAL): Update.
7733         (cpname_state::d_grab, cpname_state::fill_comp)
7734         (cpname_state::make_operator, cpname_state::make_dtor)
7735         (cpname_state::make_builtin_type, cpname_state::make_name)
7736         (cpname_state::d_qualify, cpname_state::d_int_type)
7737         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7738         (%union): Move earlier.
7739
7740 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7741
7742         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7743
7744 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7745
7746         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7747         (aarch64_pseudo_write_1): Likewise.
7748         (aarch64_pseudo_read_value): Use helper.
7749         (aarch64_pseudo_write): Likewise.
7750
7751 2018-06-04  Pedro Alves  <palves@redhat.com>
7752
7753         * darwin-nat.c (darwin_ops): Delete.
7754         (darwin_attach_pid): Use get_native_target.
7755
7756 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7757
7758         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7759         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7760
7761 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7762
7763         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7764         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7765         (aarch64_gdbarch_init): Check for SVE.
7766         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7767
7768 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7769
7770         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7771         * aarch64-tdep.h (aarch64_read_description): Likewise.
7772         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7773         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7774         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7775         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7776         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7777
7778 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7779
7780         * value.c (value_fetch_lazy_bitfield): New.
7781         (value_fetch_lazy_memory): New.
7782         (value_fetch_lazy_register): New.
7783         (value_fetch_lazy): Factor out to smaller functions.
7784
7785 2018-06-01  Tom Tromey  <tom@tromey.com>
7786
7787         * cp-name-parser.y (backslashable, represented): Now const.
7788
7789 2018-06-01  Tom Tromey  <tom@tromey.com>
7790
7791         * cp-name-parser.y: Include parser-defs.h.
7792         (parser_fprintf): Remove declaration.
7793
7794 2018-06-01  Tom Tromey  <tom@tromey.com>
7795
7796         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7797         %parse-param.
7798         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7799         (global_result): Remove globals.
7800         (struct cpname_state): New.
7801         (yyparse): Don't declare.
7802         (yylex, yyerror): Move declarations after %union.
7803         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7804         (make_name): Add state parameter.
7805         Update all callers.
7806         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7807         parameter.
7808         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7809         Update.
7810         (yylex): Add lvalp, state parameters.
7811         (yyerror): Add state parameter.
7812         (cp_demangled_name_to_comp): Update.
7813
7814 2018-06-01  Tom Tromey  <tom@tromey.com>
7815
7816         * cp-name-parser.y (parser_fprintf): Declare.
7817         (GDB_YY_REMAP_PREFIX): Define.
7818         Include yy-remap.h.  Don't redefine yy* identifiers.
7819
7820 2018-06-01  Tom Tromey  <tom@tromey.com>
7821
7822         * python/py-type.c (typy_legacy_template_argument): Update.
7823         * cp-support.h (cp_demangled_name_to_comp): Update.
7824         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7825         parameter to be a "std::string *".
7826         (main): Update.
7827
7828 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7829
7830         * ada-lex.l: Include "diagnostics.h" instead of
7831         "common/diagnostics.h".
7832         * unittests/environ-selftests.c: Likewise.
7833         * common/diagnostics.h: Moved to ../include.
7834
7835 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7836
7837         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7838         to language_mode_manual while calling breakpoint_re_set_one.
7839
7840 2018-06-01  Tom Tromey  <tom@tromey.com>
7841
7842         * valops.c (value_cast_structs, destructor_name_p): Update.
7843         * symtab.c (gdb_mangle_name): Update.
7844         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7845         Update.
7846         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7847         (pascal_object_print_value_fields, pascal_object_print_value):
7848         Update.
7849         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7850         * linespec.c (find_methods): Update.
7851         * gdbtypes.h (type_name_no_tag): Remove.
7852         (type_name_or_error): Rename from type_name_no_tag_or_error.
7853         * gdbtypes.c (type_name_no_tag): Remove.
7854         (type_name_or_error): Rename from type_name_no_tag_or_error.
7855         (lookup_struct_elt_type, check_typedef): Update.
7856         * expprint.c (print_subexp_standard): Update.
7857         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7858         * d-namespace.c (d_lookup_nested_symbol): Update.
7859         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7860         (cp_print_class_member): Update.
7861         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7862         * completer.c (add_struct_fields): Update.
7863         * c-typeprint.c (cp_type_print_derivation_info)
7864         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7865         Update.
7866         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7867         (ada_prefer_type, ada_is_exception_sym): Update.
7868
7869 2018-06-01  Tom Tromey  <tom@tromey.com>
7870
7871         * valops.c (enum_constant_from_type, value_namespace_elt)
7872         (value_maybe_namespace_elt): Update.
7873         * valarith.c (find_size_for_pointer_math): Update.
7874         * target-descriptions.c (make_gdb_type): Update.
7875         * symmisc.c (print_symbol): Update.
7876         * stabsread.c (define_symbol, read_type)
7877         (complain_about_struct_wipeout, add_undefined_type)
7878         (cleanup_undefined_types_1): Update.
7879         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7880         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7881         (rust_internal_print_type, rust_composite_type)
7882         (rust_evaluate_funcall, rust_evaluate_subexp)
7883         (rust_inclusive_range_type_p): Update.
7884         * python/py-type.c (typy_get_tag): Update.
7885         * p-typeprint.c (pascal_type_print_base): Update.
7886         * mdebugread.c (parse_symbol, parse_type): Update.
7887         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7888         Update.
7889         * guile/scm-type.c (gdbscm_type_tag): Update.
7890         * go-lang.c (sixg_string_p): Update.
7891         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7892         Update.
7893         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7894         (TYPE_TAG_NAME): Remove.
7895         * gdbtypes.c (type_name_no_tag): Simplify.
7896         (check_typedef, check_types_equal, recursive_dump_type)
7897         (copy_type_recursive, arch_composite_type): Update.
7898         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7899         in summary mode when needed.
7900         * eval.c (evaluate_funcall): Update.
7901         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7902         (process_structure_scope, read_enumeration_type)
7903         (read_namespace_type, read_module_type, determine_prefix): Update.
7904         * cp-support.c (inspect_type): Update.
7905         * coffread.c (process_coff_symbol, decode_base_type): Update.
7906         * c-varobj.c (c_is_path_expr_parent): Update.
7907         * c-typeprint.c (c_type_print_base_struct_union): Update.
7908         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7909         summary when using C language.
7910         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7911         (gen_maybe_namespace_elt): Update.
7912         * ada-lang.c (ada_type_name): Simplify.
7913         (empty_record, ada_template_to_fixed_record_type_1)
7914         (template_to_static_fixed_type)
7915         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7916
7917 2018-06-01  Tom Tromey  <tom@tromey.com>
7918
7919         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7920         c_print_type.
7921         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7922         (c_print_type): Update.
7923         (c_print_type): New overload.
7924         (c_type_print_varspec_prefix, c_type_print_args)
7925         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7926         (c_type_print_base_struct_union, c_type_print_base_1)
7927         (cp_type_print_method_args): Add "language" parameter.
7928         (c_type_print_base): Update.
7929         * c-lang.h (c_print_type): Add new overload.
7930
7931 2018-06-01  Tom Tromey  <tom@tromey.com>
7932
7933         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7934         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7935
7936 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7937
7938         * aarch64-tdep.c (aarch64_sve_register_names): New const
7939         var.
7940         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7941         (AARCH64_SVE_Z_REGS_NUM): New define.
7942         (AARCH64_SVE_P_REGS_NUM): Likewise.
7943         (AARCH64_SVE_NUM_REGS): Likewise.
7944
7945 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7946
7947         * nat/linux-ptrace.h [__alpha__]
7948         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7949         definitions.
7950
7951 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7952
7953         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7954         the endianness selected.
7955         * NEWS: Document `set endian auto' mode operation update.
7956
7957 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7958
7959         * Makefile.in: Add new header.
7960         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7961         (sve_vl_from_vg): Likewise.
7962         (sve_vq_from_vl): Likewise.
7963         (sve_vl_from_vq): Likewise.
7964         (sve_vq_from_vg): Likewise.
7965         (sve_vg_from_vq): Likewise.
7966         * configure.nat: Add new c file.
7967         * nat/aarch64-sve-linux-ptrace.c: New file.
7968         * nat/aarch64-sve-linux-ptrace.h: New file.
7969
7970 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7971
7972         * aarch64-linux-nat.c (aarch64_linux_read_description):
7973         Add parmeter zero.
7974         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7975         Likewise.
7976         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7977         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7978         (aarch64_gdbarch_init): Add parmeter zero.
7979         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7980         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7981         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7982         parmeter.
7983         * doc/gdb.texinfo: Describe SVE feature
7984         * features/aarch64-sve.c: New file.
7985
7986 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7987
7988         PR gdb/23210
7989         * gdbarch.sh (significant_addr_bit): Default to zero when
7990         not set by target architecture.
7991         * gdbarch.c: Re-generated.
7992         * utils.c (address_significant): Update.
7993
7994 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7995
7996         * stack.c (func_command): Remove trailing newline in call to error.
7997
7998 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7999
8000         * regcache.h (regcache_raw_collect): Remove, update callers to
8001         use regcache::raw_collect.
8002         * regcache.c (regcache_raw_collect): Remove.
8003
8004 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8005
8006         * regcache.h (regcache_raw_supply): Remove, update callers to
8007         use detached_regcache::raw_supply.
8008         * regcache.c (regcache_raw_supply): Remove.
8009
8010 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8011
8012         * regcache.h (regcache_cooked_write_part): Remove, update
8013         callers to use regcache::cooked_write_part.
8014         * regcache.c (regcache_cooked_write_part): Remove.
8015
8016 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8017
8018         * regcache.h (regcache_cooked_read_part): Remove, update callers
8019         to use readable_regcache::cooked_read_part.
8020         * regcache.c (regcache_cooked_read_part): Remove.
8021
8022 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8023
8024         * regcache.h (regcache_cooked_read_value): Remove, update
8025         callers to use readable_regcache::cooked_read_value.
8026         * regcache.c (regcache_cooked_read_value): Remove.
8027
8028 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8029
8030         * regcache.h (regcache_cooked_write): Remove, update callers to
8031         use regcache::cooked_write.
8032         * regcache.c (regcache_cooked_write): Remove.
8033
8034 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8035
8036         * regcache.h (regcache_invalidate): Remove, update callers to
8037         use detached_regcache::invalidate instead.
8038         * regcache.c (regcache_invalidate): Remove.
8039
8040 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8041
8042         * regcache.h (regcache_raw_write_part): Remove, update callers
8043         to use regcache::raw_write_part instead.
8044         * regcache.c (regcache_raw_write_part): Remove.
8045
8046 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8047
8048         * regcache.h (regcache_raw_read_part): Remove, update callers to
8049         use readable_regcache::raw_read_part instead.
8050         * regcache.c (regcache_raw_read_part): Remove.
8051
8052 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8053
8054         * regcache.h (regcache_cooked_read): Remove, update callers to
8055         use readable_regcache::cooked_read instead.
8056         * regcache.c (regcache_cooked_read): Remove.
8057
8058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8059
8060         * regcache.h (regcache_raw_write): Remove, update callers to use
8061         regcache::raw_write instead.
8062         * regcache.c (regcache_raw_write): Remove.
8063
8064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8065
8066         * regcache.h (regcache_raw_read): Remove, update callers to use
8067         readable_regcache::raw_read instead.
8068         * regcache.c (regcache_raw_read): Remove.
8069
8070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8071
8072         * regcache.h (regcache_raw_update): Remove, update callers to
8073         use readable_regcache::raw_update instead.
8074         * regcache.c (regcache_raw_update): Remove.
8075
8076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8077
8078         * regcache.h (regcache_register_status): Remove, update callers
8079         to use reg_buffer::get_register_status directly instead.
8080         * regcache.c (regcache_register_status): Remove.
8081
8082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8083
8084         * regcache.h (regcache_get_ptid): Remove, update all callers to
8085         call regcache::ptid instead.
8086         * regcache.c (regcache_get_ptid): Remove.
8087
8088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8089
8090         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8091
8092 2018-05-30  Pedro Alves  <palves@redhat.com>
8093
8094         * common/common-exceptions.h (exception_rethrow): Use
8095         ATTRIBUTE_NORETURN.
8096
8097 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8098
8099         * breakpoint.c (print_solib_event, check_status_catch_solib):
8100         Remove struct keyword in range-based for loops.
8101         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8102         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8103         Likewise.
8104         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8105         Likewise.
8106         * symfile.c (addr_info_make_relative): Likewise.
8107         * thread.c (value_in_thread_stack_temporaries): Likewise.
8108
8109 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8110
8111         PR gdb/16841
8112         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8113         aggregate type to get its real type before accessing it.
8114
8115 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8116
8117         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8118         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8119         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8120         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8121         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8122         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8123         * printcmd.c (info_address_command): Likewise.
8124
8125 2018-05-29  Tom Tromey  <tom@tromey.com>
8126
8127         * windows-nat.c (handle_exception): Update fall-through comment.
8128
8129 2018-05-29  Tom Tromey  <tom@tromey.com>
8130
8131         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8132         (struct program_space) <added_solibs>: Now a std::vector.
8133         * breakpoint.c (print_solib_event): Update.
8134         (check_status_catch_solib): Update.
8135         * progspace.c (clear_program_space_solib_cache): Update.
8136         * solib.c (update_solib_list): Update.
8137
8138 2018-05-29  Tom Tromey  <tom@tromey.com>
8139
8140         * python/py-type.c (typy_richcompare): Update.
8141         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8142         * gdbtypes.h (types_deeply_equal): Return bool.
8143         (types_equal): Likewise.
8144         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8145         declare VEC.
8146         (check_types_equal): Change worklist to std::vector.  Return
8147         bool.
8148         (struct type_equality_entry): Add constructor.
8149         (compare_maybe_null_strings): Return bool.
8150         (check_types_worklist): Return bool.  Change worklist to
8151         std::vector.
8152         (types_deeply_equal): Use std::vector.
8153         (types_equal): Return bool.
8154         (compare_maybe_null_strings): Simplify.
8155
8156 2018-05-29  Tom Tromey  <tom@tromey.com>
8157
8158         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8159
8160 2018-05-29  Tom Tromey  <tom@tromey.com>
8161
8162         * objc-lang.h: Don't include cp-support.h.
8163         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8164         declare VEC.
8165
8166 2018-05-27  Tom Tromey  <tom@tromey.com>
8167
8168         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8169
8170 2018-05-25  Tom Tromey  <tom@tromey.com>
8171
8172         * value.c (value::location): Initialize.
8173
8174 2018-05-25  Tom Tromey  <tom@tromey.com>
8175
8176         * dbxread.c (init_bincl_list): Remove.
8177         (bincl_list): Now a std::vector.
8178         (bincls_allocated, next_bincl): Remove.
8179         (free_bincl_list, do_free_bincl_list_cleanup)
8180         (make_cleanup_free_bincl_list): Remove.
8181         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8182         unique_xmalloc_ptr.
8183         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8184         (struct header_file_location): Add constructor.
8185         (add_bincl_to_list): Remove.
8186
8187 2018-05-25  Tom Tromey  <tom@tromey.com>
8188
8189         * tui/tui.c (tui_enable): Update.
8190         * mi/mi-interp.c (mi_interp::init): Update.
8191         * interps.h (class interp) <name>: New method.
8192         <m_name>: Rename from name.
8193         (~scoped_restore_interp): Update.
8194         * interps.c (interp::interp): Update.
8195         (interp_add, interp_set, interp_lookup_existing)
8196         (current_interp_named_p): Update.
8197
8198 2018-05-25  Tom Tromey  <tom@tromey.com>
8199
8200         * interps.c (interp_name): Remove.
8201         * mi/mi-interp.c (mi_interp::init): Update.
8202         * interps.h (interp_name): Remove.
8203         (~scoped_restore_interp): Update.
8204         * tui/tui.c (tui_enable): Update.
8205
8206 2018-05-25  Tom Tromey  <tom@tromey.com>
8207
8208         * utils.c (fputs_maybe_filtered): Update.
8209         * linespec.c (decode_line_full): Update.
8210         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8211         (mi_print_breakpoint_for_event, mi_solib_loaded)
8212         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8213         (mi_user_selected_context_changed): Update.
8214         * mi/mi-main.c (mi_execute_command): Update.
8215         * cli/cli-script.c (execute_control_command): Update.
8216         * python/python.c (execute_gdb_command): Update.
8217         * solib.c (info_sharedlibrary_command): Update.
8218         * interps.c (interp_ui_out): Remove.
8219         * interps.h (interp_ui_out): Remove.
8220
8221 2018-05-25  Tom Tromey  <tom@tromey.com>
8222
8223         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8224         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8225         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8226
8227 2018-05-25  Tom Tromey  <tom@tromey.com>
8228
8229         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8230         * interps.c (interp_exec): Use scoped_restore.
8231
8232 2018-05-25  Tom Tromey  <tom@tromey.com>
8233
8234         * remote.c (remote_target::remote_file_get): Use
8235         gdb::byte_vector.
8236         (remote_target::remote_file_put): Likewise.
8237
8238 2018-05-25  Tom Tromey  <tom@tromey.com>
8239
8240         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8241         a std::string.
8242         (get_pe_section_index, add_pe_exported_sym): Update.
8243         (read_pe_exported_syms): Use gdb::def_vector.
8244
8245 2018-05-25  Tom Tromey  <tom@tromey.com>
8246
8247         * frame.c (remove_prev_frame): Remove.
8248         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8249
8250 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8251
8252         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8253         Remove prototypes.
8254         * mips-linux-nat.c (supply_fpregset): Always call
8255         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8256         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8257         `mips_fill_fpregset'.
8258         * mips-linux-tdep.c (mips_supply_fpregset)
8259         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8260         (mips_fill_fpregset_wrapper): Remove functions.
8261         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8262         (mips_linux_fpregset): Remove variable.
8263         (mips_linux_iterate_over_regset_sections): Use
8264         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8265         (mips_linux_o32_sigframe_init): Remove comment.
8266
8267 2018-05-25  Pedro Alves  <palves@redhat.com>
8268
8269         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8270         (struct readahead_cache, struct packet_reg, struct
8271         remote_arch_state, class remote_state): Move higher up in the
8272         file.
8273         (remote_target::m_remote_state): Now an object instead of a pointer.
8274         (remote_target::get_remote_state): Adjust.
8275
8276 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8277
8278         * stack.c (select_and_print_frame): Delete.
8279         (struct function_bounds): Move struct within function.
8280         (func_command): Most content moved into new function
8281         find_frame_for_function, use new function, print result, add
8282         function comment.
8283         (find_frame_for_function): New function, now returns a result.
8284
8285 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8286
8287         * stack.c (iterate_over_block_arg_vars): Fix comment.
8288         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8289
8290 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8291
8292         PR gdb/23203
8293         * frame.c
8294         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8295         Define.
8296         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8297         Define.
8298         * frame.h (class scoped_restore_selected_frame): New class.
8299         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8300         of any exception, use scoped_restore_selected_frame to restore the
8301         frame instead.
8302
8303 2018-05-24  Pedro Alves  <palves@redhat.com>
8304
8305         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8306         override.
8307
8308 2018-05-23  Tom Tromey  <tom@tromey.com>
8309
8310         * complaints.c (struct complaints): Remove.
8311         (symfile_complaint_book): Remove.
8312         (series): New global.
8313         (complaint_internal): Update.
8314         (clear_complaints): Update.
8315
8316 2018-05-23  Tom Tromey  <tom@tromey.com>
8317
8318         * complaints.c (counters): New global.
8319         (struct complain): Remove.
8320         (struct complaints) <root>: Remove.
8321         (complaint_sentinel): Remove.
8322         (symfile_complaint_book): Update.
8323         (find_complaint) Remove.
8324         (complaint_internal, clear_complaints): Update.
8325
8326 2018-05-23  Tom Tromey  <tom@tromey.com>
8327
8328         * complaints.c (struct complain) <file, line>: Remove.
8329         (find_complaint): Remove file, line parameters.
8330         (complaint_internal): Update.
8331
8332 2018-05-23  Tom Tromey  <tom@tromey.com>
8333
8334         * complaints.c (vcomplaint): Remove.
8335         (complaint_internal) Merge in contents of vcomplaint.
8336
8337 2018-05-23  Tom Tromey  <tom@tromey.com>
8338
8339         * complaints.c (struct complaints) <explanation>: Remove.
8340         (symfile_explanations): Remove.
8341         (symfile_complaint_book): Update.
8342         (vcomplaint): Update.
8343         (struct explanation): Remove.
8344
8345 2018-05-23  Tom Tromey  <tom@tromey.com>
8346
8347         * complaints.c (symfile_complaints): Remove.
8348         (complaint_internal): Remove "complaints" parameter.
8349         (clear_complaints, vcomplaint): Remove "c" parameter.
8350         (get_complaints): Remove.
8351         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8352         (dwarf2_debug_line_missing_file_complaint)
8353         (dwarf2_debug_line_missing_end_sequence_complaint)
8354         (dwarf2_complex_location_expr_complaint)
8355         (dwarf2_const_value_length_mismatch_complaint)
8356         (dwarf2_section_buffer_overflow_complaint)
8357         (dwarf2_macro_malformed_definition_complaint)
8358         (dwarf2_invalid_attrib_class_complaint)
8359         (create_addrmap_from_index, dw2_symtab_iter_next)
8360         (dw2_expand_marked_cus)
8361         (dw2_debug_names_iterator::find_vec_in_debug_names)
8362         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8363         (create_debug_type_hash_table, init_cutu_and_read_dies)
8364         (partial_die_parent_scope, add_partial_enumeration)
8365         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8366         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8367         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8368         (create_cus_hash_table, create_dwp_hash_table)
8369         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8370         (dwarf2_rnglists_process, dwarf2_ranges_process)
8371         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8372         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8373         (handle_struct_member_die, process_structure_scope)
8374         (read_array_type, read_common_block, read_module_type)
8375         (read_tag_pointer_type, read_typedef, read_base_type)
8376         (read_subrange_type, load_partial_dies, partial_die_info::read)
8377         (partial_die_info::read, partial_die_info::read)
8378         (partial_die_info::read, read_checked_initial_length_and_offset)
8379         (dwarf2_string_attr, read_formatted_entries)
8380         (dwarf_decode_line_header)
8381         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8382         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8383         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8384         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8385         (get_signatured_type, get_DW_AT_signature_type)
8386         (decode_locdesc, file_file_name, consume_improper_spaces)
8387         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8388         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8389         (dwarf2_symbol_mark_computed, set_die_type)
8390         (read_attribute_value): Update.
8391         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8392         Update.
8393         * dbxread.c (unknown_symtype_complaint)
8394         (lbrac_mismatch_complaint, repeated_header_complaint)
8395         (set_namestring, function_outside_compilation_unit_complaint)
8396         (read_dbx_symtab, process_one_symbol): Update.
8397         * gdbtypes.c (stub_noname_complaint): Update.
8398         * windows-nat.c (handle_unload_dll): Update.
8399         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8400         (decode_base_type): Update.
8401         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8402         (eb_complaint, record_include_begin, record_include_end)
8403         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8404         (process_xcoff_symbol, read_symbol)
8405         (function_outside_compilation_unit_complaint)
8406         (scan_xcoff_symtab): Update.
8407         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8408         * buildsym.c (finish_block_internal, make_blockvector)
8409         (end_symtab_get_static_block, augment_type_symtab): Update.
8410         * dtrace-probe.c (dtrace_process_dof)
8411         (dtrace_static_probe_ops::get_probes): Update.
8412         * complaints.h (struct complaint): Don't declare.
8413         (symfile_complaints): Remove.
8414         (complaint_internal): Remove "complaints" parameter.
8415         (complaint): Likewise.
8416         (clear_complaints): Likewise.
8417         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8418         (reread_symbols): Update.
8419         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8420         (dwarf2_frame_cache, decode_frame_entry): Update.
8421         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8422         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8423         (info_selectors_command): Update.
8424         * macrotab.c (macro_include, check_for_redefinition)
8425         (macro_undef): Update.
8426         * objfiles.c (filter_overlapping_sections): Update.
8427         * stabsread.c (invalid_cpp_abbrev_complaint)
8428         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8429         (define_symbol, error_type, read_type, rs6000_builtin_type)
8430         (stabs_method_name_from_physname, read_member_functions)
8431         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8432         (attach_fields_to_type, complain_about_struct_wipeout)
8433         (read_range_type, read_args, common_block_start)
8434         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8435         Update.
8436         * mdebugread.c (index_complaint, unknown_ext_complaint)
8437         (basic_type_complaint, bad_tag_guess_complaint)
8438         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8439         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8440         (parse_procedure, parse_lines)
8441         (function_outside_compilation_unit_complaint)
8442         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8443         (bad_tag_guess_complaint, reg_value_complaint): Update.
8444         * cp-support.c (demangled_name_complaint): Update.
8445         * macroscope.c (sal_macro_scope): Update.
8446         * dwarf-index-write.c (class debug_names): Update.
8447
8448 2018-05-23  Tom Tromey  <tom@tromey.com>
8449
8450         * complaints.c (clear_complaints): Remove "noisy" parameter.
8451         * complaints.h (clear_complaints): Update.
8452         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8453         (reread_symbols): Update.
8454
8455 2018-05-23  Tom Tromey  <tom@tromey.com>
8456
8457         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8458         SUBSEQUENT_MESSAGE.
8459         (vcomplaint, clear_complaints): Update.
8460         (symfile_explanations): Remove some messages.
8461
8462 2018-05-23  Tom Tromey  <tom@tromey.com>
8463
8464         * complaints.c (internal_complaint): Remove.
8465         * complaints.h (internal_complaint): Remove.
8466
8467 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8468
8469         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8470
8471 2018-05-22  Pedro Alves  <palves@redhat.com>
8472
8473         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8474         (remote_fileio_badfd, remote_fileio_return_errno)
8475         (remote_fileio_return_success, remote_fileio_func_open)
8476         (remote_fileio_func_open, remote_fileio_func_close)
8477         (remote_fileio_func_read, remote_fileio_func_write)
8478         (remote_fileio_func_lseek, remote_fileio_func_rename)
8479         (remote_fileio_func_unlink, remote_fileio_func_stat)
8480         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8481         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8482         remote_target parameter.
8483         (remote_fio_func_map) <func>: Add remote_target parameter.
8484         (do_remote_fileio_request, remote_fileio_request):
8485         * remote-fileio.h (remote_fileio_request):
8486         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8487         remote_target parameter.
8488         (remote_notif_process, handle_notification): Adjust to pass down
8489         the remote.
8490         (remote_notif_state_allocate): Add remote_target parameter.  Save
8491         it.
8492         * remote-notif.h (struct remote_target): Forward declare.
8493         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8494         remote_target parameter.
8495         (struct remote_notif_state) <remote>: New field.
8496         (remote_notif_ack, remote_notif_parse): Add remote_target
8497         parameter.
8498         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8499         remote_target parameter.
8500         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8501         (threads_listing_context, rmt_thread_action, protocol_feature)
8502         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8503         (packet_result, struct threads_listing_context, remote_state):
8504         Move definitions and declarations higher up.
8505         (remote_target) <~remote_target>: Declare.
8506         (remote_download_command_source, remote_file_put, remote_file_get)
8507         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8508         (remote_hostio_pread_vFile, remote_hostio_send_command)
8509         (remote_hostio_set_filesystem, remote_hostio_open)
8510         (remote_hostio_close, remote_hostio_unlink, remote_state)
8511         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8512         (get_memory_write_packet_size, get_memory_read_packet_size)
8513         (append_pending_thread_resumptions, remote_detach_1)
8514         (append_resumption, remote_resume_with_vcont)
8515         (add_current_inferior_and_thread, wait_ns, wait_as)
8516         (process_stop_reply, remote_notice_new_inferior)
8517         (process_initial_stop_replies, remote_add_thread)
8518         (btrace_sync_conf, remote_btrace_maybe_reopen)
8519         (remove_new_fork_children, kill_new_fork_children)
8520         (discard_pending_stop_replies, stop_reply_queue_length)
8521         (check_pending_events_prevent_wildcard_vcont)
8522         (discard_pending_stop_replies_in_queue, stop_reply)
8523         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8524         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8525         (remote_interrupt_as, remote_interrupt_ns)
8526         (remote_get_noisy_reply, remote_query_attached)
8527         (remote_add_inferior, remote_current_thread, get_current_thread)
8528         (set_thread, set_general_thread, set_continue_thread)
8529         (set_general_process, write_ptid)
8530         (remote_unpack_thread_info_response, remote_get_threadinfo)
8531         (parse_threadlist_response, remote_get_threadlist)
8532         (remote_threadlist_iterator, remote_get_threads_with_ql)
8533         (remote_get_threads_with_qxfer)
8534         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8535         (get_offsets, remote_check_symbols, remote_supported_packet)
8536         (remote_query_supported, remote_packet_size)
8537         (remote_serial_quit_handler, remote_detach_pid)
8538         (remote_vcont_probe, remote_resume_with_hc)
8539         (send_interrupt_sequence, interrupt_query)
8540         (remote_notif_get_pending_events, fetch_register_using_p)
8541         (send_g_packet, process_g_packet, fetch_registers_using_g)
8542         (store_register_using_P, store_registers_using_G)
8543         (set_remote_traceframe, check_binary_download)
8544         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8545         (remote_xfer_live_readonly_partial, remote_read_bytes)
8546         (remote_send_printf, remote_flash_write, readchar)
8547         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8548         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8549         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8550         (extended_remote_disable_randomization, extended_remote_run)
8551         (send_environment_packet, extended_remote_environment_support)
8552         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8553         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8554         (packet_command): Now methods of ...
8555         (remote_target): ... this class.
8556         (m_remote_state) <remote_target>: New field.
8557         (struct remote_state) <stop_reply_queue,
8558         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8559         fields.
8560         (remote_state::remote_state): Allocate stop_reply_queue.
8561         (remote_state): Delete global.
8562         (get_remote_state_raw): Delete.
8563         (remote_target::get_remote_state): Allocate m_remote_state on
8564         demand.
8565         (get_current_remote_target): New.
8566         (remote_ops, extended_remote_ops): Delete.
8567         (wait_forever_enabled_p, remote_async_inferior_event_token):
8568         Delete, moved to struct remote_state.
8569         (remote_target::close): Delete self.  Destruction bits split to
8570         ...
8571         (remote_target::~remote_target): ... this.
8572         (show_memory_packet_size): Adjust to use
8573         get_current_remote_target.
8574         (struct protocol_feature) <func>: Add remote_target parameter.
8575         All callers adjusted.
8576         (curr_quit_handler_target): New.
8577         (remote_serial_quit_handler): Reimplement.
8578         (remote_target::open_1): Adjust to use get_current_remote_target.
8579         Heap-allocate remote_target/extended_remote_target instances.
8580         (vcont_builder::vcont_builder): Add remote_target parameter, and
8581         save it in m_remote.  All callers adjusted.
8582         (vcont_builder::m_remote): New field.
8583         (vcont_builder::restart, vcont_builder::flush)
8584         (vcont_builder::push_action): Use it.
8585         (remote_target::commit_resume): Use it.
8586         (struct queue_iter_param) <remote>: New field.
8587         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8588         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8589         (check_pending_event_prevents_wildcard_vcont_callback)
8590         (remote_target::check_pending_events_prevent_wildcard_vcont)
8591         (remote_target::discard_pending_stop_replies)
8592         (remote_target::discard_pending_stop_replies_in_queue)
8593         (remote_target::remote_notif_remove_queued_reply): Fill in
8594         'remote' field.
8595         (remote_notif_get_pending_events): New.
8596         (remote_target::readchar, remote_target::remote_serial_write):
8597         Save/restore curr_quit_handler_target.
8598         (putpkt): New.
8599         (kill_new_fork_children): Fill in 'remote' field.
8600         (packet_command): Use get_current_remote_target, defer to
8601         remote_target method of same name.
8602         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8603         parameter, and save it in m_remote.  All callers adjusted.
8604         (scoped_remote_fd::release): Use m_remote.
8605         (scoped_remote_fd::m_remote): New field.
8606         (remote_file_put, remote_file_get, remote_file_delete): Use
8607         get_current_remote_target, defer to remote_target method of same
8608         name.
8609         (remote_btrace_reset): Add remote_state paremeter.  Update all
8610         callers.
8611         (remote_async_inferior_event_handler). Pass down 'data'.
8612         (remote_new_objfile): Use get_current_remote_target.
8613         (remote_target::vcont_r_supported): New.
8614         (set_range_stepping): Use get_current_remote_target and
8615         remote_target::vcont_r_supported.
8616         (_initialize_remote): Don't allocate 'remote_state' and
8617         'stop_reply_queue' globals.
8618         * remote.h (struct remote_target): Forward declare.
8619         (getpkt, putpkt, remote_notif_get_pending_events): Add
8620         'remote_target' parameter.
8621
8622 2018-05-22  Pedro Alves  <palves@redhat.com>
8623
8624         * remote.c (vcont_builder): Now a class.  Make all data members
8625         private.
8626         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8627         Declare methods.
8628         (vcont_builder_restart): Rename to ...
8629         (vcont_builder::restart): ... this.
8630         (vcont_builder_flush): Rename to ...
8631         (vcont_builder::flush): ... this.
8632         (vcont_builder_push_action): Rename to ...
8633         (vcont_builder::push_action): ... this.
8634         (remote_target::commit_resume): Adjust.
8635
8636 2018-05-22  Pedro Alves  <palves@redhat.com>
8637
8638         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8639         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8640         (get_fixed_memory_packet_size): New.
8641         (get_memory_packet_size): Use it.
8642         (set_memory_packet_size): Don't override the config size with
8643         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8644         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8645         Don't refer to get_memory_packet_size if not connected to a remote
8646         target.  Show "(default)" if configured size is 0.
8647
8648 2018-05-22  Pedro Alves  <palves@redhat.com>
8649
8650         * remote.c (remote_target::mourn_inferior): Move
8651         discard_pending_stop_replies call here from ...
8652         (_initialize_remote): ... here.
8653
8654 2018-05-22  Pedro Alves  <palves@redhat.com>
8655
8656         * remote.c (compare_section_command): Remove set_general_process
8657         call.
8658
8659 2018-05-22  Pedro Alves  <palves@redhat.com>
8660
8661         * remote.c (struct packet_reg, struct remote_arch_state):
8662         Move higher up in the file.
8663         (remote_state) <m_arch_states>: Store remote_arch_state values
8664         instead of remote_arch_state pointers.
8665         (remote_state::get_remote_arch_state): Adjust.
8666
8667 2018-05-22  Pedro Alves  <palves@redhat.com>
8668
8669         * remote.c: Include <unordered_map>.
8670         (remote_state): Now a class.
8671         (remote_state) <get_remote_arch_state>: Declare method.
8672         <get_remote_arch_state>: New field.
8673         (remote_arch_state) <remote_arch_state>: Declare ctor.
8674         <regs>: Now a unique_ptr.
8675         (remote_gdbarch_data_handle): Delete.
8676         (get_remote_arch_state): Delete.
8677         (remote_state::get_remote_arch_state): New.
8678         (get_remote_state): Adjust to call remote_state's
8679         get_remote_arch_state method.
8680         (init_remote_state): Delete, bits factored out to ...
8681         (remote_arch_state::remote_arch_state): ... this new method.
8682         (get_remote_packet_size, get_memory_packet_size)
8683         (process_g_packet, remote_target::fetch_registers)
8684         (remote_target::prepare_to_store, store_registers_using_G)
8685         (remote_target::store_registers, remote_target::get_trace_status):
8686         Adjust to call remote_state's method.
8687         (_initialize_remote): Remove reference to
8688         remote_gdbarch_data_handle.
8689
8690 2018-05-22  Pedro Alves  <palves@redhat.com>
8691
8692         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8693         pread>: New method declarations.
8694         (remote_target::open_1): Adjust.
8695         (readahead_cache_invalidate): Rename to ...
8696         (readahead_cache::invalidate): ... this, and adjust to be a class
8697         method.
8698         (readahead_cache_invalidate_fd): Rename to ...
8699         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8700         class method.
8701         (remote_hostio_pwrite): Adjust.
8702         (remote_hostio_pread_from_cache): Rename to ...
8703         (readahead_cache::pread): ... this, and adjust to be a class
8704         method.
8705         (remote_hostio_close): Adjust.
8706
8707 2018-05-22  Pedro Alves  <palves@redhat.com>
8708
8709         * remote.c (remote_hostio_close_cleanup): Delete.
8710         (class scoped_remote_fd): New.
8711         (remote_file_put, remote_file_get): Use it.
8712
8713 2018-05-22  Pedro Alves  <palves@redhat.com>
8714
8715         (struct vCont_action_support): Use bool and initialize all fields.
8716         (struct readahead_cache): Initialize all fields.
8717         (remote_state): Use bool and initialize all fields.
8718         (remote_state::remote_state, remote_state::~remote_state): New.
8719         (new_remote_state): Delete.
8720         (_initialize_remote): Use new to allocate remote_state.
8721
8722 2018-05-22  Pedro Alves  <palves@redhat.com>
8723             張俊芝  <zjz@zjz.name>
8724
8725         PR gdb/22973
8726         * c-exp.y: Include "c-support.h".
8727         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8728         of tolower.  Use c_ident_is_alpha to scan names.
8729         * c-lang.c: Include "c-support.h".
8730         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8731         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8732         * c-support.h: New file, with bits factored out from ...
8733         * cp-name-parser.y: ... this file.
8734         Include "c-support.h".
8735         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8736         c-support.h and renamed.
8737         (symbol_end, yylex): Adjust.
8738
8739 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8740
8741         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8742         parameter type to CORE_ADDR.
8743         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8744         parameter type in declaration to CORE_ADDR.
8745         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8746         target_auxv_search to get AT_HWCAP and use the result to get the
8747         target description.
8748         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8749         to CORE_ADDR. Remove the cast of the return value to unsigned
8750         long. Fix error predicate of target_auxv_search.
8751         (ppc_linux_nat_target::read_description): Change the type of the
8752         hwcap variable to CORE_ADDR.
8753
8754 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8755
8756         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8757         if the size of fpscr is larger than 32 bits.
8758
8759 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8760
8761         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8762         (ppc32_linux_vsxregmap): New global.
8763         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8764         regcache_supply_regset, and regcache_collect_regset.
8765         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8766         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8767         (fetch_vsx_register, store_vsx_register): Remove.
8768         (fetch_vsx_registers): Add regno parameter. Get regset using
8769         ppc_linux_vsxregset. Use regset to supply registers.
8770         (store_vsx_registers): Add regno parameter. Get regset using
8771         ppc_linux_vsxregset. Use regset to collect registers.
8772         (fetch_register): Call fetch_vsx_registers instead of
8773         fetch_vsx_register.
8774         (store_register): Call store_vsx_registers instead of
8775         store_vsx_register.
8776         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8777         new regno parameter.
8778         (store_ppc_registers): Call store_vsx_registers with -1 for the
8779         new regno parameter.
8780         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8781         (ppc_collect_vsxregset): Remove.
8782
8783 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8784
8785         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8786         offset fields.
8787         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8788         for vector register offset fields.
8789         (ppc64_fbsd_reg_offsets): Likewise.
8790         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8791         to vector register offset fields.
8792         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8793         to vector register offset fields.
8794         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8795         vector register offset fields.
8796         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8797         initializers for vector register offset fields.
8798         (rs6000_aix64_reg_offsets): Likewise.
8799         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8800         (ppc_supply_vrregset): Remove.
8801         (ppc_collect_vrregset): Remove.
8802         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8803         (ppc_linux_vrregset) : New function.
8804         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8805         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8806         (ppc32_linux_vrregset): Remove.
8807         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8808         and use result instead of ppc32_linux_vrregset.
8809         (ppc32_linux_reg_offsets): Remove initializers for vector register
8810         offset fields.
8811         (ppc64_linux_reg_offsets): Likewise.
8812         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8813         * ppc-linux-nat.c: Include regset.h.
8814         (gdb_vrregset_t): Adjust comment to account for little-endian
8815         mode.
8816         (supply_vrregset, fill_vrregset): Remove.
8817         (fetch_altivec_register, store_altivec_register): Remove.
8818         (fetch_altivec_registers): Add regno parameter. Get regset using
8819         ppc_linux_vrregset. Use regset to supply registers.
8820         (store_altivec_registers): Add regno parameter. Get regset using
8821         ppc_linux_vrregset. Use regset to collect registers.
8822         (fetch_register): Call fetch_altivec_registers instead of
8823         fetch_altivec_register.
8824         (store_register): Call store_altivec_registers instead of
8825         store_altivec_register.
8826         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8827         the new regno parameter.
8828         (store_ppc_registers): Call store_altivec_registers with -1 for
8829         the new regno parameter.
8830
8831 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8832
8833         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8834         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8835         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8836         (gdb_vrregset_t): Change array type size to
8837         PPC_LINUX_SIZEOF_VRREGSET.
8838         (gdb_vsxregset_t): Change array type size to
8839         PPC_LINUX_SIZEOF_VSXREGSET.
8840         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8841         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8842         PPC_LINUX_SIZEOF_VSXREGSET.
8843
8844 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8845
8846         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8847         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8848         nat/ppc-linux.c.
8849         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8850         ppc_linux_target_wordsize with tid.
8851         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8852         wordsize with tid.
8853         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8854         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8855         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8856         tid parameter. Remove static specifier.
8857         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8858         (ppc_linux_target_wordsize): New declaration.
8859
8860 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8861
8862         * arch/ppc-linux-common.c: New file.
8863         * arch/ppc-linux-common.h: New file.
8864         * arch/ppc-linux-tdesc.h: New file.
8865         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8866         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8867         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8868         arch/ppc-linux-tdesc.h.
8869         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8870         arch/ppc-linux-tdesc.h.
8871         (ppc_linux_nat_target::read_description): Remove target
8872         description matching code. Fill a ppc_linux_features struct and
8873         call ppc_linux_match_description with it. Move comment about ISA
8874         2.05 to ppc-linux-common.c.
8875         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8876         arch/ppc-linux-tdesc.h.
8877         (ppc_linux_core_read_description): Remove target description
8878         matching code. Fill a ppc_linux_features struct and call
8879         ppc_linux_match_description with it.
8880         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8881         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8882         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8883         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8884         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8885         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8886         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8887         (tdesc_powerpc_e500l): Remove.
8888
8889 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8890
8891         * ada-lang.c (catch_assert_command): Pass empty string instead
8892         of NULL for excep_string argument.
8893
8894 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8895
8896         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8897         the width of the requested register exceeds the width of the
8898         `ptrace' data type.
8899
8900 2018-05-21  Tom Tromey  <tom@tromey.com>
8901
8902         * printcmd.c (output_command): Remove.
8903         (output_command_const): Rename to output_command.
8904         * valprint.h (output_command): Rename from output_command_const.
8905         * tracepoint.c (trace_dump_actions): Call output_command.
8906
8907 2018-05-21  Tom Tromey  <tom@tromey.com>
8908
8909         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8910         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8911         * ada-lang.h (create_ada_exception_catchpoint): Update.
8912         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8913         std::string.
8914         (create_excep_cond_exprs, ~ada_catchpoint)
8915         (should_stop_exception, print_one_exception)
8916         (print_mention_exception, print_recreate_exception): Update.
8917         (ada_get_next_arg): Remove.
8918         (catch_ada_exception_command_split): Use std::string.  Change type
8919         of "excep_string", "cond_string".
8920         (catch_ada_exception_command): Update.
8921         (create_ada_exception_catchpoint): Change type of excep_string.
8922         (ada_exception_sal): Remove excep_string parameter.
8923         (~ada_catchpoint): Remove.
8924
8925 2018-05-21  Tom Tromey  <tom@tromey.com>
8926
8927         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8928         cleanup.
8929
8930 2018-05-21  Tom Tromey  <tom@tromey.com>
8931
8932         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8933         Return unique_xmalloc_ptr.
8934         (print_it_exception): Update.
8935
8936 2018-05-21  Tom Tromey  <tom@tromey.com>
8937
8938         * tracepoint.c (trace_dump_actions): Use std::string.
8939
8940 2018-05-21  Tom Tromey  <tom@tromey.com>
8941
8942         * symfile.c (reread_symbols): Use std::string for original_name.
8943
8944 2018-05-21  Tom Tromey  <tom@tromey.com>
8945
8946         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8947         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8948         constructor.
8949
8950 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8951
8952         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8953         instance to...
8954         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8955         * objfiles.c (get_objfile_bfd_data): Allocate
8956         objfile_per_bfd_storage with obstack_new when allocating on
8957         obstack.
8958
8959 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8960
8961         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8962         OBSTACK_ZALLOC.
8963         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8964         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8965         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8966         (add_pending): Likewise.
8967         (parse_symbol): Likewise.
8968         (parse_partial_symbols): Likewise.
8969         (psymtab_to_symtab_1): Likewise.
8970         (new_psymtab): Likewise.
8971         (elfmdebug_build_psymtabs): Likewise.
8972         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8973         * objfiles.c (get_objfile_bfd_data): Likewise.
8974         (objfile_register_static_link): Likewise.
8975         * psymtab.c (allocate_psymtab): Likewise.
8976         * stabsread.c (read_member_functions): Likewise.
8977         * xcoffread.c (xcoff_end_psymtab): Likewise.
8978
8979 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8980
8981         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8982         compiler supports std::is_trivially_constructible.
8983         * common/poison.h: Include obstack.h.
8984         (IsMallocable): Define to is_trivially_constructible if the
8985         compiler supports it, define to true_type otherwise.
8986         (xobnew): New.
8987         (XOBNEW): Redefine.
8988         (xobnewvec): New.
8989         (XOBNEWVEC): Redefine.
8990         * gdb_obstack.h (obstack_zalloc): New.
8991         (OBSTACK_ZALLOC): Redefine.
8992         (obstack_calloc): New.
8993         (OBSTACK_CALLOC): Redefine.
8994         (obstack_new): New.
8995         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8996         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8997         gdbarch.c.
8998         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8999         obstack_calloc/obstack_zalloc.
9000         (gdbarch_obstack_zalloc): Remove.
9001         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9002
9003 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9004
9005         * stack.c (backtrace_command_1): Remove useless variable int i.
9006
9007 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9008
9009         * stack.c (print_frame_info): Fix comment.
9010
9011 2018-05-18  Tom Tromey  <tom@tromey.com>
9012
9013         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9014         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9015         (~dwarf2_per_objfile): Update
9016         (dwarf2_get_dwz_file): Use new.
9017         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9018         unique_ptr.
9019
9020 2018-05-18  Tom Tromey  <tom@tromey.com>
9021
9022         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9023         unique_ptr.
9024         * dwarf2read.c (struct dwp_file): Add constructor and
9025         initializers.
9026         (open_and_init_dwp_file): Return a unique_ptr.
9027         (dwarf2_per_objfile, create_dwp_hash_table)
9028         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9029         (lookup_dwo_unit_in_dwp): Update.
9030         (open_and_init_dwp_file, get_dwp_file): Update.
9031
9032 2018-05-18  Tom Tromey  <tom@tromey.com>
9033
9034         * dwarf2read.c (dwarf2_per_objfile): Update.
9035         (struct mapped_index): Add initializers.
9036         (dwarf2_read_index): Use new.
9037         (dw2_symtab_iter_init): Update.
9038         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9039         unique_ptr.
9040
9041 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9042
9043         * dwarf2read.c (mapped_index) <total_size>: Remove.
9044
9045 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9046
9047         * unittests/format_pieces-selftests.c (test_format_specifier):
9048         Add ARI comments.
9049
9050 2018-05-18  Tom Tromey  <tom@tromey.com>
9051
9052         * c-typeprint.c (maybe_print_hole): New function.
9053         (c_print_type_struct_field_offset): Update.
9054         (c_type_print_base_struct_union): Call maybe_print_hole.
9055
9056 2018-05-17  Keith Seitz  <keiths@redhat.com>
9057
9058         * breakpoint.c (build_bpstat_chain): New function, moved from
9059         bpstat_stop_status.
9060         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9061         If no stop chain is passed, call build_bpstat_chain to build it.
9062         * breakpoint.h (build_bpstat_chain): Declare.
9063         (bpstat_stop_status): Move documentation here from breakpoint.c.
9064         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9065         build the stop chain and pass it to skip_inline_frames.
9066         Pass this stop chain to bpstat_stop_status.
9067         * inline-frame.c: Include breakpoint.h.
9068         (stopped_by_user_bp_inline_frame): New function.
9069         (skip_inline_frames): Add parameter `stop_chain'.
9070         Move documention to inline-frame.h.
9071         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9072         whether the frame should be elided.
9073         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9074         Add moved documentation and update for new parameter.
9075
9076 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9077
9078         PR cli/14975
9079         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9080         unittests/format_pieces-selftests.c.
9081         * common/format.h (format_piece) <operator==>: New.
9082         (format_pieces) <operator[]>: Remove.
9083         * common/format.c (format_pieces::format_pieces): Handle \e.
9084         * unittests/format_pieces-selftests.c: New.
9085
9086 2018-05-17  Tom Tromey  <tom@tromey.com>
9087
9088         PR symtab/23010:
9089         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9090         (dw2_instantiate_symtab): Add skip_partial parameter.
9091         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9092         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9093         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9094         (dw2_expand_symtabs_matching_one)
9095         (dw2_find_pc_sect_compunit_symtab)
9096         (dw2_debug_names_lookup_symbol)
9097         (dw2_debug_names_expand_symtabs_for_function): Update.
9098         (init_cutu_and_read_dies): Add skip_partial parameter.
9099         (process_psymtab_comp_unit, build_type_psymtabs_1)
9100         (process_skeletonless_type_unit, load_partial_comp_unit)
9101         (psymtab_to_symtab_1): Update.
9102         (load_full_comp_unit): Add skip_partial parameter.
9103         (process_imported_unit_die, dwarf2_read_addr_index)
9104         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9105         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9106         (read_signatured_type): Update.
9107
9108 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9109
9110         * value.c (release_value): Remove unused variable.
9111         (record_latest_value): Likewise.
9112         (access_value_history): Likewise.
9113         (preserve_values): Likewise.
9114
9115 2018-05-17  Tom Tromey  <tom@tromey.com>
9116
9117         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9118         Initialize.
9119
9120 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9121
9122         PR gdb/22286
9123         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9124         Also handle registers whose width is not a multiple of
9125         PTRACE_TYPE_RET.
9126         (linux_nat_trad_target::store_register): Likewise.
9127
9128 2018-05-16  Tom Tromey  <tom@tromey.com>
9129
9130         * gdbcore.h (core_bfd): Redefine.
9131         * corelow.c (core_target::close): Update.
9132         (core_target_open): Update.
9133         * progspace.h (struct program_space) <cbfd>: Now a
9134         gdb_bfd_ref_ptr.
9135
9136 2018-05-16  Tom Tromey  <tom@tromey.com>
9137
9138         PR cli/19551:
9139         * symfile-add-flags.h (enum symfile_add_flags)
9140         <SYMFILE_NOT_FILENAME>: New constant.
9141         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9142         objfile name from BFD.
9143         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9144         * minidebug.c (find_separate_debug_file_in_section): Put
9145         ".gnu_debugdata" into BFD's file name.
9146
9147 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9148
9149         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9150         Remove.
9151
9152 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9153
9154         PR binutils/21446
9155         * aarch64-tdep.c (aarch64_analyze_prologue,
9156         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9157         Indicate not interested in errors.
9158
9159 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9160
9161         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9162         Supply the MIPS_ZERO_REGNUM register.
9163
9164 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9165
9166         * mips-tdep.c (mask_address_var): Make variable static.
9167
9168 2018-05-14  Tom Tromey  <tom@tromey.com>
9169
9170         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9171
9172 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9173
9174         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9175         FXSAVE_ADDR for the mxcsr register.
9176
9177 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9178
9179         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9180
9181 2018-05-11  Pedro Alves  <palves@redhat.com>
9182
9183         * corelow.c (core_target) <core_target>: No longer inline.
9184         Initialize m_core_gdbarch, m_core_vec and build the section table
9185         here.
9186         <~core_target>: New.
9187         <core_gdbarch, get_core_register_section>: New methods.
9188         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9189         factored out from ...
9190         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9191         (core_ops): Delete.
9192         (sniff_core_bfd): Add gdbarch parameter.
9193         (core_close): Delete, merged into ...
9194         (core_target::close): ... here.  Delete self.
9195         (core_close_cleanup): Delete.
9196         (core_target_open): Allocate a core_target on the heap.  Use a
9197         unique_ptr instead of a cleanup.  Bits moved into the core_target
9198         ctor.  Adjust to use core_target methods instead of globals.
9199         (get_core_register_section): Rename to ...
9200         (core_target::get_core_register_section): ... this and adjust.
9201         (struct get_core_registers_cb_data): New.
9202         (get_core_registers_cb): Use it.  Use bool.
9203         (core_target::fetch_registers, core_target::files_info)
9204         (core_target::xfer_partial, core_target::read_description)
9205         (core_target::pid_to, core_target::thread_name): Adjust to
9206         reference class fields instead of globals.
9207         * target.h (struct target_ops_deleter, target_ops_up): New.
9208
9209 2018-05-11  Pedro Alves  <palves@redhat.com>
9210
9211         * corefile.c (core_file_command): Move to corelow.c.
9212         * corelow.c (the_core_target): Delete.
9213         (core_file_command): Moved from corefile.c.  Check exec_bfd
9214         instead of the_core_target.  Use target_detach instead of calling
9215         into the_core_target directly.
9216         (maybe_say_no_core_file_now): New.
9217         (core_target::detach): Use it.
9218         (_initialize_corelow): Remove references to the_core_target.
9219         * gdbcore.h (the_core_target): Delete.
9220
9221 2018-05-11  Tom Tromey  <tromey@redhat.com>
9222             Pedro Alves  <palves@redhat.com>
9223
9224         * corefile.c (core_bfd): Remove.
9225         * gdbcore.h (core_bfd): Now a macro.
9226         * progspace.h (struct program_space) <cbfd>: New field.
9227
9228 2018-05-11  Tom Tromey  <tom@tromey.com>
9229
9230         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9231         gdb::def_vector.
9232
9233 2018-05-10  Tom Tromey  <tom@tromey.com>
9234
9235         * configure: Rebuild.
9236         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9237
9238 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9239
9240         PR server/23158:
9241         * regformats/regdat.sh: Adjust script, following the addition
9242         of the new expedite_regs parameter to init_target_desc.
9243
9244 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9245     
9246         PR gdb/23127
9247         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9248         set_gdbarch_significant_addr_bit.
9249         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9250         set_gdbarch_significant_addr_bit.
9251         * utils.c (address_significant): Update to sign extend addr.
9252
9253 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9254
9255         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9256         (xtensa_linux_init_abi): Limit tdep->num_regs by
9257         tdep->num_nopriv_regs.
9258         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9259         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9260         not initialized.
9261
9262 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9263
9264         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9265
9266 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9267
9268         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9269         (I387_MXCSR_INIT_VAL): New constant.
9270         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9271         buffer if it was supplied by the inferior.
9272         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9273         (i387_xsave_get_clear_bv): New function.
9274         (i387_supply_xsave): Only read x87 control registers from the
9275         xsave buffer if the feature is enabled, and the state will have
9276         been written, otherwise, provide a suitable default.
9277         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9278         including x87 control registers.  Update control registers if they
9279         have changed from the default value, and mark features as enabled
9280         as required.
9281         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9282
9283 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9284
9285         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9286
9287 2018-05-07  Tom Tromey  <tom@tromey.com>
9288
9289         * configure: Rebuild.
9290         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9291
9292 2018-05-07  Tom Tromey  <tom@tromey.com>
9293
9294         PR tdep/20362:
9295         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9296         bit.  Use correct value for VDIV.
9297
9298 2018-05-04  Tom Tromey  <tom@tromey.com>
9299
9300         * configure: Rebuild.
9301         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9302
9303 2018-05-04  Tom Tromey  <tom@tromey.com>
9304
9305         * linux-record.c (record_linux_system_call) <case
9306         RECORD_SYS_RECVFROM>: Add "break".
9307
9308 2018-05-04  Tom Tromey  <tom@tromey.com>
9309
9310         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9311         Add missing "break".
9312         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9313         Add missing "break".
9314
9315 2018-05-04  Tom Tromey  <tom@tromey.com>
9316
9317         * rs6000-tdep.c (ppc_process_record_op4)
9318         (ppc_process_record_op63): Add fall-through comment.
9319
9320 2018-05-04  Tom Tromey  <tom@tromey.com>
9321
9322         * i386-tdep.c (i386_process_record): Add fall-through comment.
9323
9324 2018-05-04  Tom Tromey  <tom@tromey.com>
9325
9326         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9327         comment.
9328
9329 2018-05-04  Tom Tromey  <tom@tromey.com>
9330
9331         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9332         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9333         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9334         comment.
9335         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9336         comment.
9337         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9338         comment.
9339
9340 2018-05-04  Tom Tromey  <tom@tromey.com>
9341
9342         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9343
9344 2018-05-04  Tom Tromey  <tom@tromey.com>
9345
9346         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9347         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9348         * symfile.c (section_is_mapped): Fix fall-through comment.
9349         * stabsread.c (define_symbol, read_member_functions): Fix
9350         fall-through comment.
9351         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9352         comment.
9353         * remote.c (remote_wait_as): Fix fall-through comment.
9354         * p-exp.y (yylex): Fix fall-through comment.
9355         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9356         comment.
9357         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9358         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9359         * jv-exp.y (yylex): Fix fall-through comment.
9360         * go-exp.y (lex_one_token): Fix fall-through comment.
9361         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9362         fall-through comment.
9363         * f-exp.y (yylex): Fix fall-through comment.
9364         * dwarf2read.c (process_die): Fix fall-through comments.
9365         * dbxread.c (process_one_symbol): Fix fall-through comment.
9366         * d-exp.y (lex_one_token): Fix fall-through comment.
9367         * cp-name-parser.y (yylex): Fix fall-through comment.
9368         * coffread.c (coff_symtab_read): Fix fall-through comment.
9369         * c-exp.y (lex_one_token): Fix fall-through comment.
9370         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9371         comment.
9372         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9373         comment.
9374
9375 2018-05-04  Tom Tromey  <tom@tromey.com>
9376
9377         PR python/22730:
9378         * NEWS: Mention gdb.execute change.
9379         * gdbcmd.h (execute_control_command): Don't declare.
9380         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9381         execute_control_commands, execute_control_commands_to_string.
9382         * cli/cli-script.h (execute_control_commands)
9383         (execute_control_commands_to_string): Declare.
9384         (execute_control_command): Add from_tty parameter.
9385         * cli/cli-script.c (execute_control_commands)
9386         (execute_control_commands_to_string): New functions.
9387         (execute_user_command): Use execute_control_commands.
9388         (execute_control_command_1): Add "from_tty" parameter.  Update.
9389         (execute_control_command): Likewise.
9390
9391 2018-05-04  Tom Tromey  <tom@tromey.com>
9392
9393         PR python/22731:
9394         * NEWS: Mention that breakpoint commands are writable.
9395         * python/py-breakpoint.c (bppy_set_commands): New function.
9396         (breakpoint_object_getset) <"commands">: Use it.
9397
9398 2018-05-04  Tom Tromey  <tom@tromey.com>
9399
9400         * tracepoint.c (actions_command): Update.
9401         * mi/mi-cmd-break.c (mi_command_line_array)
9402         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9403         (mi_read_next_line): Remove.
9404         (mi_cmd_break_commands): Update.
9405         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9406         function_view.
9407         * cli/cli-script.c (get_command_line): Update.
9408         (process_next_line): Use function_view.  Constify.
9409         (recurse_read_control_structure, read_command_lines)
9410         (read_command_lines_1): Change argument types to function_view.
9411         (do_define_command, document_command): Update.
9412         * breakpoint.h (check_tracepoint_command): Don't declare.
9413         * breakpoint.c (check_tracepoint_command): Remove.
9414         (commands_command_1, create_tracepoint_from_upload): Update.
9415
9416 2018-05-04  Tom Tromey  <tom@tromey.com>
9417
9418         PR gdb/11750:
9419         * cli/cli-script.h (enum command_control_type) <define_control>:
9420         New constant.
9421         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9422         (build_command_line, execute_control_command_1)
9423         (process_next_line): Likewise.
9424         (do_define_command): New function, extracted from define_command.
9425         (define_command): Use it.
9426
9427 2018-05-04  Tom Tromey  <tom@tromey.com>
9428
9429         * tracepoint.c (actions_command): Update.
9430         * cli/cli-script.h (read_command_lines): Update.
9431         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9432         (MAX_TMPBUF): Remove define.
9433         (define_command): Use string_printf.
9434         (document_command): Likewise.
9435         * breakpoint.c (commands_command_1): Update.
9436
9437 2018-05-04  Tom Tromey  <tom@tromey.com>
9438
9439         * top.c (execute_command): Update.
9440         * cli/cli-script.h (print_command_lines): Now varargs.
9441         * cli/cli-script.c (print_command_lines): Now varargs.
9442         (execute_control_command_1) <case while_control, case if_control>:
9443         Update.
9444
9445 2018-05-04  Tom Tromey  <tom@tromey.com>
9446
9447         * tracepoint.c (all_tracepoint_actions): Rename from
9448         all_tracepoint_actions_and_cleanup.  Change return type.
9449         (actions_command, encode_actions_1, encode_actions)
9450         (trace_dump_actions, tdump_command): Update.
9451         * remote.c (remote_download_command_source): Update.
9452         * python/python.c (gdbpy_eval_from_control_command)
9453         (python_command, python_interactive_command): Update.
9454         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9455         * guile/guile.c (guile_command)
9456         (gdbscm_eval_from_control_command, guile_command): Update.
9457         * compile/compile.c (compile_code_command)
9458         (compile_print_command, compile_to_object): Update.
9459         * cli/cli-script.h (struct command_lines_deleter): New.
9460         (counted_command_line): New typedef.
9461         (struct command_line): Add constructor, destructor.
9462         <body_list>: Remove.
9463         <body_list_0, body_list_1>: New members.
9464         (command_line_up): Remove typedef.
9465         (read_command_lines, read_command_lines_1, get_command_line):
9466         Update.
9467         (copy_command_lines): Don't declare.
9468         * cli/cli-script.c (build_command_line): Use "new".
9469         (get_command_line): Return counted_command_line.
9470         (print_command_lines, execute_user_command)
9471         (execute_control_command_1, while_command, if_command): Update.
9472         (realloc_body_list): Remove.
9473         (process_next_line, recurse_read_control_structure): Update.
9474         (read_command_lines, read_command_lines_1): Return counted_command_line.
9475         (free_command_lines): Use "delete".
9476         (copy_command_lines): Remove.
9477         (define_command, document_command, show_user_1): Update.
9478         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9479         a counted_command_line.
9480         * breakpoint.h (counted_command_line): Remove typedef.
9481         (breakpoint_set_commands): Update.
9482         * breakpoint.c (check_no_tracepoint_commands)
9483         (validate_commands_for_breakpoint): Update.
9484         (breakpoint_set_commands): Change commands to be a
9485         counted_command_line.
9486         (commands_command_1, update_dprintf_command_list)
9487         (create_tracepoint_from_upload): Update.
9488
9489 2018-05-04  Tom Tromey  <tom@tromey.com>
9490
9491         * cli/cli-decode.h (cmd_list_element): New constructor.
9492         (~cmd_list_element): New destructor.
9493         (struct cmd_list_element): Add initializers.
9494         * cli/cli-decode.c (do_add_cmd): Use "new".
9495         (delete_cmd): Use "delete".
9496
9497 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9498             Pedro Alves <palves@redhat.com>
9499
9500         PR breakpoints/19806 and support for PR external/20207.
9501         * NEWS: Mention Aarch64 watchpoint improvements.
9502         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9503         watchpoints and PR external/20207 watchpoints.
9504         * nat/aarch64-linux-hw-point.c
9505         (kernel_supports_any_contiguous_range): New.
9506         (aarch64_watchpoint_offset): New.
9507         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9508         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9509         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9510         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9511         next_addr_orig_p.  Support PR external/20207 watchpoints.
9512         (aarch64_downgrade_regs): New.
9513         (aarch64_dr_state_insert_one_point): New parameters offset and
9514         addr_orig.
9515         (aarch64_dr_state_remove_one_point): Likewise.
9516         (aarch64_handle_breakpoint): Update caller.
9517         (aarch64_handle_aligned_watchpoint): Likewise.
9518         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9519         aligned_offset.
9520         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9521         aarch64_downgrade_regs.
9522         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9523         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9524         (DR_CONTROL_MASK): ... this.
9525         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9526         (unsigned int aarch64_watchpoint_offset): New prototype.
9527         (aarch64_linux_set_debug_regs): Remove const from state.
9528         * utils.c (align_up, align_down): Move to ...
9529         * common/common-utils.c (align_up, align_down): ... here.
9530         * utils.h (align_up, align_down): Move to ...
9531         * common/common-utils.h (align_up, align_down): ... here.
9532
9533 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9534
9535         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9536         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9537         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9538         Re-implement to match the ABI as summarized in GCC's
9539         gcc/config/sparc/sparc.c.  All callers updated.
9540         (sparc32_store_arguments): Remove assertion.
9541
9542 2018-05-04  Tom Tromey  <tom@tromey.com>
9543
9544         * printcmd.c: Don't include tui.h.
9545         (decode_format): Use skip_spaces.
9546
9547 2018-05-04  Tom Tromey  <tom@tromey.com>
9548
9549         PR gdb/22619:
9550         * printcmd.c (last_count): New global.
9551         (x_command): Use saved count when repeating.
9552
9553 2018-05-04  Tom Tromey  <tom@tromey.com>
9554
9555         * nto-procfs.c (do_closedir_cleanup): Remove.
9556         (procfs_pidlist): Use gdb_dir_up.
9557         * procfs.c (do_closedir_cleanup): Remove.
9558         (proc_update_threads): Use gdb_dir_up.
9559         * common/filestuff.h (struct gdb_dir_deleter): New.
9560         (gdb_dir_up): New typedef.
9561
9562 2018-05-04  Tom Tromey  <tom@tromey.com>
9563
9564         * ada-lang.c (print_mention_exception): Use std::string.
9565
9566 2018-05-04  Tom Tromey  <tom@tromey.com>
9567
9568         * ada-lang.c (create_excep_cond_exprs): Update.
9569         (ada_exception_catchpoint_cond_string): Use std::string.
9570
9571 2018-05-04  Tom Tromey  <tom@tromey.com>
9572
9573         * ada-lang.c (xget_renaming_scope): Return std::string.
9574         (old_renaming_is_invisible): Update.
9575
9576 2018-05-04  Tom Tromey  <tom@tromey.com>
9577
9578         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9579         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9580
9581 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9582
9583         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9584
9585 2018-05-04  Tom Tromey  <tom@tromey.com>
9586
9587         * remote.c (remote_query_supported_append): Change type.
9588         (remote_check_symbols): Update.
9589
9590 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9591
9592         PR gdb/11420
9593         * configure.ac: Prepend libpython.
9594         * python/python-config.py: Likewise.
9595         * configure: Regenerate.
9596
9597 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9598
9599         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9600
9601 2018-05-03  Pedro Alves  <palves@redhat.com>
9602
9603         * s390-linux-nat.c
9604         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9605         override.  Write 'true' instead of '1'.
9606         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9607         declaration.
9608
9609 2018-05-02  Pedro Alves  <palves@redhat.com>
9610
9611         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9612         add_inf_child_target.
9613         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9614         add_inf_child_target.
9615         * aix-thread.c (aix_thread_target_info): New.
9616         (aix_thread_target) <shortname, longname, doc>: Delete.
9617         <info>: New.
9618         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9619         add_inf_child_target.
9620         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9621         add_inf_child_target.
9622         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9623         add_inf_child_target.
9624         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9625         add_inf_child_target.
9626         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9627         add_inf_child_target.
9628         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9629         add_inf_child_target.
9630         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9631         add_inf_child_target.
9632         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9633         add_inf_child_target.
9634         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9635         add_inf_child_target.
9636         * bfd-target.c (target_bfd_target_info): New.
9637         (target_bfd) <shortname, longname, doc>: Delete.
9638         <info>: New.
9639         * bsd-kvm.c (bsd_kvm_target_info): New.
9640         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9641         <info>: New.
9642         (bsd_kvm_target::open): Rename to ...
9643         (bsd_kvm_target_open): ... this.  Adjust.
9644         * bsd-uthread.c (bsd_uthread_target_info): New.
9645         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9646         <info>: New.
9647         * corefile.c (core_file_command): Adjust.
9648         * corelow.c (core_target_info): New.
9649         (core_target) <shortname, longname, doc>: Delete.
9650         <info>: New.
9651         (core_target::open): Rename to ...
9652         (core_target_open): ... this.  Adjust.
9653         * ctf.c (ctf_target_info): New.
9654         (ctf_target) <shortname, longname, doc>: Delete.
9655         <info>: New.
9656         (ctf_target::open): Rename to ...
9657         (ctf_target_open): ... this.
9658         (_initialize_ctf): Adjust.
9659         * exec.c (exec_target_info): New.
9660         (exec_target) <shortname, longname, doc>: Delete.
9661         <info>: New.
9662         (exec_target::open): Rename to ...
9663         (exec_target_open): ... this.
9664         * gdbcore.h (core_target_open): Declare.
9665         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9666         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9667         add_inf_child_target.
9668         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9669         add_inf_child_target.
9670         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9671         add_inf_child_target.
9672         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9673         add_inf_child_target.
9674         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9675         add_inf_child_target.
9676         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9677         add_inf_child_target.
9678         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9679         add_inf_child_target.
9680         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9681         add_inf_child_target.
9682         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9683         add_inf_child_target.
9684         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9685         add_inf_child_target.
9686         * inf-child.c (inf_child_target_info): New.
9687         (inf_child_target::info): New.
9688         (inf_child_open_target): Remove 'target' parameter.  Use
9689         get_native_target instead.
9690         (inf_child_target::open): Delete.
9691         (add_inf_child_target): New.
9692         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9693         Delete.
9694         <info>: New.
9695         (add_inf_child_target): Declare.
9696         (inf_child_open_target): Declare.
9697         * linux-thread-db.c (thread_db_target_info): New.
9698         (thread_db_target) <shortname, longname, doc>: Delete.
9699         <info>: New.
9700         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9701         add_inf_child_target.
9702         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9703         add_inf_child_target.
9704         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9705         add_inf_child_target.
9706         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9707         add_inf_child_target.
9708         * make-target-delegates (print_class): Adjust.
9709         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9710         add_inf_child_target.
9711         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9712         add_inf_child_target.
9713         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9714         add_inf_child_target.
9715         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9716         add_inf_child_target.
9717         * nto-procfs.c (nto_native_target_info): New.
9718         (nto_procfs_target_native) <shortname, longname, doc>:
9719         Delete.
9720         <info>: New.
9721         (nto_procfs_target_info): New.
9722         (nto_procfs_target_procfs) <shortname, longname, doc>:
9723         Delete.
9724         <info>: New.
9725         (init_procfs_targets): Adjust.
9726         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9727         add_inf_child_target.
9728         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9729         add_inf_child_target.
9730         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9731         add_inf_child_target.
9732         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9733         add_inf_child_target.
9734         * ravenscar-thread.c (ravenscar_target_info): New.
9735         (ravenscar_thread_target) <shortname, longname, doc>:
9736         Delete.
9737         <info>: New.
9738         * record-btrace.c (record_btrace_target_info):
9739         (record_btrace_target) <shortname, longname, doc>: Delete.
9740         <info>: New.
9741         (record_btrace_target::open): Rename to ...
9742         (record_btrace_target_open): ... this.  Adjust.
9743         * record-full.c (record_longname, record_doc): New.
9744         (record_full_base_target) <shortname, longname, doc>: Delete.
9745         <info>: New.
9746         (record_full_target_info): New.
9747         (record_full_target): <shortname>: Delete.
9748         <info>: New.
9749         (record_full_core_open_1, record_full_open_1): Update comments.
9750         (record_full_base_target::open): Rename to ...
9751         (record_full_open): ... this.
9752         (cmd_record_full_restore): Update.
9753         (_initialize_record_full): Update.
9754         * remote-sim.c (remote_sim_target_info): New.
9755         (gdbsim_target) <shortname, longname, doc>: Delete.
9756         <info>: New.
9757         (gdbsim_target::open): Rename to ...
9758         (gdbsim_target_open): ... this.
9759         (_initialize_remote_sim): Adjust.
9760         * remote.c (remote_doc): New.
9761         (remote_target_info): New.
9762         (remote_target) <shortname, longname, doc>: Delete.
9763         <info>: New.
9764         (extended_remote_target_info): New.
9765         (extended_remote_target) <shortname, longname, doc>: Delete.
9766         <info>: New.
9767         (remote_target::open_1): Make static.  Adjust.
9768         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9769         * s390-linux-nat.c (_initialize_s390_nat): Use
9770         add_inf_child_target.
9771         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9772         add_inf_child_target.
9773         * sol-thread.c (thread_db_target_info): New.
9774         (sol_thread_target) <shortname, longname, doc>: Delete.
9775         <info>: New.
9776         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9777         add_inf_child_target.
9778         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9779         add_inf_child_target.
9780         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9781         add_inf_child_target.
9782         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9783         add_inf_child_target.
9784         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9785         add_inf_child_target.
9786         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9787         add_inf_child_target.
9788         * spu-linux-nat.c (_initialize_spu_nat): Use
9789         add_inf_child_target.
9790         * spu-multiarch.c (spu_multiarch_target_info): New.
9791         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9792         <info>: New.
9793         * target-delegates.c: Regenerate.
9794         * target.c: Include <unordered_map>.
9795         (target_ops_p): Delete.
9796         (DEF_VEC_P(target_ops_p)): Delete.
9797         (target_factories): New.
9798         (test_target_info): New.
9799         (test_target_ops::info): New.
9800         (open_target): Adjust to use target_factories.
9801         (add_target_with_completer): Rename to ...
9802         (add_target): ... this.  Change prototype.  Register target_info
9803         and open callback in target_factories.  Register target_info in
9804         command context instead of target_ops.
9805         (add_target): Delete old implementation.
9806         (add_deprecated_target_alias): Change prototype.  Adjust.
9807         (the_native_target): New.
9808         (set_native_target, get_native_target): New.
9809         (find_default_run_target): Use the_native_target.
9810         (find_attach_target, find_run_target): Simplify.
9811         (target_ops::open): Delete.
9812         (dummy_target_info): New.
9813         (dummy_target::shortname, dummy_target::longname)
9814         (dummy_target::doc): Delete.
9815         (dummy_target::info): New.
9816         (debug_target::shortname, debug_target::longname)
9817         (debug_target::doc): Delete.
9818         (debug_target::info): New.
9819         * target.h (struct target_info): New.
9820         (target_ops::~target_ops): Add comment.
9821         (target_ops::info): New.
9822         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9823         longer virtual.  Implement in terms of target_info.
9824         (set_native_target, get_native_target): Declare.
9825         (target_open_ftype): New.
9826         (add_target, add_target_with_completer)
9827         (add_deprecated_target_alias): Change prototype.
9828         (test_target) <shortname, longname, doc>: Delete.
9829         <info>: New.
9830         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9831         add_inf_child_target.
9832         * tracefile-tfile.c (tfile_target_info): New.
9833         (tfile_target) <shortname, longname, doc>: Delete.
9834         <info>: New.
9835         (tfile_target::open): Rename to ...
9836         (tfile_target_open): ... this.
9837         (_initialize_tracefile_tfile): Adjust.
9838         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9839         add_inf_child_target.
9840         * windows-nat.c (_initialize_windows_nat): Use
9841         add_inf_child_target.
9842         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9843         add_inf_child_target.
9844
9845 2018-05-02  Pedro Alves  <palves@redhat.com>
9846
9847         * linux-nat.h (linux_nat_target) <low_new_thread,
9848         low_delete_thread, low_new_fork, low_forget_process,
9849         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9850         New virtual methods.
9851         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9852         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9853         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9854         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9855         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9856         Delete.
9857         * linux-fork.c (delete_fork): Adjust to call low method.
9858         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9859         (linux_nat_new_fork, linux_nat_forget_process_hook)
9860         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9861         (linux_nat_status_is_event):
9862         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9863         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9864         to call low method.
9865         (sigtrap_is_event): Rename to ...
9866         (linux_nat_target::low_status_is_event): ... this.
9867         (linux_nat_set_status_is_event): Delete.
9868         (save_stop_reason, linux_nat_wait_1)
9869         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9870         low methods.
9871         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9872         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9873         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9874         (linux_nat_set_prepare_to_resume): Delete.
9875         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9876         low virtual methods.
9877         * amd64-linux-nat.c: Likewise.
9878         * arm-linux-nat.c: Likewise.
9879         * i386-linux-nat.c: Likewise.
9880         * ia64-linux-nat.c: Likewise.
9881         * mips-linux-nat.c: Likewise.
9882         * ppc-linux-nat.c: Likewise.
9883         * s390-linux-nat.c: Likewise.
9884         * sparc64-linux-nat.c: Likewise.
9885         * x86-linux-nat.c: Likewise.
9886         * x86-linux-nat.h: Include "nat/x86-linux.h".
9887         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9888         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9889         Override methods.
9890
9891 2018-05-02  Pedro Alves  <palves@redhat.com>
9892
9893         * target.h (target_ops)
9894         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9895         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9896         stopped_by_watchpoint, have_continuable_watchpoint,
9897         stopped_data_address, watchpoint_addr_within_range,
9898         can_accel_watchpoint_condition, can_run, thread_alive,
9899         has_all_memory, has_memory, has_stack, has_registers,
9900         has_execution, can_async_p, is_async_p, supports_non_stop,
9901         always_non_stop_p, can_execute_reverse, supports_multi_process,
9902         supports_enable_disable_tracepoint,
9903         supports_disable_randomization, supports_string_tracing,
9904         supports_evaluation_of_breakpoint_conditions,
9905         can_run_breakpoint_commands, filesystem_is_local,
9906         can_download_tracepoint, get_trace_state_variable_value,
9907         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9908         record_is_replaying, record_will_replay,
9909         augmented_libraries_svr4_read>: Adjust to return bool.
9910         * aarch64-linux-nat.c: All implementations adjusted.
9911         * aix-thread.c: All implementations adjusted.
9912         * arm-linux-nat.c: All implementations adjusted.
9913         * breakpoint.c: All implementations adjusted.
9914         * bsd-kvm.c: All implementations adjusted.
9915         * bsd-uthread.c: All implementations adjusted.
9916         * corelow.c: All implementations adjusted.
9917         * ctf.c: All implementations adjusted.
9918         * darwin-nat.c: All implementations adjusted.
9919         * darwin-nat.h: All implementations adjusted.
9920         * exec.c: All implementations adjusted.
9921         * fbsd-nat.c: All implementations adjusted.
9922         * fbsd-nat.h: All implementations adjusted.
9923         * gnu-nat.c: All implementations adjusted.
9924         * gnu-nat.h: All implementations adjusted.
9925         * go32-nat.c: All implementations adjusted.
9926         * ia64-linux-nat.c: All implementations adjusted.
9927         * inf-child.c: All implementations adjusted.
9928         * inf-child.h: All implementations adjusted.
9929         * inf-ptrace.c: All implementations adjusted.
9930         * inf-ptrace.h: All implementations adjusted.
9931         * linux-nat.c: All implementations adjusted.
9932         * linux-nat.h: All implementations adjusted.
9933         * mips-linux-nat.c: All implementations adjusted.
9934         * nto-procfs.c: All implementations adjusted.
9935         * ppc-linux-nat.c: All implementations adjusted.
9936         * procfs.c: All implementations adjusted.
9937         * ravenscar-thread.c: All implementations adjusted.
9938         * record-btrace.c: All implementations adjusted.
9939         * record-full.c: All implementations adjusted.
9940         * remote-sim.c: All implementations adjusted.
9941         * remote.c: All implementations adjusted.
9942         * s390-linux-nat.c: All implementations adjusted.
9943         * sol-thread.c: All implementations adjusted.
9944         * spu-multiarch.c: All implementations adjusted.
9945         * target-delegates.c: All implementations adjusted.
9946         * target.c: All implementations adjusted.
9947         * target.h: All implementations adjusted.
9948         * tracefile-tfile.c: All implementations adjusted.
9949         * tracefile.c: All implementations adjusted.
9950         * tracefile.h: All implementations adjusted.
9951         * windows-nat.c: All implementations adjusted.
9952         * x86-linux-nat.h: All implementations adjusted.
9953         * x86-nat.h: All implementations adjusted.
9954
9955 2018-05-02  Pedro Alves  <palves@redhat.com>
9956
9957         * make-target-delegates (scan_target_h): Don't trim lines here.
9958         Replace sequences of tabs and/or whitespace with a single
9959         whitespace.
9960         (top level, parsing methods): Trim each line before processing it
9961         here.
9962
9963 2018-05-02  Pedro Alves  <palves@redhat.com>
9964             John Baldwin  <jhb@freebsd.org>
9965
9966         * target.h (enum strata) <debug_stratum>: New.
9967         (struct target_ops) <all delegation methods>: Replace by C++
9968         virtual methods, and drop "to_" prefix.  All references updated
9969         throughout.
9970         <to_shortname, to_longname, to_doc, to_data,
9971         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9972         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9973         virtual methods.  All references updated throughout.
9974         <can_attach, supports_terminal_ours, can_create_inferior,
9975         get_thread_control_capabilities, attach_no_wait>: New
9976         virtual methods.
9977         <insert_breakpoint, remove_breakpoint>: Now
9978         TARGET_DEFAULT_NORETURN methods.
9979         <info_proc>: Now returns bool.
9980         <to_magic>: Delete.
9981         (OPS_MAGIC): Delete.
9982         (current_target): Delete.  All references replaced by references
9983         to ...
9984         (target_stack): ... this.  New.
9985         (target_shortname, target_longname): Adjust.
9986         (target_can_run): Now a function declaration.
9987         (default_child_has_all_memory, default_child_has_memory)
9988         (default_child_has_stack, default_child_has_registers)
9989         (default_child_has_execution): Remove target_ops parameter.
9990         (complete_target_initialization): Delete.
9991         (memory_breakpoint_target): New template class.
9992         (test_target_ops): Refactor as a C++ class with virtual methods.
9993         * make-target-delegates (NAME_PART): Tighten.
9994         (POINTER_PART, CP_SYMBOL): New.
9995         (SIMPLE_RETURN_PART): Reimplement.
9996         (VEC_RETURN_PART): Expect less.
9997         (RETURN_PART, VIRTUAL_PART): New.
9998         (METHOD): Adjust to C++ virtual methods.
9999         (scan_target_h): Remove reference to C99.
10000         (dname): Output "target_ops::" prefix.
10001         (write_function_header): Adjust to output a C++ class method.
10002         (write_declaration): New.
10003         (write_delegator): Adjust to output a C++ class method.
10004         (tdname): Output "dummy_target::" prefix.
10005         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10006         method.
10007         (tdefault_names, debug_names): Delete.
10008         (return_types, tdefaults, styles, argtypes_array): New.
10009         (top level): All methods are delegators.
10010         (print_class): New.
10011         (top level): Print dummy_target and debug_target classes.
10012         * target-delegates.c: Regenerate.
10013         * target-debug.h (target_debug_print_enum_info_proc_what)
10014         (target_debug_print_thread_control_capabilities)
10015         (target_debug_print_thread_info_p): New.
10016         * target.c (dummy_target): Delete.
10017         (the_dummy_target, the_debug_target): New.
10018         (target_stack): Now extern.
10019         (set_targetdebug): Push/unpush debug target.
10020         (default_child_has_all_memory, default_child_has_memory)
10021         (default_child_has_stack, default_child_has_registers)
10022         (default_child_has_execution): Remove target_ops parameter.
10023         (complete_target_initialization): Delete.
10024         (add_target_with_completer): No longer call
10025         complete_target_initialization.
10026         (target_supports_terminal_ours): Use regular delegation.
10027         (update_current_target): Delete.
10028         (push_target): No longer check magic number.  Don't call
10029         update_current_target.
10030         (unpush_target): Don't call update_current_target.
10031         (target_is_pushed): No longer check magic number.
10032         (target_require_runnable): Skip for all stratums over
10033         process_stratum.
10034         (target_ops::info_proc): New.
10035         (target_info_proc): Use find_target_at and
10036         find_default_run_target.
10037         (target_supports_disable_randomization): Use regular delegation.
10038         (target_get_osdata): Use find_target_at.
10039         (target_ops::open, target_ops::close, target_ops::can_attach)
10040         (target_ops::attach, target_ops::can_create_inferior)
10041         (target_ops::create_inferior, target_ops::can_run)
10042         (target_can_run): New.
10043         (default_fileio_target): Use regular delegation.
10044         (target_ops::fileio_open, target_ops::fileio_pwrite)
10045         (target_ops::fileio_pread, target_ops::fileio_fstat)
10046         (target_ops::fileio_close, target_ops::fileio_unlink)
10047         (target_ops::fileio_readlink): New.
10048         (target_fileio_open_1, target_fileio_unlink)
10049         (target_fileio_readlink): Always call the target method.  Handle
10050         FILEIO_ENOSYS.
10051         (return_zero, return_zero_has_execution): Delete.
10052         (init_dummy_target): Delete.
10053         (dummy_target::dummy_target, dummy_target::shortname)
10054         (dummy_target::longname, dummy_target::doc)
10055         (debug_target::debug_target, debug_target::shortname)
10056         (debug_target::longname, debug_target::doc): New.
10057         (target_supports_delete_record): Use regular delegation.
10058         (setup_target_debug): Delete.
10059         (maintenance_print_target_stack): Skip debug_stratum.
10060         (initialize_targets): Instantiate the_dummy_target and
10061         the_debug_target.
10062         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10063         use target_stack.
10064         (target_auxv_search, fprint_target_auxv): Adjust.
10065         (info_auxv_command): Adjust to use target_stack.
10066         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10067         * exceptions.c (print_flush): Handle a NULL target_stack.
10068         * regcache.c (target_ops_no_register): Refactor as class with
10069         virtual methods.
10070
10071         * exec.c (exec_target): New class.
10072         (exec_ops): Now an exec_target.
10073         (exec_open, exec_close_1, exec_get_section_table)
10074         (exec_xfer_partial, exec_files_info, exec_has_memory)
10075         (exec_make_note_section): Refactor as exec_target methods.
10076         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10077         Delete.
10078         (exec_target::find_memory_regions): New.
10079         (_initialize_exec): Don't call init_exec_ops.
10080         * gdbcore.h (exec_file_clear): Delete.
10081
10082         * corefile.c (core_target): Delete.
10083         (core_file_command): Adjust.
10084         * corelow.c (core_target): New class.
10085         (the_core_target): New.
10086         (core_close): Remove target_ops parameter.
10087         (core_close_cleanup): Adjust.
10088         (core_target::close): New.
10089         (core_open, core_detach, get_core_registers, core_files_info)
10090         (core_xfer_partial, core_thread_alive, core_read_description)
10091         (core_pid_to_str, core_thread_name, core_has_memory)
10092         (core_has_stack, core_has_registers, core_info_proc): Rework as
10093         core_target methods.
10094         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10095         (_initialize_corelow): Initialize the_core_target.
10096         * gdbcore.h (core_target): Delete.
10097         (the_core_target): New.
10098
10099         * ctf.c: (ctf_target): New class.
10100         (ctf_ops): Now a ctf_target.
10101         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10102         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10103         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10104         methods.
10105         (init_ctf_ops): Delete.
10106         (_initialize_ctf): Don't call it.
10107         * tracefile-tfile.c (tfile_target): New class.
10108         (tfile_ops): Now a tfile_target.
10109         (tfile_open, tfile_close, tfile_files_info)
10110         (tfile_get_tracepoint_status, tfile_trace_find)
10111         (tfile_fetch_registers, tfile_xfer_partial)
10112         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10113         Refactor as tfile_target methods.
10114         (tfile_xfer_partial_features): Remove target_ops parameter.
10115         (init_tfile_ops): Delete.
10116         (_initialize_tracefile_tfile): Don't call it.
10117         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10118         (tracefile_has_stack, tracefile_has_registers)
10119         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10120         tracefile_target methods.
10121         (init_tracefile_ops): Delete.
10122         (tracefile_target::tracefile_target): New.
10123         * tracefile.h: Include "target.h".
10124         (tracefile_target): New class.
10125         (init_tracefile_ops): Delete.
10126
10127         * spu-multiarch.c (spu_multiarch_target): New class.
10128         (spu_ops): Now a spu_multiarch_target.
10129         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10130         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10131         (spu_search_memory, spu_mourn_inferior): Refactor as
10132         spu_multiarch_target methods.
10133         (init_spu_ops): Delete.
10134         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10135         complete_target_initialization.
10136
10137         * ravenscar-thread.c (ravenscar_thread_target): New class.
10138         (ravenscar_ops): Now a ravenscar_thread_target.
10139         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10140         (ravenscar_thread_alive, ravenscar_pid_to_str)
10141         (ravenscar_fetch_registers, ravenscar_store_registers)
10142         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10143         (ravenscar_stopped_by_hw_breakpoint)
10144         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10145         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10146         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10147         methods.
10148         (init_ravenscar_thread_ops): Delete.
10149         (_initialize_ravenscar): Remove references to
10150         init_ravenscar_thread_ops and complete_target_initialization.
10151
10152         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10153         (bsd_uthread_target): New class.
10154         (bsd_uthread_ops): Now a bsd_uthread_target.
10155         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10156         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10157         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10158         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10159         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10160         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10161         (bsd_uthread_target): Delete function.
10162         (_initialize_bsd_uthread): Remove reference to
10163         complete_target_initialization.
10164
10165         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10166         (target_bfd): ... this new class.
10167         (target_bfd_xfer_partial, target_bfd_get_section_table)
10168         (target_bfd_close): Refactor as target_bfd methods.
10169         (target_bfd::~target_bfd): New.
10170         (target_bfd_reopen): Adjust.
10171         (target_bfd::close): New.
10172
10173         * record-btrace.c (record_btrace_target): New class.
10174         (record_btrace_ops): Now a record_btrace_target.
10175         (record_btrace_open, record_btrace_stop_recording)
10176         (record_btrace_disconnect, record_btrace_close)
10177         (record_btrace_async, record_btrace_info)
10178         (record_btrace_insn_history, record_btrace_insn_history_range)
10179         (record_btrace_insn_history_from, record_btrace_call_history)
10180         (record_btrace_call_history_range)
10181         (record_btrace_call_history_from, record_btrace_record_method)
10182         (record_btrace_is_replaying, record_btrace_will_replay)
10183         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10184         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10185         (record_btrace_store_registers, record_btrace_prepare_to_store)
10186         (record_btrace_to_get_unwinder)
10187         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10188         (record_btrace_commit_resume, record_btrace_wait)
10189         (record_btrace_stop, record_btrace_can_execute_reverse)
10190         (record_btrace_stopped_by_sw_breakpoint)
10191         (record_btrace_supports_stopped_by_sw_breakpoint)
10192         (record_btrace_stopped_by_hw_breakpoint)
10193         (record_btrace_supports_stopped_by_hw_breakpoint)
10194         (record_btrace_update_thread_list, record_btrace_thread_alive)
10195         (record_btrace_goto_begin, record_btrace_goto_end)
10196         (record_btrace_goto, record_btrace_stop_replaying_all)
10197         (record_btrace_execution_direction)
10198         (record_btrace_prepare_to_generate_core)
10199         (record_btrace_done_generating_core): Refactor as
10200         record_btrace_target methods.
10201         (init_record_btrace_ops): Delete.
10202         (_initialize_record_btrace): Remove reference to
10203         init_record_btrace_ops.
10204         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10205         the execution_direction global.
10206         (record_full_base_target, record_full_target)
10207         (record_full_core_target): New classes.
10208         (record_full_ops): Now a record_full_target.
10209         (record_full_core_ops): Now a record_full_core_target.
10210         (record_full_target::detach, record_full_target::disconnect)
10211         (record_full_core_target::disconnect)
10212         (record_full_target::mourn_inferior, record_full_target::kill):
10213         New.
10214         (record_full_open, record_full_close, record_full_async): Refactor
10215         as methods of the record_full_base_target class.
10216         (record_full_resume, record_full_commit_resume): Refactor
10217         as methods of the record_full_target class.
10218         (record_full_wait, record_full_stopped_by_watchpoint)
10219         (record_full_stopped_data_address)
10220         (record_full_stopped_by_sw_breakpoint)
10221         (record_full_supports_stopped_by_sw_breakpoint)
10222         (record_full_stopped_by_hw_breakpoint)
10223         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10224         methods of the record_full_base_target class.
10225         (record_full_store_registers, record_full_xfer_partial)
10226         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10227         Refactor as methods of the record_full_target class.
10228         (record_full_can_execute_reverse, record_full_get_bookmark)
10229         (record_full_goto_bookmark, record_full_execution_direction)
10230         (record_full_record_method, record_full_info, record_full_delete)
10231         (record_full_is_replaying, record_full_will_replay)
10232         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10233         (record_full_stop_replaying): Refactor as methods of the
10234         record_full_base_target class.
10235         (record_full_core_resume, record_full_core_kill)
10236         (record_full_core_fetch_registers)
10237         (record_full_core_prepare_to_store)
10238         (record_full_core_store_registers, record_full_core_xfer_partial)
10239         (record_full_core_insert_breakpoint)
10240         (record_full_core_remove_breakpoint)
10241         (record_full_core_has_execution): Refactor
10242         as methods of the record_full_core_target class.
10243         (record_full_base_target::supports_delete_record): New.
10244         (init_record_full_ops): Delete.
10245         (init_record_full_core_ops): Delete.
10246         (record_full_save): Refactor as method of the
10247         record_full_base_target class.
10248         (_initialize_record_full): Remove references to
10249         init_record_full_ops and init_record_full_core_ops.
10250
10251         * remote.c (remote_target, extended_remote_target): New classes.
10252         (remote_ops): Now a remote_target.
10253         (extended_remote_ops): Now an extended_remote_target.
10254         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10255         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10256         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10257         (remote_pass_signals, remote_set_syscall_catchpoint)
10258         (remote_program_signals, )
10259         (remote_thread_always_alive): Remove target_ops parameter.
10260         (remote_thread_alive, remote_thread_name)
10261         (remote_update_thread_list, remote_threads_extra_info)
10262         (remote_static_tracepoint_marker_at)
10263         (remote_static_tracepoint_markers_by_strid)
10264         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10265         (remote_open): Refactor as methods of remote_target.
10266         (extended_remote_open, extended_remote_detach)
10267         (extended_remote_attach, extended_remote_post_attach):
10268         (extended_remote_supports_disable_randomization)
10269         (extended_remote_create_inferior): : Refactor as method of
10270         extended_remote_target.
10271         (remote_set_permissions, remote_open_1, remote_detach)
10272         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10273         (remote_resume, remote_commit_resume, remote_stop)
10274         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10275         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10276         (remote_prepare_to_store, remote_store_registers)
10277         (remote_flash_erase, remote_flash_done, remote_files_info)
10278         (remote_kill, remote_mourn, remote_insert_breakpoint)
10279         (remote_remove_breakpoint, remote_insert_watchpoint)
10280         (remote_watchpoint_addr_within_range)
10281         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10282         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10283         (remote_supports_stopped_by_sw_breakpoint)
10284         (remote_stopped_by_hw_breakpoint)
10285         (remote_supports_stopped_by_hw_breakpoint)
10286         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10287         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10288         (remote_verify_memory): Refactor as methods of remote_target.
10289         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10290         parameter.
10291         (remote_xfer_partial, remote_get_memory_xfer_limit)
10292         (remote_search_memory, remote_rcmd, remote_memory_map)
10293         (remote_pid_to_str, remote_get_thread_local_address)
10294         (remote_get_tib_address, remote_read_description): Refactor as
10295         methods of remote_target.
10296         (remote_target::fileio_open, remote_target::fileio_pwrite)
10297         (remote_target::fileio_pread, remote_target::fileio_close): New.
10298         (remote_hostio_readlink, remote_hostio_fstat)
10299         (remote_filesystem_is_local, remote_can_execute_reverse)
10300         (remote_supports_non_stop, remote_supports_disable_randomization)
10301         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10302         (remote_supports_enable_disable_tracepoint)
10303         (remote_supports_string_tracing)
10304         (remote_can_run_breakpoint_commands, remote_trace_init)
10305         (remote_download_tracepoint, remote_can_download_tracepoint)
10306         (remote_download_trace_state_variable, remote_enable_tracepoint)
10307         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10308         (remote_trace_start, remote_get_trace_status)
10309         (remote_get_tracepoint_status, remote_trace_stop)
10310         (remote_trace_find, remote_get_trace_state_variable_value)
10311         (remote_save_trace_data, remote_get_raw_trace_data)
10312         (remote_set_disconnected_tracing, remote_core_of_thread)
10313         (remote_set_circular_trace_buffer, remote_traceframe_info)
10314         (remote_get_min_fast_tracepoint_insn_len)
10315         (remote_set_trace_buffer_size, remote_set_trace_notes)
10316         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10317         (remote_disable_btrace, remote_teardown_btrace)
10318         (remote_read_btrace, remote_btrace_conf)
10319         (remote_augmented_libraries_svr4_read, remote_load)
10320         (remote_pid_to_exec_file, remote_can_do_single_step)
10321         (remote_execution_direction, remote_thread_handle_to_thread_info):
10322         Refactor as methods of remote_target.
10323         (init_remote_ops, init_extended_remote_ops): Delete.
10324         (remote_can_async_p, remote_is_async_p, remote_async)
10325         (remote_thread_events, remote_upload_tracepoints)
10326         (remote_upload_trace_state_variables): Refactor as methods of
10327         remote_target.
10328         (_initialize_remote): Remove references to init_remote_ops and
10329         init_extended_remote_ops.
10330
10331         * remote-sim.c (gdbsim_target): New class.
10332         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10333         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10334         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10335         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10336         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10337         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10338         Refactor as methods of gdbsim_target.
10339         (gdbsim_ops): Now a gdbsim_target.
10340         (init_gdbsim_ops): Delete.
10341         (gdbsim_cntrl_c): Adjust.
10342         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10343
10344         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10345         (the_amd64_linux_nat_target): New.
10346         (amd64_linux_fetch_inferior_registers)
10347         (amd64_linux_store_inferior_registers): Refactor as methods of
10348         amd64_linux_nat_target.
10349         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10350         * i386-linux-nat.c: Don't include "linux-nat.h".
10351         (i386_linux_nat_target): New class.
10352         (the_i386_linux_nat_target): New.
10353         (i386_linux_fetch_inferior_registers)
10354         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10355         as methods of i386_linux_nat_target.
10356         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10357         * inf-child.c (inf_child_ops): Delete.
10358         (inf_child_fetch_inferior_registers)
10359         (inf_child_store_inferior_registers): Delete.
10360         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10361         methods of inf_child_target.
10362         (inf_child_target::supports_terminal_ours)
10363         (inf_child_target::terminal_init)
10364         (inf_child_target::terminal_inferior)
10365         (inf_child_target::terminal_ours_for_output)
10366         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10367         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10368         New.
10369         (inf_child_open, inf_child_disconnect, inf_child_close)
10370         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10371         (inf_child_post_startup_inferior, inf_child_can_run)
10372         (inf_child_pid_to_exec_file): Refactor as methods of
10373         inf_child_target.
10374         (inf_child_follow_fork): Delete.
10375         (inf_child_target::can_create_inferior)
10376         (inf_child_target::can_attach): New.
10377         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10378         (inf_child_target::has_stack, inf_child_target::has_registers)
10379         (inf_child_target::has_execution): New.
10380         (inf_child_fileio_open, inf_child_fileio_pwrite)
10381         (inf_child_fileio_pread, inf_child_fileio_fstat)
10382         (inf_child_fileio_close, inf_child_fileio_unlink)
10383         (inf_child_fileio_readlink, inf_child_use_agent)
10384         (inf_child_can_use_agent): Refactor as methods of
10385         inf_child_target.
10386         (return_zero, inf_child_target): Delete.
10387         (inf_child_target::inf_child_target): New.
10388         * inf-child.h: Include "target.h".
10389         (inf_child_target): Delete function prototype.
10390         (inf_child_target): New class.
10391         (inf_child_open_target, inf_child_mourn_inferior)
10392         (inf_child_maybe_unpush_target): Delete.
10393         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10394         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10395         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10396         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10397         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10398         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10399         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10400         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10401         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10402         methods of inf_ptrace_target.
10403         (inf_ptrace_target): Delete function.
10404         * inf-ptrace.h: Include "inf-child.h".
10405         (inf_ptrace_target): Delete function declaration.
10406         (inf_ptrace_target): New class.
10407         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10408         * linux-nat.c (linux_target): New.
10409         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10410         (linux_nat_target::~linux_nat_target): New.
10411         (linux_child_post_attach, linux_child_post_startup_inferior)
10412         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10413         (linux_child_remove_fork_catchpoint)
10414         (linux_child_insert_vfork_catchpoint)
10415         (linux_child_remove_vfork_catchpoint)
10416         (linux_child_insert_exec_catchpoint)
10417         (linux_child_remove_exec_catchpoint)
10418         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10419         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10420         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10421         (linux_nat_stopped_data_address)
10422         (linux_nat_stopped_by_sw_breakpoint)
10423         (linux_nat_supports_stopped_by_sw_breakpoint)
10424         (linux_nat_stopped_by_hw_breakpoint)
10425         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10426         (linux_nat_kill, linux_nat_mourn_inferior)
10427         (linux_nat_xfer_partial, linux_nat_thread_alive)
10428         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10429         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10430         (linux_child_static_tracepoint_markers_by_strid)
10431         (linux_nat_is_async_p, linux_nat_can_async_p)
10432         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10433         (linux_nat_supports_multi_process)
10434         (linux_nat_supports_disable_randomization, linux_nat_async)
10435         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10436         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10437         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10438         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10439         methods of linux_nat_target.
10440         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10441         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10442         parameter.
10443         (check_stopped_by_watchpoint): Adjust.
10444         (linux_xfer_partial): Delete.
10445         (linux_target_install_ops, linux_target, linux_nat_add_target):
10446         Delete.
10447         (linux_nat_target::linux_nat_target): New.
10448         * linux-nat.h: Include "inf-ptrace.h".
10449         (linux_nat_target): New.
10450         (linux_target, linux_target_install_ops, linux_nat_add_target):
10451         Delete function declarations.
10452         (linux_target): Declare global.
10453         * linux-thread-db.c (thread_db_target): New.
10454         (thread_db_target::thread_db_target): New.
10455         (thread_db_ops): Delete.
10456         (the_thread_db_target): New.
10457         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10458         (thread_db_update_thread_list, thread_db_pid_to_str)
10459         (thread_db_extra_thread_info)
10460         (thread_db_thread_handle_to_thread_info)
10461         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10462         (thread_db_resume): Refactor as methods of thread_db_target.
10463         (init_thread_db_ops): Delete.
10464         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10465         * x86-linux-nat.c: Don't include "linux-nat.h".
10466         (super_post_startup_inferior): Delete.
10467         (x86_linux_nat_target::~x86_linux_nat_target): New.
10468         (x86_linux_child_post_startup_inferior)
10469         (x86_linux_read_description, x86_linux_enable_btrace)
10470         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10471         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10472         methods of x86_linux_nat_target.
10473         (x86_linux_create_target): Delete.  Bits folded ...
10474         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10475         pointer.
10476         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10477         (x86_linux_nat_target): New class.
10478         (x86_linux_create_target): Delete.
10479         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10480         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10481         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10482         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10483         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10484         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10485         make extern.
10486         (x86_use_watchpoints): Delete.
10487         * x86-nat.h: Include "breakpoint.h" and "target.h".
10488         (x86_use_watchpoints): Delete.
10489         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10490         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10491         (x86_insert_watchpoint, x86_remove_watchpoint)
10492         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10493         (x86_stopped_by_hw_breakpoint): New declarations.
10494         (x86_nat_target): New template class.
10495
10496         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10497         (the_ppc_linux_nat_target): New.
10498         (ppc_linux_fetch_inferior_registers)
10499         (ppc_linux_can_use_hw_breakpoint)
10500         (ppc_linux_region_ok_for_hw_watchpoint)
10501         (ppc_linux_ranged_break_num_registers)
10502         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10503         (ppc_linux_insert_mask_watchpoint)
10504         (ppc_linux_remove_mask_watchpoint)
10505         (ppc_linux_can_accel_watchpoint_condition)
10506         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10507         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10508         (ppc_linux_watchpoint_addr_within_range)
10509         (ppc_linux_masked_watch_num_registers)
10510         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10511         (ppc_linux_read_description): Refactor as methods of
10512         ppc_linux_nat_target.
10513         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10514
10515         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10516         (procfs_target): New class.
10517         (the_procfs_target): New.
10518         (procfs_target): Delete function.
10519         (procfs_auxv_parse, procfs_attach, procfs_detach)
10520         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10521         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10522         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10523         (procfs_create_inferior, procfs_update_thread_list)
10524         (procfs_thread_alive, procfs_pid_to_str)
10525         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10526         (procfs_stopped_data_address, procfs_insert_watchpoint)
10527         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10528         (proc_find_memory_regions, procfs_info_proc)
10529         (procfs_make_note_section): Refactor as methods of procfs_target.
10530         (_initialize_procfs): Adjust.
10531         * sol-thread.c (sol_thread_target): New class.
10532         (sol_thread_ops): Now a sol_thread_target.
10533         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10534         (sol_thread_fetch_registers, sol_thread_store_registers)
10535         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10536         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10537         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10538         (init_sol_thread_ops): Delete.
10539         (_initialize_sol_thread): Adjust.  Remove references to
10540         init_sol_thread_ops and complete_target_initialization.
10541
10542         * windows-nat.c (windows_nat_target): New class.
10543         (windows_fetch_inferior_registers)
10544         (windows_store_inferior_registers, windows_resume, windows_wait)
10545         (windows_attach, windows_detach, windows_pid_to_exec_file)
10546         (windows_files_info, windows_create_inferior)
10547         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10548         (windows_close, windows_pid_to_str, windows_xfer_partial)
10549         (windows_get_tib_address, windows_get_ada_task_ptid)
10550         (windows_thread_name, windows_thread_alive): Refactor as
10551         windows_nat_target methods.
10552         (do_initial_windows_stuff): Adjust.
10553         (windows_target): Delete function.
10554         (_initialize_windows_nat): Adjust.
10555
10556         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10557         (darwin_mourn_inferior, darwin_kill_inferior)
10558         (darwin_create_inferior, darwin_attach, darwin_detach)
10559         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10560         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10561         (darwin_supports_multi_process): Refactor as darwin_nat_target
10562         methods.
10563         (darwin_resume_to, darwin_files_info): Delete.
10564         (_initialize_darwin_inferior): Rename to ...
10565         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10566         * darwin-nat.h: Include "inf-child.h".
10567         (darwin_nat_target): New class.
10568         (darwin_complete_target): Delete.
10569         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10570         (darwin_target): New.
10571         (i386_darwin_fetch_inferior_registers)
10572         (i386_darwin_store_inferior_registers): Refactor as methods of
10573         darwin_nat_target.
10574         (darwin_complete_target): Delete, with ...
10575         (_initialize_i386_darwin_nat): ... bits factored out here.
10576
10577         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10578         (the_alpha_linux_nat_target): New.
10579         (alpha_linux_register_u_offset): Refactor as
10580         alpha_linux_nat_target method.
10581         (_initialize_alpha_linux_nat): Adjust.
10582         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10583         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10584         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10585         methods of linux_nat_trad_target.
10586         (linux_trad_target): Delete.
10587         * linux-nat-trad.h (linux_trad_target): Delete function.
10588         (linux_nat_trad_target): New class.
10589         * mips-linux-nat.c (mips_linux_nat_target): New class.
10590         (super_fetch_registers, super_store_registers, super_close):
10591         Delete.
10592         (the_mips_linux_nat_target): New.
10593         (mips64_linux_regsets_fetch_registers)
10594         (mips64_linux_regsets_store_registers)
10595         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10596         (mips_linux_register_u_offset, mips_linux_read_description)
10597         (mips_linux_can_use_hw_breakpoint)
10598         (mips_linux_stopped_by_watchpoint)
10599         (mips_linux_stopped_data_address)
10600         (mips_linux_region_ok_for_hw_watchpoint)
10601         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10602         (mips_linux_close): Refactor as methods of mips_linux_nat.
10603         (_initialize_mips_linux_nat): Adjust to C++ification.
10604
10605         * aix-thread.c (aix_thread_target): New class.
10606         (aix_thread_ops): Now an aix_thread_target.
10607         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10608         (aix_thread_fetch_registers, aix_thread_store_registers)
10609         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10610         (aix_thread_thread_alive, aix_thread_pid_to_str)
10611         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10612         Refactor as methods of aix_thread_target.
10613         (init_aix_thread_ops): Delete.
10614         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10615         and complete_target_initialization.
10616         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10617         (rs6000_nat_target): New class.
10618         (the_rs6000_nat_target): New.
10619         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10620         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10621         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10622         (super_create_inferior): Delete.
10623         (_initialize_rs6000_nat): Adjust to C++ification.
10624
10625         * arm-linux-nat.c (arm_linux_nat_target): New class.
10626         (the_arm_linux_nat_target): New.
10627         (arm_linux_fetch_inferior_registers)
10628         (arm_linux_store_inferior_registers, arm_linux_read_description)
10629         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10630         (arm_linux_remove_hw_breakpoint)
10631         (arm_linux_region_ok_for_hw_watchpoint)
10632         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10633         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10634         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10635         arm_linux_nat_target.
10636         (_initialize_arm_linux_nat): Adjust to C++ification.
10637
10638         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10639         (the_aarch64_linux_nat_target): New.
10640         (aarch64_linux_fetch_inferior_registers)
10641         (aarch64_linux_store_inferior_registers)
10642         (aarch64_linux_child_post_startup_inferior)
10643         (aarch64_linux_read_description)
10644         (aarch64_linux_can_use_hw_breakpoint)
10645         (aarch64_linux_insert_hw_breakpoint)
10646         (aarch64_linux_remove_hw_breakpoint)
10647         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10648         (aarch64_linux_region_ok_for_hw_watchpoint)
10649         (aarch64_linux_stopped_data_address)
10650         (aarch64_linux_stopped_by_watchpoint)
10651         (aarch64_linux_watchpoint_addr_within_range)
10652         (aarch64_linux_can_do_single_step): Refactor as methods of
10653         aarch64_linux_nat_target.
10654         (super_post_startup_inferior): Delete.
10655         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10656
10657         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10658         (the_hppa_linux_nat_target): New.
10659         (hppa_linux_fetch_inferior_registers)
10660         (hppa_linux_store_inferior_registers): Refactor as methods of
10661         hppa_linux_nat_target.
10662         (_initialize_hppa_linux_nat): Adjust to C++ification.
10663
10664         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10665         (the_ia64_linux_nat_target): New.
10666         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10667         (ia64_linux_stopped_data_address)
10668         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10669         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10670         ia64_linux_nat_target methods.
10671         (super_xfer_partial): Delete.
10672         (_initialize_ia64_linux_nat): Adjust to C++ification.
10673
10674         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10675         (the_m32r_linux_nat_target): New.
10676         (m32r_linux_fetch_inferior_registers)
10677         (m32r_linux_store_inferior_registers): Refactor as
10678         m32r_linux_nat_target methods.
10679         (_initialize_m32r_linux_nat): Adjust to C++ification.
10680
10681         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10682         (the_m68k_linux_nat_target): New.
10683         (m68k_linux_fetch_inferior_registers)
10684         (m68k_linux_store_inferior_registers): Refactor as
10685         m68k_linux_nat_target methods.
10686         (_initialize_m68k_linux_nat): Adjust to C++ification.
10687
10688         * s390-linux-nat.c (s390_linux_nat_target): New class.
10689         (the_s390_linux_nat_target): New.
10690         (s390_linux_fetch_inferior_registers)
10691         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10692         (s390_insert_watchpoint, s390_remove_watchpoint)
10693         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10694         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10695         (s390_auxv_parse, s390_read_description): Refactor as methods of
10696         s390_linux_nat_target.
10697         (_initialize_s390_nat): Adjust to C++ification.
10698
10699         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10700         (the_sparc_linux_nat_target): New.
10701         (_initialize_sparc_linux_nat): Adjust to C++ification.
10702         * sparc-nat.c (sparc_fetch_inferior_registers)
10703         (sparc_store_inferior_registers): Remove target_ops parameter.
10704         * sparc-nat.h (sparc_fetch_inferior_registers)
10705         (sparc_store_inferior_registers): Remove target_ops parameter.
10706         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10707         (the_sparc64_linux_nat_target): New.
10708         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10709
10710         * spu-linux-nat.c (spu_linux_nat_target): New class.
10711         (the_spu_linux_nat_target): New.
10712         (spu_child_post_startup_inferior, spu_child_post_attach)
10713         (spu_child_wait, spu_fetch_inferior_registers)
10714         (spu_store_inferior_registers, spu_xfer_partial)
10715         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10716         methods.
10717         (_initialize_spu_nat): Adjust to C++ification.
10718
10719         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10720         (the_tilegx_linux_nat_target): New.
10721         (fetch_inferior_registers, store_inferior_registers):
10722         Refactor as methods.
10723         (_initialize_tile_linux_nat): Adjust to C++ification.
10724
10725         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10726         (the_xtensa_linux_nat_target): New.
10727         (xtensa_linux_fetch_inferior_registers)
10728         (xtensa_linux_store_inferior_registers): Refactor as
10729         xtensa_linux_nat_target methods.
10730         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10731
10732         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10733         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10734         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10735         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10736         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10737         (fbsd_stopped_by_sw_breakpoint)
10738         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10739         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10740         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10741         (fbsd_post_startup_inferior, fbsd_post_attach)
10742         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10743         (fbsd_set_syscall_catchpoint)
10744         (super_xfer_partial, super_resume, super_wait)
10745         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10746         (fbsd_handle_debug_trap): Remove target_ops parameter.
10747         (fbsd_nat_add_target): Delete.
10748         * fbsd-nat.h: Include "inf-ptrace.h".
10749         (fbsd_nat_add_target): Delete.
10750         (USE_SIGTRAP_SIGINFO): Define.
10751         (fbsd_nat_target): New class.
10752
10753         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10754         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10755         (amd64bsd_target): Delete.
10756         * amd64-bsd-nat.h: New file.
10757         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10758         "x86-bsd-nat.h".
10759         (amd64_fbsd_nat_target): New class.
10760         (the_amd64_fbsd_nat_target): New.
10761         (amd64fbsd_read_description): Refactor as method of
10762         amd64_fbsd_nat_target.
10763         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10764         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10765         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10766         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10767         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10768         (i386bsd_target): Delete.
10769         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10770         (i386bsd_fetch_inferior_registers)
10771         (i386bsd_store_inferior_registers): Declare.
10772         (i386_bsd_nat_target): New class.
10773         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10774         (the_i386_fbsd_nat_target): New.
10775         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10776         i386_fbsd_nat_target methods.
10777         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10778         (_initialize_i386fbsd_nat): Adjust to C++ification.
10779         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10780         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10781         (_initialize_x86_bsd_nat): Adjust to C++ification.
10782         * x86-bsd-nat.h: Include "x86-nat.h".
10783         (x86bsd_target): Delete declaration.
10784         (x86bsd_nat_target): New class.
10785
10786         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10787         (the_aarch64_fbsd_nat_target): New.
10788         (aarch64_fbsd_fetch_inferior_registers)
10789         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10790         aarch64_fbsd_nat_target.
10791         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10792         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10793         (the_alpha_bsd_nat_target): New.
10794         (alphabsd_fetch_inferior_registers)
10795         (alphabsd_store_inferior_registers): Refactor as
10796         alpha_bsd_nat_target methods.
10797         (_initialize_alphabsd_nat): Refactor as methods of
10798         alpha_bsd_nat_target.
10799         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10800         (the_amd64_nbsd_nat_target): New.
10801         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10802         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10803         (the_amd64_obsd_nat_target): New.
10804         (_initialize_amd64obsd_nat): Adjust to C++ification.
10805         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10806         (the_arm_fbsd_nat_target): New.
10807         (arm_fbsd_fetch_inferior_registers)
10808         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10809         (_initialize_arm_fbsd_nat): Refactor as methods of
10810         arm_fbsd_nat_target.
10811         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10812         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10813         (the_arm_netbsd_nat_target): New.
10814         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10815         arm_netbsd_nat_target.
10816         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10817         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10818         (the_hppa_nbsd_nat_target): New.
10819         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10820         hppa_nbsd_nat_target methods.
10821         (_initialize_hppanbsd_nat): Adjust to C++ification.
10822         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10823         (the_hppa_obsd_nat_target): New.
10824         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10825         methods of hppa_obsd_nat_target.
10826         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10827         add_target.
10828         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10829         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10830         add_target.
10831         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10832         (_initialize_i386obsd_nat): Use add_target.
10833         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10834         (the_m68k_bsd_nat_target): New.
10835         (m68kbsd_fetch_inferior_registers)
10836         (m68kbsd_store_inferior_registers): Refactor as methods of
10837         m68k_bsd_nat_target.
10838         (_initialize_m68kbsd_nat): Adjust to C++ification.
10839         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10840         (the_mips_fbsd_nat_target): New.
10841         (mips_fbsd_fetch_inferior_registers)
10842         (mips_fbsd_store_inferior_registers): Refactor as methods of
10843         mips_fbsd_nat_target.
10844         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10845         add_target.
10846         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10847         (the_mips_nbsd_nat_target): New.
10848         (mipsnbsd_fetch_inferior_registers)
10849         (mipsnbsd_store_inferior_registers): Refactor as methods of
10850         mips_nbsd_nat_target.
10851         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10852         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10853         (the_mips64_obsd_nat_target): New.
10854         (mips64obsd_fetch_inferior_registers)
10855         (mips64obsd_store_inferior_registers): Refactor as methods of
10856         mips64_obsd_nat_target.
10857         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10858         add_target.
10859         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10860         nbsd_nat_target.
10861         * nbsd-nat.h: Include "inf-ptrace.h".
10862         (nbsd_nat_target): New class.
10863         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10864         (obsd_wait): Refactor as methods of obsd_nat_target.
10865         (obsd_add_target): Delete.
10866         * obsd-nat.h: Include "inf-ptrace.h".
10867         (obsd_nat_target): New class.
10868         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10869         (the_ppc_fbsd_nat_target): New.
10870         (ppcfbsd_fetch_inferior_registers)
10871         (ppcfbsd_store_inferior_registers): Refactor as methods of
10872         ppc_fbsd_nat_target.
10873         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10874         add_target.
10875         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10876         (the_ppc_nbsd_nat_target): New.
10877         (ppcnbsd_fetch_inferior_registers)
10878         (ppcnbsd_store_inferior_registers): Refactor as methods of
10879         ppc_nbsd_nat_target.
10880         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10881         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10882         (the_ppc_obsd_nat_target): New.
10883         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10884         methods of ppc_obsd_nat_target.
10885         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10886         add_target.
10887         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10888         (the_sh_nbsd_nat_target): New.
10889         (shnbsd_fetch_inferior_registers)
10890         (shnbsd_store_inferior_registers): Refactor as methods of
10891         sh_nbsd_nat_target.
10892         (_initialize_shnbsd_nat): Adjust to C++ification.
10893         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10894         (inf_ptrace_xfer_partial): Delete.
10895         (sparc_xfer_partial, sparc_target): Delete.
10896         * sparc-nat.h (sparc_fetch_inferior_registers)
10897         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10898         (sparc_target): Delete function declaration.
10899         (sparc_target): New template class.
10900         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10901         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10902         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10903         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10904         add_target.
10905         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10906         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10907         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10908         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10909         add_target.
10910         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10911         (the_vax_bsd_nat_target): New.
10912         (vaxbsd_fetch_inferior_registers)
10913         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10914         methods.
10915         (_initialize_vaxbsd_nat): Adjust to C++ification.
10916
10917         * bsd-kvm.c (bsd_kvm_target): New class.
10918         (bsd_kvm_ops): Now a bsd_kvm_target.
10919         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10920         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10921         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10922         bsd_kvm_target.
10923         (bsd_kvm_return_one): Delete.
10924         (bsd_kvm_add_target): Adjust to C++ification.
10925
10926         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10927         (nto_procfs_target_procfs): New classes.
10928         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10929         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10930         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10931         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10932         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10933         (procfs_remove_hw_breakpoint, procfs_resume)
10934         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10935         (procfs_kill_inferior, procfs_store_registers)
10936         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10937         as methods of nto_procfs_target.
10938         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10939         (nto_native_ops): Delete.
10940         (procfs_open, procfs_native_open): Delete.
10941         (nto_native_ops): Now an nto_procfs_target_native.
10942         (init_procfs_targets): Adjust to C++ification.
10943         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10944         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10945         Refactor as methods of nto_procfs_target.
10946
10947         * go32-nat.c (go32_nat_target): New class.
10948         (the_go32_nat_target): New.
10949         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10950         (go32_store_registers, go32_xfer_partial, go32_files_info)
10951         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10952         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10953         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10954         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10955         (go32_target): Delete.
10956         (_initialize_go32_nat): Adjust to C++ification.
10957
10958         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10959         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10960         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10961         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10962         gnu_nat_target.
10963         (gnu_target): Delete.
10964         * gnu-nat.h (gnu_target): Delete.
10965         (gnu_nat_target): New class.
10966         * i386-gnu-nat.c (gnu_base_target): New.
10967         (i386_gnu_nat_target): New class.
10968         (the_i386_gnu_nat_target): New.
10969         (_initialize_i386gnu_nat): Adjust to C++ification.
10970
10971 2018-05-02  Pedro Alves  <palves@redhat.com>
10972
10973         * bfd-target.c (target_bfd_xclose): Rename to ...
10974         (target_bfd_close): ... this.
10975         (target_bfd_reopen): Adjust.
10976         * target.c (target_close): Remove references to to_xclose.
10977         * target.h (target_ops::to_xclose): Delete.
10978         (target_ops::to_close): Update comments.
10979
10980 2018-05-02  Pedro Alves  <palves@redhat.com>
10981
10982         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10983         "linux-nat.h".
10984         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10985         * inf-ptrace.c (inf_ptrace_register_u_offset)
10986         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10987         (inf_ptrace_store_register, inf_ptrace_store_registers)
10988         (inf_ptrace_trad_target): Move to ...
10989         * linux-nat-trad.c: ... this new file.
10990         * linux-nat-trad.h: New file.
10991         * linux-nat.c (linux_target_install_ops): Make extern.
10992         (linux_trad_target): Delete.
10993         * linux-nat.h (linux_trad_target): Delete declaration.
10994         (linux_target_install_ops): Declare.
10995         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10996         "linux-nat.h".
10997
10998 2018-05-02  Pedro Alves  <palves@redhat.com>
10999
11000         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11001         procfs_target/add_target here.
11002         * procfs.c (procfs_target): Make static.
11003         (_initialize_procfs): Call add_target here.
11004         * procfs.h (struct target_ops): Remove forward declaration.
11005         (procfs_target): Remove declaration.
11006         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11007
11008 2018-05-02  Pedro Alves  <palves@redhat.com>
11009
11010         * procfs.c (procfs_stopped_by_watchpoint)
11011         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11012         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11013         Forward declare.
11014         (procfs_use_watchpoints): Delete, move contents...
11015         (procfs_target): ... here.
11016         * procfs.h (procfs_use_watchpoints): Delete declaration.
11017         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11018         procfs_use_watchpoints.
11019         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11020         procfs_use_watchpoints.
11021
11022 2018-05-02  Tom Tromey  <tom@tromey.com>
11023
11024         PR python/20084:
11025         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11026         and var_zuinteger_unlimited.
11027         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11028         and PARAM_ZUINTEGER_UNLIMITED.
11029         (set_parameter_value): Handle var_zuinteger and
11030         var_zuinteger_unlimited.
11031         (add_setshow_generic): Likewise.
11032         (parmpy_init): Likewise.
11033
11034 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11035
11036         PR rust/23124
11037         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11038         pointer is not null before dereferencing it.
11039
11040 2018-04-30  Tom Tromey  <tom@tromey.com>
11041
11042         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11043         is_mi_like_p.
11044
11045 2018-04-30  Tom Tromey  <tom@tromey.com>
11046
11047         * breakpoint.c (mention): Remove use of is_mi_like_p.
11048         (print_mention_ranged_breakpoint): Likewise.
11049         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11050         of is_mi_like_p.
11051
11052 2018-04-30  Tom Tromey  <tom@tromey.com>
11053
11054         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11055
11056 2018-04-30  Tom Tromey  <tom@tromey.com>
11057
11058         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11059         (info_spu_event_command): Remove some uses of is_mi_like_p.
11060
11061 2018-04-30  Tom Tromey  <tom@tromey.com>
11062
11063         * python/py-framefilter.c (py_print_single_arg)
11064         (enumerate_locals, py_print_args, py_print_frame): Remove some
11065         uses of is_mi_like_p.
11066
11067 2018-04-30  Tom Tromey  <tom@tromey.com>
11068
11069         * ui-out.c: Update.
11070         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11071         * ui-out.h (ui_out::is_mi_like_p): Now const.
11072         (ui_out::do_is_mi_like_p): Now const.
11073         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11074
11075 2018-04-30  Tom Tromey  <tom@tromey.com>
11076
11077         * varobj.c (varobj_set_visualizer): Use new_reference.
11078         * python/python.c (gdbpy_decode_line): Use new_reference.
11079         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11080         new_reference.
11081
11082 2018-04-30  Tom Tromey  <tom@tromey.com>
11083
11084         * varobj.c (install_new_value): Use new_reference.
11085         * value.h (value_incref): Return void.  Swap intro comment with
11086         value_decref.
11087         * value.c (set_value_parent): Use new_reference.
11088         (value_incref): Return void.  Update intro comment.
11089         (release_value): Use new_reference.
11090         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11091
11092 2018-04-30  Tom Tromey  <tom@tromey.com>
11093
11094         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11095         * gdb_bfd.h (new_bfd_ref): Remove.
11096         (gdb_bfd_open): Update comment.
11097         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11098         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11099         (gdb_bfd_fdopenr): Use new_reference.
11100         * exec.c (exec_file_attach): Use new_reference.
11101
11102 2018-04-30  Tom Tromey  <tom@tromey.com>
11103
11104         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11105         method.
11106
11107 2018-04-30  Tom Tromey  <tom@tromey.com>
11108
11109         * jit.c (jit_read_code_entry): Use type_align.
11110         * i386-tdep.c (i386_gdbarch_init): Don't call
11111         set_gdbarch_long_long_align_bit.
11112         * gdbarch.sh: Remove long_long_align_bit.
11113         * gdbarch.c, gdbarch.h: Rebuild.
11114         * arc-tdep.c (arc_type_align): New function.
11115         (arc_gdbarch_init): Use arc_type_align.  Don't call
11116         set_gdbarch_long_long_align_bit.
11117
11118 2018-04-30  Tom Tromey  <tom@tromey.com>
11119
11120         * rust-lang.c (rust_type_alignment): Remove.
11121         (rust_composite_type): Use type_align.
11122
11123 2018-04-30  Tom Tromey  <tom@tromey.com>
11124
11125         * NEWS: Mention Type.align.
11126         * python/py-type.c (typy_get_alignof): New function.
11127         (type_object_getset): Add "alignof".
11128
11129 2018-04-30  Tom Tromey  <tom@tromey.com>
11130
11131         PR exp/17095:
11132         * NEWS: Update.
11133         * std-operator.def (UNOP_ALIGNOF): New operator.
11134         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11135         New.
11136         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11137         * c-lang.c (c_op_print_tab): Add alignof.
11138         * c-exp.y (ALIGNOF): New token.
11139         (exp): Add "ALIGNOF" production.
11140         (ident_tokens): Add _Alignof and alignof.
11141
11142 2018-04-30  Tom Tromey  <tom@tromey.com>
11143
11144         * i386-tdep.c (i386_type_align): New function.
11145         (i386_gdbarch_init): Update.
11146         * gdbarch.sh (type_align): New method.
11147         * gdbarch.c, gdbarch.h: Rebuild.
11148         * arch-utils.h (default_type_align): Declare.
11149         * arch-utils.c (default_type_align): New function.
11150         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11151         (struct type) <align_log2>: New field.
11152         <instance_flags>: Now a bitfield.
11153         (TYPE_RAW_ALIGN): New macro.
11154         (type_align, type_raw_align, set_type_align): Declare.
11155         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11156         functions.
11157         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11158         (get_alignment, maybe_set_alignment): New functions.
11159         (read_structure_type, read_enumeration_type, read_array_type)
11160         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11161         (read_subrange_type, read_base_type): Set type alignment.
11162
11163 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11164
11165         * dwarf2read.c (read_index_from_section): Use bool.
11166
11167 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11168
11169         PR gdb/22950
11170         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11171         with #ifdef.
11172
11173 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11174
11175         PR build/22873
11176         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11177         last step, and do it atomically.
11178
11179 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11180
11181         * compile/compile-c-types.c (convert_int, convert_float):
11182         Update for C FE v1.
11183
11184 2018-04-27  Tom Tromey  <tom@tromey.com>
11185
11186         PR rust/22545:
11187         * rust-lang.c (rust_inclusive_range_type_p): New function.
11188         (rust_range): Handle inclusive ranges.
11189         (rust_compute_range): Likewise.
11190         * rust-exp.y (struct rust_op) <inclusive>: New field.
11191         (DOTDOTEQ): New constant.
11192         (range_expr): Add "..=" productions.
11193         (operator_tokens): Add "..=" token.
11194         (ast_range): Add "inclusive" parameter.
11195         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11196         ranges.
11197         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11198         bounds values.
11199         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11200         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11201         Update comments.
11202         * expprint.c (print_subexp_standard): Handle new bounds values.
11203         (dump_subexp_body_standard): Likewise.
11204
11205 2018-04-27  Tom Tromey  <tom@tromey.com>
11206
11207         * configure: Rebuild.
11208         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11209         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11210         "OVERRIDE".
11211         (class symbol_needs_eval_context): Likewise.
11212         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11213         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11214         "virtual".
11215         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11216         "override".
11217         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11218         * aarch64-tdep.c (instruction_reader::read): Use "override".
11219         (instruction_reader_test::read): Likewise.
11220         * arm-tdep.c (instruction_reader::read): Use "override".
11221         (instruction_reader_thumb::read): Likewise.
11222
11223 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11224
11225         PR remote/9665
11226         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11227         instead of remote_send.
11228         (remote_send): Remove.
11229
11230 2018-04-26  Pedro Alves  <palves@redhat.com>
11231
11232         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11233         find_function_start_sal instead of find_pc_line.
11234
11235 2018-04-26  Pedro Alves  <palves@redhat.com>
11236
11237         * breakpoint.c (set_breakpoint_location_function): Handle
11238         mst_data_gnu_ifunc.
11239         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11240         * elfread.c (elf_symtab_read): Give data symbols with
11241         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11242         (elf_rel_plt_read): Update comment.
11243         * linespec.c (convert_linespec_to_sals): Handle
11244         mst_data_gnu_ifunc.
11245         (minsym_found): Handle mst_data_gnu_ifunc.
11246         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11247         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11248         * parse.c (find_minsym_type_and_address): Handle
11249         mst_data_gnu_ifunc.
11250         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11251         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11252         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11253         comment.
11254         <mst_data_gnu_ifunc>: New enumerator.
11255
11256 2018-04-26  Pedro Alves  <palves@redhat.com>
11257
11258         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11259         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11260         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11261         Handle it.
11262         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11263         (lookup_minimal_symbol_by_pc): Adjust.
11264         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11265         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11266         * minsyms.h (lookup_msym_prefer): New enum.
11267         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11268         parameter by a lookup_msym_prefer parameter.
11269
11270 2018-04-26  Pedro Alves  <palves@redhat.com>
11271
11272         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11273         ends in "@plt" instead of looking at the symbol's section.
11274
11275 2018-04-26  Pedro Alves  <palves@redhat.com>
11276
11277         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11278         all references.
11279         (find_pc_partial_function_gnu_ifunc): Rename to ...
11280         (find_pc_partial_function): ... this, and remove references to
11281         'is_gnu_ifunc_p'.
11282         (find_pc_partial_function): Delete old implementation.
11283         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11284
11285 2018-04-26  Pedro Alves  <palves@redhat.com>
11286
11287         * linespec.c (struct bound_minimal_symbol_search_key): New.
11288         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11289         skip first line if we found a GNU ifunc minimal symbol by name.
11290         (compare_msymbols): Change parameters to work with a destructured
11291         lhs minsym.
11292         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11293         functions.
11294
11295 2018-04-26  Pedro Alves  <palves@redhat.com>
11296
11297         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11298         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11299         address/name.
11300         (add_location_to_breakpoint): Store the minsym and the objfile in
11301         the breakpoint location.
11302         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11303         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11304         Record the minsym in the sal.
11305         * symtab.h (symtab_and_line) <msymbol>: New field.
11306
11307 2018-04-26  Pedro Alves  <palves@redhat.com>
11308
11309         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11310         unless we actually resolved the ifunc.
11311
11312 2018-04-26  Pedro Alves  <palves@redhat.com>
11313
11314         * c-exp.y (variable production): Prefer ifunc minsyms over
11315         regular function symbols.
11316         * symtab.c (find_gnu_ifunc): New function.
11317         * minsyms.h (lookup_msym_prefer): New enum.
11318         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11319         parameter by a lookup_msym_prefer parameter.
11320         * symtab.h (find_gnu_ifunc): New declaration.
11321
11322 2018-04-26  Pedro Alves  <palves@redhat.com>
11323
11324         * blockframe.c (find_gnu_ifunc_target_type): New function.
11325         (find_function_type): New.
11326         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11327         return a value with a memory address.
11328         (eval_call): For calls to GNU ifunc functions, try to find the
11329         type of the target function from the type that the resolver
11330         returns.
11331         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11332         symbols.
11333         * infcall.c (find_function_return_type): Delete.
11334         (find_function_addr): Add 'function_type' parameter.  For calls to
11335         GNU ifunc functions, try to find the type of the target function
11336         from the type that the resolver returns, and return it via
11337         FUNCTION_TYPE.
11338         (call_function_by_hand_dummy): Adjust to use the function type
11339         returned by find_function_addr.
11340         (find_function_addr): Add 'function_type' parameter and move
11341         description here.
11342         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11343         declarations.
11344
11345 2018-04-26  Pedro Alves  <palves@redhat.com>
11346
11347         * c-exp.y (variable production): Skip finding an alias for ifunc
11348         symbols.
11349
11350 2018-04-26  Pedro Alves  <palves@redhat.com>
11351
11352         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11353
11354 2018-04-25  Pedro Alves  <palves@redhat.com>
11355
11356         * infcmd.c (kill_command): Print the pid as string, not the whole
11357         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11358         message.
11359         * remote.c (remote_detach_1): Print the pid as string, not the
11360         whole thread's ptid.
11361
11362 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11363             Sergio Durigan Junior  <sergiodj@redhat.com>
11364             Pedro Alves  <palves@redhat.com>
11365
11366         * infcmd.c (kill_command): Print message when inferior has
11367         been killed.
11368         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11369         '1'.
11370         (add_inferior): Improve message printed when
11371         'print_inferior_events' is on.
11372         (exit_inferior): Remove message printed when
11373         'print_inferior_events' is on.
11374         (detach_inferior): Improve message printed when
11375         'print_inferior_events' is on.
11376         (initialize_inferiors): Use 'add_inferior_silent' to set
11377         'current_inferior_'.
11378         * inferior.h (print_inferior_events): Declare here as
11379         'extern'.
11380         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11381         '[Detaching...]' messages when 'print_inferior_events' is on.
11382         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11383         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11384         'Detaching after fork from child...', replace it by '... from
11385         parent...'.
11386         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11387         prefix/suffix when printing 'Detaching...' messages.  Print
11388         them when 'print_inferior_events' is on.
11389         * remote.c (remote_detach_1): Print message when detaching
11390         from inferior and '!is_fork_parent'.
11391
11392 2018-04-24  Tom Tromey  <tom@tromey.com>
11393
11394         * cli-out.h: Reindent.
11395
11396 2018-04-24  Tom Tromey  <tom@tromey.com>
11397
11398         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11399         (cli_ui_out::do_field_string): Use fputs_filtered.
11400         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11401
11402 2018-04-23  Tom Tromey  <tom@tromey.com>
11403
11404         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11405         gdb::unique_xmalloc_ptr.
11406
11407 2018-04-23  Tom Tromey  <tom@tromey.com>
11408
11409         * configure: Rebuild.
11410
11411 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11412
11413         PR gdb/23095
11414         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11415         prepare_for_testing.  Set normal_bp to r_debug_state if target
11416         is bsd.
11417
11418 2018-04-21  Pedro Alves  <palves@redhat.com>
11419             Rajendra SY  <rajendra.sy@gmail.com>
11420
11421         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11422         * remote.c (extended_remote_attach): In all-stop mode, mark the
11423         thread as executing.
11424
11425 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11426
11427         * thread.c (thread_apply_all_command): Fix comment.
11428         (thread_command): Fix comment.
11429
11430 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11431
11432         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11433         parameter.
11434         * features/aarch64-core.c (create_feature_aarch64_core):
11435         Regenerate.
11436         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11437         Likewise.
11438         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11439         Likewise.
11440         * features/i386/32bit-avx512.c
11441         (create_feature_i386_32bit_avx512): Likewise.
11442         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11443         Likewise.
11444         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11445         Likewise.
11446         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11447         Likewise.
11448         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11449         Likewise.
11450         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11451         Likewise.
11452         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11453         Likewise.
11454         * features/i386/64bit-avx512.c
11455         (create_feature_i386_64bit_avx512): Likewise.
11456         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11457         Likewise.
11458         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11459         Likewise.
11460         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11461         Likewise.
11462         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11463         Likewise.
11464         * features/i386/64bit-segments.c
11465         (create_feature_i386_64bit_segments): Likewise.
11466         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11467         Likewise.
11468         * features/i386/x32-core.c
11469         (create_feature_i386_x32_core): Likewise.
11470         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11471         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11472         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11473         * target-descriptions.c: In generated code, don't pass xml
11474         filename.
11475
11476 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11477
11478         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11479         (print_xml_feature::visit_post): Likewise.
11480         (print_xml_feature::visit): Likewise.
11481         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11482         (print_xml_feature): Add new class.
11483         * regformats/regdat.sh: Null xmltarget on feature targets.
11484         * target-descriptions.c (struct target_desc): Add xmltarget.
11485         (maintenance_check_tdesc_xml_convert): Add unittest function.
11486         (tdesc_get_features_xml): Add function to get xml.
11487         (maintenance_check_xml_descriptions): Test xml generation.
11488         * xml-tdesc.c (string_read_description_xml): Add function.
11489         * xml-tdesc.h (string_read_description_xml): Add declaration.
11490
11491 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11492
11493         * features/Makefile: Add feature marker to targets with new style
11494         target descriptions.
11495         * regformats/aarch64.dat: Regenerate.
11496         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11497         * regformats/i386/amd64-avx-linux.dat: Likewise.
11498         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11499         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11500         * regformats/i386/amd64-linux.dat: Likewise.
11501         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11502         * regformats/i386/amd64.dat: Likewise.
11503         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11504         * regformats/i386/i386-avx-linux.dat: Likewise.
11505         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11506         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11507         * regformats/i386/i386-linux.dat: Likewise.
11508         * regformats/i386/i386-mmx-linux.dat: Likewise.
11509         * regformats/i386/i386-mpx-linux.dat: Likewise.
11510         * regformats/i386/i386.dat: Likewise.
11511         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11512         * regformats/i386/x32-avx-linux.dat: Likewise.
11513         * regformats/i386/x32-linux.dat: Likewise.
11514         * regformats/tic6x-c62x-linux.dat: Likewise.
11515         * regformats/tic6x-c64x-linux.dat: Likewise.
11516         * regformats/tic6x-c64xp-linux.dat: Likewise.
11517         * regformats/regdat.sh: Parse feature marker.
11518
11519 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11520
11521         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11522         (tdesc_osabi_name): Likewise.
11523         * target-descriptions.c (tdesc_architecture_name): Add new
11524         function.
11525         (tdesc_osabi_name): Likewise.
11526
11527 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11528
11529         * common/tdesc.c (tdesc_predefined_type): Move to here.
11530         (tdesc_named_type): Likewise.
11531         (tdesc_create_vector): Likewise.
11532         (tdesc_create_struct): Likewise.
11533         (tdesc_set_struct_size): Likewise.
11534         (tdesc_create_union): Likewise.
11535         (tdesc_create_flags): Likewise.
11536         (tdesc_create_enum): Likewise.
11537         (tdesc_add_field): Likewise.
11538         (tdesc_add_typed_bitfield): Likewise.
11539         (tdesc_add_bitfield): Likewise.
11540         (tdesc_add_flag): Likewise.
11541         (tdesc_add_enum_value): Likewise.
11542         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11543         (struct tdesc_type_vector): Likewise.
11544         (struct tdesc_type_field): Likewise.
11545         (struct tdesc_type_with_fields): Likewise.
11546         (tdesc_create_enum): Add declaration.
11547         (tdesc_add_typed_bitfield): Likewise.
11548         (tdesc_add_enum_value): Likewise.
11549         * target-descriptions.c (tdesc_type_field): Move from here.
11550         (tdesc_type_builtin): Likewise.
11551         (tdesc_type_vector): Likewise.
11552         (tdesc_type_with_fields): Likewise.
11553         (tdesc_predefined_types): Likewise.
11554         (tdesc_named_type): Likewise.
11555         (tdesc_create_vector): Likewise.
11556         (tdesc_create_struct): Likewise.
11557         (tdesc_set_struct_size): Likewise.
11558         (tdesc_create_union): Likewise.
11559         (tdesc_create_flags): Likewise.
11560         (tdesc_create_enum): Likewise.
11561         (tdesc_add_field): Likewise.
11562         (tdesc_add_typed_bitfield): Likewise.
11563         (tdesc_add_bitfield): Likewise.
11564         (tdesc_add_flag): Likewise.
11565         (tdesc_add_enum_value): Likewise.
11566         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11567         (tdesc_add_typed_bitfield): Likewise.
11568         (tdesc_add_enum_value): Likewise.
11569
11570 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11571
11572         * common/tdesc.c (tdesc_feature::accept): Move to here.
11573         (tdesc_feature::operator==): Likewise.
11574         (tdesc_create_reg): Likewise.
11575         * common/tdesc.h (tdesc_type_kind): Likewise.
11576         (struct tdesc_type): Likewise.
11577         (struct tdesc_feature): Likewise.
11578         * regformats/regdat.sh: Create a feature.
11579         * target-descriptions.c (tdesc_type_kind): Move from here.
11580         (tdesc_type): Likewise.
11581         (tdesc_type_up): Likewise.
11582         (tdesc_feature): Likewise.
11583         (tdesc_create_reg): Likewise.
11584
11585 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11586
11587         * Makefile.in: Add arch/tdesc.c
11588         * common/tdesc.c: New file.
11589         * common/tdesc.h (tdesc_element_visitor): Move to here.
11590         (tdesc_element): Likewise.
11591         (tdesc_reg): Likewise.
11592         (tdesc_reg_up): Likewise.
11593         * regformats/regdef.h (reg): Add offset to constructors.
11594         * target-descriptions.c (tdesc_element_visitor): Move from here.
11595         (tdesc_element): Likewise.
11596         (tdesc_reg): Likewise.
11597         (tdesc_reg_up): Likewise.
11598
11599 2018-04-17  Tom Tromey  <tom@tromey.com>
11600
11601         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11602         discriminant field.
11603
11604 2018-04-17  Tom Tromey  <tom@tromey.com>
11605
11606         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11607
11608 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11609
11610         * symtab.c (print_symbol_info): Skip printing filename and line
11611         number when `last' is NULL.
11612         (symtab_symbol_info): Use empty string instead of NULL for first
11613         invocation of print_symbol_info.
11614         (rbreak_command): Pass NULL to `last' parameter of
11615         print_symbol_info.
11616
11617 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11618
11619         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11620         instead of nullptr.
11621
11622 2018-04-16  Pedro Alves  <palves@redhat.com>
11623
11624         * MAINTAINERS (sh): Remove.
11625         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11626         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11627         (ALLDEPFILES): Remove sh64-tdep.c.
11628         * NEWS: Mentions that support for SH-5/SH64 is removed.
11629         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11630         (sh*-*-openbsd*): Ditto.
11631         (sh64-*-elf*): Remove.
11632         (sh*): Remove.
11633         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11634         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11635         * sh-tdep.c: No longer include "sh64-tdep.h".
11636         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11637         * sh64-tdep.c, sh64-tdep.h: Remove files.
11638
11639 2018-04-16  Pedro Alves  <palves@redhat.com>
11640
11641         * MAINTAINERS: Remove m88k.
11642         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11643         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11644         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11645         * NEWS: Mention that support for m88k was removed.
11646         * configure.host (m88*-*-*): Remove support.
11647         * configure.nat (m88k-*-*): Remove support.
11648         * configure.tgt (m88*-*-openbsd*): Remove.
11649         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11650
11651 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11652
11653         * configure.tgt (x86_tobjs): New variable.
11654         (amd64_tobjs, i386_tobjs): Use it.
11655
11656 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11657
11658         * symtab.c (print_symbol_info): Precede the symbol definition by
11659         the line number when available.
11660         * NEWS: Advertise this enhancement.
11661
11662 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11663
11664         * NEWS (New options): announce set/show record btrace cpu.
11665         * btrace.c: Include record-btrace.h.
11666         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11667         the vendor is unknown.
11668         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11669         Maybe overwrite the btrace configuration's cpu.
11670         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11671         (btrace_fetch): Add cpu parameter.  Update callers.
11672         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11673         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11674         errata workarounds if the vendor is unknown.
11675         * python/py-record-btrace.c: Include record-btrace.h.
11676         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11677         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11678         * record-btrace.c (record_btrace_cpu_state_kind): New.
11679         (record_btrace_cpu): New.
11680         (set_record_btrace_cpu_cmdlist): New.
11681         (record_btrace_get_cpu): New.
11682         (require_btrace_thread, record_btrace_info)
11683         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11684         (cmd_set_record_btrace_cpu_none): New.
11685         (cmd_set_record_btrace_cpu_auto): New.
11686         (cmd_set_record_btrace_cpu): New.
11687         (cmd_show_record_btrace_cpu): New.
11688         (_initialize_record_btrace): Initialize set/show record btrace cpu
11689         commands.
11690         * record-btrace.h (record_btrace_get_cpu): New.
11691
11692 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11693
11694         * record.c (set_record_command): Fix typo in message.
11695
11696 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11697
11698         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11699
11700 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11701
11702         * infrun.c (process_event_stop_test): Call
11703         gdbarch_in_indirect_branch_thunk.
11704         * gdbarch.sh (in_indirect_branch_thunk): New.
11705         * gdbarch.c: Regenerated.
11706         * gdbarch.h: Regenerated.
11707         * x86-tdep.h: New.
11708         * x86-tdep.c: New.
11709         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11710         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11711         (ALLDEPFILES): Add x86-tdep.c.
11712         * arch-utils.h (default_in_indirect_branch_thunk): New.
11713         * arch-utils.c (default_in_indirect_branch_thunk): New.
11714         * i386-tdep: Include x86-tdep.h.
11715         (i386_in_indirect_branch_thunk): New.
11716         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11717         function.
11718         * amd64-tdep: Include x86-tdep.h.
11719         (amd64_in_indirect_branch_thunk): New.
11720         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11721
11722 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11723
11724         PR gdb/23053
11725         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11726         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11727         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11728         regression.
11729
11730 2018-04-12  Tom Tromey  <tom@tromey.com>
11731
11732         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11733         (rust_evaluate_subexp): Likewise.
11734
11735 2018-04-12  Pedro Alves  <palves@redhat.com>
11736
11737         * procfs.c (procfs_detach): Make forward declaration's prototype
11738         match definition's protototype.
11739         (proc_get_LDT_entry): Remove stale do_cleanups call.
11740
11741 2018-04-12  Pedro Alves  <palves@redhat.com>
11742
11743         * target.h (target_ops::to_has_exited): Delete.
11744         (target_has_exited): Delete.
11745         * target-delegates.c: Regenerate.
11746
11747 2018-04-11  Pedro Alves  <palves@redhat.com>
11748
11749         * target.c (fileio_fh_t::t): Add comment.
11750         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11751         (target_fileio_close): Handle a NULL target.
11752         (invalidate_fileio_fh): New.
11753         (target_close): Call it.
11754         * remote.c (remote_hostio_send_command): No longer check whether
11755         remote_desc is open.
11756
11757 2018-04-11  Pedro Alves  <palves@redhat.com>
11758
11759         * target.c (fileio_fh_t): Make it a named struct instead of a
11760         typedef.
11761         (fileio_fh_t::is_closed): New method.
11762         (DEF_VEC_O (fileio_fh_t)): Remove.
11763         (fileio_fhandles): Now a std::vector.
11764         (is_closed_fileio_fh): Delete.
11765         (acquire_fileio_fd): Adjust.  Rename parameters.
11766         (release_fileio_fd): Adjust.
11767         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11768         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11769         (target_fileio_close): Adjust.
11770
11771 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11772
11773         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11774         index.
11775
11776 2018-04-10  Pedro Alves  <palves@redhat.com>
11777
11778         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11779         (scoped_finish_thread_state): New class.
11780         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11781         cleanup.
11782         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11783         (fetch_inferior_event, normal_stop): Likewise.
11784         * thread.c (finish_thread_state_cleanup): Delete.
11785
11786 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11787             Pedro Alves  <palves@redhat.com>
11788
11789         * value.c: Include "selftest.h" and "common/array-view.h".
11790         (struct range) <operator ==>: New.
11791         (test_ranges_contain): New.
11792         (check_ranges_vector): New.
11793         (test_insert_into_bit_range_vector): New.
11794         (_initialize_values): Register selftests.
11795         * common/array-view.h (operator==, operator!=): New.
11796
11797 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11798
11799         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11800         an iterator.
11801         * inline-frame.c: Include <algorithm>.
11802         (struct inline_state): Add constructor.
11803         (inline_state_s): Remove.
11804         (DEF_VEC_O(inline_state_s)): Remove.
11805         (inline_states): Change type to std::vector.
11806         (find_inline_frame_state): Adjust to std::vector.
11807         (allocate_inline_frame_state): Remove.
11808         (clear_inline_frame_state): Adjust to std::vector.
11809         (skip_inline_frames): Adjust to std::vector.
11810
11811 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11812
11813         * tracepoint.h (struct trace_state_variable): Add constructor.
11814         <name>: Change type to std::string.
11815         * tracepoint.c (tsv_s): Remove.
11816         (DEF_VEC_O(tsv_s)): Remove.
11817         (tvariables): Change to std::vector.
11818         (create_trace_state_variable): Adjust to std::vector.
11819         (find_trace_state_variable): Likewise.
11820         (find_trace_state_variable_by_number): Likewise.
11821         (delete_trace_state_variable): Likewise.
11822         (trace_variable_command): Adjust to std::string.
11823         (delete_trace_variable_command): Likewise.
11824         (tvariables_info_1): Adjust to std::vector.
11825         (save_trace_state_variables): Likewise.
11826         (start_tracing): Likewise.
11827         (merge_uploaded_trace_state_variables): Adjust to std::vector
11828         and std::string.
11829         * target.h (struct target_ops)
11830         <to_download_trace_state_variable>: Pass reference to
11831         trace_state_variable.
11832         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11833         * target-delegates.c: Re-generate.
11834         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11835         (mi_tsv_deleted): Likewise.
11836         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11837         * remote.c (remote_download_trace_state_variable): Change
11838         pointer to reference and adjust.
11839         * make-target-delegates (parse_argtypes): Handle references.
11840         (write_function_header): Likewise.
11841         (munge_type): Likewise.
11842
11843 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11844
11845         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11846         string_view-selftests.c.
11847         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11848         testsuite.
11849         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11850         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11851         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11852         * unittests/basic_string_view/element_access/char/1.cc:
11853         Likewise.
11854         * unittests/basic_string_view/element_access/char/empty.cc:
11855         Likewise.
11856         * unittests/basic_string_view/element_access/char/front_back.cc:
11857         Likewise.
11858         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11859         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11860         Likewise.
11861         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11862         Likewise.
11863         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11864         Likewise.
11865         * unittests/basic_string_view/operations/compare/char/1.cc:
11866         Likewise.
11867         * unittests/basic_string_view/operations/compare/char/13650.cc:
11868         Likewise.
11869         * unittests/basic_string_view/operations/copy/char/1.cc:
11870         Likewise.
11871         * unittests/basic_string_view/operations/data/char/1.cc:
11872         Likewise.
11873         * unittests/basic_string_view/operations/find/char/1.cc:
11874         Likewise.
11875         * unittests/basic_string_view/operations/find/char/2.cc:
11876         Likewise.
11877         * unittests/basic_string_view/operations/find/char/3.cc:
11878         Likewise.
11879         * unittests/basic_string_view/operations/find/char/4.cc:
11880         Likewise.
11881         * unittests/basic_string_view/operations/rfind/char/1.cc:
11882         Likewise.
11883         * unittests/basic_string_view/operations/rfind/char/2.cc:
11884         Likewise.
11885         * unittests/basic_string_view/operations/rfind/char/3.cc:
11886         Likewise.
11887         * unittests/basic_string_view/operations/substr/char/1.cc:
11888         Likewise.
11889         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11890         * unittests/string_view-selftests.c: New file.
11891
11892 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11893
11894         * unittests/basic_string_view/capacity/1.cc: New file.
11895         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11896         * unittests/basic_string_view/cons/char/1.cc: New file.
11897         * unittests/basic_string_view/cons/char/2.cc: New file.
11898         * unittests/basic_string_view/cons/char/3.cc: New file.
11899         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11900         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11901         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11902         * unittests/basic_string_view/element_access/char/1.cc: New file.
11903         * unittests/basic_string_view/element_access/char/2.cc: New file.
11904         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11905         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11906         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11907         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11908         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11909         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11910         * unittests/basic_string_view/include.cc: New file.
11911         * unittests/basic_string_view/inserters/char/1.cc: New file.
11912         * unittests/basic_string_view/inserters/char/2.cc: New file.
11913         * unittests/basic_string_view/inserters/char/3.cc: New file.
11914         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11915         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11916         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11917         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11918         * unittests/basic_string_view/literals/types.cc: New file.
11919         * unittests/basic_string_view/literals/values.cc: New file.
11920         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11921         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11922         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11923         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11924         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11925         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11926         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11927         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11928         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11929         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11930         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11931         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11932         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11933         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11934         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11935         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11936         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11937         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11938         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11939         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11940         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11941         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11942         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11943         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11944         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11945         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11946         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11947         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11948         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11949         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11950         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11951         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11952         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11953         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11954         * unittests/basic_string_view/operators/char/2.cc: New file.
11955         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11956         * unittests/basic_string_view/range_access/char/1.cc: New file.
11957         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11958         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11959         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11960         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11961         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11962         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11963         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11964         * unittests/basic_string_view/typedefs.cc: New file.
11965         * unittests/basic_string_view/types/1.cc: New file.
11966
11967 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11968
11969         * common/gdb_string_view.h: Remove libstdc++ implementation
11970         details, adjust to gdb reality.
11971         * common/gdb_string_view.tcc: Likewise.
11972         * cli/cli-script.c (struct string_view): Remove.
11973         (user_args) <m_args>: Change element type to gdb::string_view.
11974         (user_args::insert_args): Adjust.
11975
11976 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11977
11978         * common/gdb_string_view.h: New file.
11979         * common/gdb_string_view.tcc: New file.
11980
11981 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11982
11983         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11984         * configure: Re-generate.
11985
11986 2018-04-09  Pedro Alves  <palves@redhat.com>
11987
11988         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11989         (set_target_gdbarch): Call
11990         gdb::observers::architecture_changed.notify instead of
11991         observer_notify_architecture_changed.
11992
11993 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11994
11995         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11996         (do_restore_current_traceframe_cleanup): Remove.
11997         (restore_current_traceframe_cleanup_dtor): Remove.
11998         (make_cleanup_restore_current_traceframe): Remove.
11999         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12000         New.
12001         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12002         * infrun.c (fetch_inferior_event): Use
12003         scoped_restore_current_traceframe.
12004
12005 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12006
12007         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12008         Remove.
12009         <n_allocated_type_units>: Remove.
12010         <all_type_units>: Change to std::vector.
12011         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12012         to std::vector change.
12013         (dwarf2_per_objfile::get_cutu): Likewise.
12014         (dwarf2_per_objfile::get_tu): Likewise.
12015         (create_signatured_type_table_from_index): Likewise.
12016         (create_signatured_type_table_from_debug_names): Likewise.
12017         (dw2_symtab_iter_next): Likewise.
12018         (dw2_print_stats): Likewise.
12019         (dw2_expand_all_symtabs): Likewise.
12020         (dw2_expand_marked_cus): Likewise.
12021         (dw2_debug_names_iterator::next): Likewise.
12022         (dwarf2_initialize_objfile): Likewise.
12023         (add_signatured_type_cu_to_table): Likewise.
12024         (create_all_type_units): Likewise.
12025         (add_type_unit): Likewise.
12026         (struct tu_abbrev_offset): Add constructor.
12027         (build_type_psymtabs_1): Adjust to std::vector change.
12028         (print_tu_stats): Likewise.
12029         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12030         (write_debug_names): Likewise.
12031
12032 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12033
12034         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12035         Make an std::vector.
12036         <n_comp_units>: Remove.
12037         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12038         to std::vector change.
12039         (dwarf2_per_objfile::get_cutu): Likewise.
12040         (dwarf2_per_objfile::get_cu): Likewise.
12041         (create_cus_from_index): Likewise.
12042         (create_addrmap_from_index): Likewise.
12043         (create_addrmap_from_aranges): Likewise.
12044         (dwarf2_read_index): Likewise.
12045         (dw2_find_last_source_symtab): Likewise.
12046         (dw2_map_symtabs_matching_filename): Likewise.
12047         (dw2_symtab_iter_next): Likewise.
12048         (dw2_print_stats): Likewise.
12049         (dw2_expand_all_symtabs): Likewise.
12050         (dw2_expand_symtabs_with_fullname): Likewise.
12051         (dw2_expand_marked_cus): Likewise.
12052         (dw2_map_symbol_filenames): Likewise.
12053         (create_cus_from_debug_names): Likewise.
12054         (dwarf2_read_debug_names): Likewise.
12055         (dw2_debug_names_iterator::next): Likewise.
12056         (dwarf2_initialize_objfile): Likewise.
12057         (set_partial_user): Likewise.
12058         (dwarf2_build_psymtabs_hard): Likewise.
12059         (read_comp_units_from_section): Remove arguments, adjust to
12060         std::vector change.
12061         (create_all_comp_units): Adjust to std::vector and
12062         read_comp_units_from_section changes.
12063         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12064         change.
12065         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12066         (psyms_seen_size): Likewise.
12067         (write_gdbindex): Likewise.
12068         (write_debug_names): Likewise.
12069
12070 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12071
12072         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12073         with dwarf2_per_objfile.
12074         (create_cus_from_index): Likewise.
12075         (create_signatured_type_table_from_index): Likewise.
12076         (dwarf2_read_index): Likewise.
12077         (dwarf2_initialize_objfile): Likewise.
12078         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12079         per_cu rather than get_dwarf2_per_objfile.
12080
12081 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12082
12083         * dwarf2read.h (struct signatured_type): Forward declare.
12084         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12085         New methods.
12086         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12087         (dw2_get_cutu): ...this.
12088         (dwarf2_per_objfile::get_cu): Rename from...
12089         (dw2_get_cu): ...this.
12090         (dwarf2_per_objfile::get_tu): New.
12091         (create_addrmap_from_index): Adjust.
12092         (create_addrmap_from_aranges): Adjust.
12093         (dw2_find_last_source_symtab): Adjust.
12094         (dw2_map_symtabs_matching_filename): Adjust.
12095         (dw2_symtab_iter_next): Adjust.
12096         (dw2_print_stats): Adjust.
12097         (dw2_expand_all_symtabs): Adjust.
12098         (dw2_expand_symtabs_with_fullname): Adjust.
12099         (dw2_expand_marked_cus): Adjust.
12100         (dw_expand_symtabs_matching_file_matcher): Adjust.
12101         (dw2_map_symbol_filenames): Adjust.
12102         (dw2_debug_names_iterator::next): Adjust.
12103         (dwarf2_initialize_objfile): Adjust.
12104         (set_partial_user): Adjust.
12105         (dwarf2_build_psymtabs_hard): Adjust.
12106
12107 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12108
12109         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12110         Remove unused variables.
12111         (dw2_map_symtabs_matching_filename): Likewise.
12112         (dwarf2_record_block_ranges): Likewise.
12113         (dwarf2_read_addr_index): Likewise.
12114         (follow_die_offset): Likewise.
12115
12116 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12117
12118         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12119         to symbol_file_add_main.
12120
12121 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12122
12123         PR mi/22299
12124         * mi/mi-console.c (do_fputc_async_safe): New.
12125         (mi_console_file::write_async_safe): New.
12126         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12127         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12128         New.
12129         * ui-file.c (ui_file::putstrn): Adjust call to
12130         fputstrn_unfiltered.
12131         * utils.c (printchar): Replace do_fputs and do_fprintf
12132         parameters by do_fputc.
12133         (fputstr_filtered): Adjust call to printchar.
12134         (fputstr_unfiltered): Likewise.
12135         (fputstrn_filtered): Likewise.
12136         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12137         printchar.
12138         * utils.h (do_fputc_ftype): New typedef.
12139         (fputstrn_unfiltered): Add do_fputc parameter.
12140
12141 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12142
12143         * regformats/i386/i386-avx.dat: Remove.
12144
12145 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12146
12147         PR gdb/22979
12148         * amd64-tdep.c (amd64_none_init_abi): New function.
12149         (amd64_x32_none_init_abi): New function.
12150         (_initialize_amd64_tdep): Register handlers for x86-64 and
12151         x64_32 with GDB_OSABI_NONE.
12152         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12153         GDB_OSABI_NONE osabi.
12154
12155 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12156
12157         PR gdb/22980
12158         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12159         GDB_OSABI_NONE.
12160         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12161         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12162
12163 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12164
12165         * common/byte-vector.h (char_vector): New type.
12166         * target.h (target_read_alloc): Return
12167         gdb::optional<byte_vector>.
12168         (target_read_stralloc): Return gdb::optional<char_vector>.
12169         (target_get_osdata): Return gdb::optional<char_vector>.
12170         * target.c (target_read_alloc_1): Templatize.  Replacement
12171         manual memory management with vector.
12172         (target_read_alloc): Change return type, adjust.
12173         (target_read_stralloc): Change return type, adjust.
12174         (target_get_osdata): Change return type, adjust.
12175         * auxv.c (struct auxv_info) <length>: Remove.
12176         <data>: Change type to gdb::optional<byte_vector>.
12177         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12178         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12179         (target_auxv_search): Adjust.
12180         (fprint_target_auxv): Adjust.
12181         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12182         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12183         (linux_make_corefile_notes): Adjust.
12184         * osdata.c (get_osdata): Adjust.
12185         * remote.c (remote_get_threads_with_qxfer): Adjust.
12186         (remote_memory_map): Adjust.
12187         (remote_traceframe_info): Adjust.
12188         (btrace_read_config): Adjust.
12189         (remote_read_btrace): Adjust.
12190         (remote_pid_to_exec_file): Adjust.
12191         * solib-aix.c (solib_aix_get_library_list): Adjust.
12192         * solib-dsbt.c (decode_loadmap): Don't free buf.
12193         (dsbt_get_initial_loadmaps): Adjust.
12194         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12195         * solib-target.c (solib_target_current_sos): Adjust.
12196         * tracepoint.c (sdata_make_value): Adjust.
12197         * xml-support.c (xinclude_start_include): Adjust.
12198         (xml_fetch_content_from_file): Adjust.
12199         * xml-support.h (xml_fetch_another): Change return type.
12200         (xml_fetch_content_from_file): Change return type.
12201         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12202         * xml-tdesc.c (file_read_description_xml): Adjust.
12203         (fetch_available_features_from_target): Change return type.
12204         (target_fetch_description_xml): Adjust.
12205         (target_read_description_xml): Adjust.
12206
12207 2018-04-06  Tom Tromey  <tom@tromey.com>
12208
12209         * value.c (~value): Update.
12210         (struct value) <contents>: Now unique_xmalloc_ptr.
12211         (value_contents_bits_eq, allocate_value_contents)
12212         (value_contents_raw, value_contents_all_raw)
12213         (value_contents_for_printing, value_contents_for_printing_const)
12214         (set_value_enclosing_type): Update.
12215
12216 2018-04-06  Tom Tromey  <tom@tromey.com>
12217
12218         * value.c (range_s): Remove typedef, VEC.
12219         (struct range): Add operator<.
12220         (range_lessthan): Remove.
12221         (ranges_contain): Change type.
12222         (~value): Update.
12223         (struct value) <unavailable, optimized_out>: Now std::vector.
12224         (value_entirely_available)
12225         (value_entirely_covered_by_range_vector)
12226         (value_entirely_unavailable, value_entirely_optimized_out):
12227         Update.
12228         (insert_into_bit_range_vector): Change argument type.
12229         (find_first_range_overlap): Likewise.
12230         (struct ranges_and_idx, value_contents_bits_eq)
12231         (require_not_optimized_out, require_available): Update.
12232         (ranges_copy_adjusted): Change argument types.
12233         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12234
12235 2018-04-06  Tom Tromey  <tom@tromey.com>
12236
12237         * value.c (~value): Update.
12238         (struct value) <parent>: Now a value_ref_ptr.
12239         (value_parent, set_value_parent, value_address, value_copy):
12240         Update.
12241
12242 2018-04-06  Tom Tromey  <tom@tromey.com>
12243
12244         * value.c (struct value): Add constructor, destructor, and member
12245         initializers.
12246         (allocate_value_lazy, value_decref): Update.
12247
12248 2018-04-06  Tom Tromey  <tom@tromey.com>
12249
12250         * value.c (struct value) <released, next>: Remove.
12251         (all_values): Now a std::vector.
12252         (allocate_value_lazy): Update.
12253         (value_next): Remove.
12254         (value_mark, value_free_to_mark, release_value)
12255         (value_release_to_mark): Update.
12256
12257 2018-04-06  Tom Tromey  <tom@tromey.com>
12258
12259         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12260         (free_value_chain): Remove.
12261         * value.c (free_value_chain): Remove.
12262         (value_release_to_mark): Return a std::vector.
12263         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12264         std::vector.
12265         (check_condition): Update.
12266         * eval.c (fetch_subexp_value): Change "val_chain" to a
12267         std::vector.
12268         * breakpoint.c (update_watchpoint): Update.
12269         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12270
12271 2018-04-06  Tom Tromey  <tom@tromey.com>
12272
12273         * value.h (free_all_values): Remove.
12274         * value.c (free_all_values): Remove.
12275
12276 2018-04-06  Tom Tromey  <tom@tromey.com>
12277
12278         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12279         (value_history_chain, value_history_count): Remove.
12280         (value_history): New global.
12281         (record_latest_value, access_value_history, show_values)
12282         (preserve_values): Update.
12283
12284 2018-04-06  Tom Tromey  <tom@tromey.com>
12285
12286         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12287         * varobj.c (varobj_set_display_format, varobj_set_value)
12288         (install_default_visualizer, construct_visualizer)
12289         (install_new_value, ~varobj, varobj_get_value_type)
12290         (my_value_of_variable, varobj_editable_p): Update.
12291         * c-varobj.c (c_describe_child, c_value_of_variable)
12292         (cplus_number_of_children, cplus_describe_child): Update.
12293         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12294         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12295         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12296
12297 2018-04-06  Tom Tromey  <tom@tromey.com>
12298
12299         * printcmd.c (last_examine_address): Change type to
12300         value_ref_ptr.
12301         (do_examine, x_command): Update.
12302
12303 2018-04-06  Tom Tromey  <tom@tromey.com>
12304
12305         * value.c (release_value): Update.
12306         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12307         (struct bpstats) <val>: Now a value_ref_ptr.
12308         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12309         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12310         (~watchpoint, print_it_watchpoint, watch_command_1)
12311         (invalidate_bp_value_on_memory_change): Update.
12312
12313 2018-04-06  Tom Tromey  <tom@tromey.com>
12314
12315         * varobj.c (varobj_clear_saved_item)
12316         (update_dynamic_varobj_children, install_new_value, ~varobj):
12317         Update.
12318         * value.h (value_incref): Move declaration earlier.
12319         (value_decref): Rename from value_free.
12320         (struct value_ref_policy): New.
12321         (value_ref_ptr): New typedef.
12322         (struct value_deleter): Remove.
12323         (gdb_value_up): Remove typedef.
12324         (release_value): Change return type.
12325         (release_value_or_incref): Remove.
12326         * value.c (set_value_parent): Update.
12327         (value_incref): Change return type.
12328         (value_decref): Rename from value_free.
12329         (value_free_to_mark, free_all_values, free_value_chain): Update.
12330         (release_value): Return value_ref_ptr.
12331         (release_value_or_incref): Remove.
12332         (record_latest_value, set_internalvar, clear_internalvar):
12333         Update.
12334         * stack.c (info_frame_command): Don't call value_free.
12335         * python/py-value.c (valpy_dealloc, valpy_new)
12336         (value_to_value_object): Update.
12337         * printcmd.c (do_examine): Update.
12338         * opencl-lang.c (lval_func_free_closure): Update.
12339         * mi/mi-main.c (register_changed_p): Don't call value_free.
12340         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12341         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12342         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12343         value_free.
12344         * guile/scm-value.c (vlscm_free_value_smob)
12345         (vlscm_scm_from_value): Update.
12346         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12347         (frame_unwind_register_unsigned, get_frame_register_bytes)
12348         (put_frame_register_bytes): Don't call value_free.
12349         * findvar.c (address_from_register): Don't call value_free.
12350         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12351         * dwarf2loc.c (entry_data_value_free_closure)
12352         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12353         (dwarf2_evaluate_loc_desc_full): Update.
12354         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12355         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12356         (~watchpoint, watch_command_1)
12357         (invalidate_bp_value_on_memory_change): Update.
12358         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12359
12360 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12361
12362         PR gdb/23022
12363         * warning.m4: Add -Wno-error=deprecated-register.
12364         * configure: Re-generate.
12365
12366 2018-04-05  Tom Tromey  <tom@tromey.com>
12367
12368         * linespec.h: Remove include of "vec.h".
12369
12370 2018-04-05  Tom Tromey  <tom@tromey.com>
12371
12372         * linespec.c (typep): Remove typedef.
12373         (find_methods, find_superclass_methods): Take a std::vector.
12374         (find_method): Use std::vector.
12375
12376 2018-04-05  Tom Tromey  <tom@tromey.com>
12377
12378         * utils.c (compare_strings): Remove.
12379         * utils.h (compare_strings): Remove.
12380         * objc-lang.h (find_imps): Update.
12381         * objc-lang.c (find_methods): Take a std::vector.
12382         (uniquify_strings, find_imps): Likewise.
12383         * linespec.c (find_methods): Take a std::vector.
12384         (decode_objc): Use std::vector.
12385         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12386         a std::vector.
12387         (find_method, find_function_symbols): Use std::vector.
12388
12389 2018-04-05  Tom Tromey  <tom@tromey.com>
12390
12391         * completer.c (completion_tracker::completion_tracker): Remove
12392         cast.
12393         (completion_tracker::discard_completions): Likewise.
12394         * breakpoint.c (ambiguous_names_p): Remove cast.
12395         * ada-lang.c (_initialize_ada_language): Remove cast.
12396         * utils.h (streq): Update.
12397         (streq_hash): Add new declaration.
12398         * utils.c (streq): Return bool.
12399         (streq_hash): New function.
12400
12401 2018-04-05  Tom Tromey  <tom@tromey.com>
12402
12403         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12404         Remove a string copy.
12405
12406 2018-04-05  Tom Tromey  <tom@tromey.com>
12407
12408         * linespec.c (filter_results): Use std::vector.
12409         (decode_line_2, decode_line_full): Update.
12410
12411 2018-04-05  Tom Tromey  <tom@tromey.com>
12412
12413         * linespec.c (canonical_to_fullform): Return std::string.
12414         (filter_results): Update.
12415         (struct decode_line_2_item): Add constructor.
12416         <fullform, displayform>: Now std::string.
12417         (decode_line_2_compare_items): Now a std::sort comparator.
12418         (decode_line_2): Update.
12419
12420 2018-04-05  Tom Tromey  <tom@tromey.com>
12421
12422         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12423         (unexpected_linespec_error): Update.
12424         (linespec_parse_basic, parse_linespec): Update.
12425
12426 2018-04-05  Tom Tromey  <tom@tromey.com>
12427
12428         * linespec.c (linespec_parse_basic): Reindent.
12429
12430 2018-04-05  Tom Tromey  <tom@tromey.com>
12431
12432         * minsyms.h (iterate_over_minimal_symbols): Update.
12433         * minsyms.c (iterate_over_minimal_symbols): Take a
12434         gdb::function_view.
12435         * linespec.c (struct collect_minsyms): Remove.
12436         (compare_msyms): Now a std::sort comparator.
12437         (add_minsym): Add parameters.
12438         (search_minsyms_for_name): Update.  Use std::vector.
12439
12440 2018-04-03  Tom Tromey  <tom@tromey.com>
12441
12442         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12443         gdb::byte_vector.
12444
12445 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12446
12447         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12448
12449 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12450
12451         PR gdb/16959
12452         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12453         printing static type.
12454
12455 2018-04-01  Tom Tromey  <tom@tromey.com>
12456
12457         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12458         (rs6000_xfer_shared_libraries): Update.
12459
12460 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12461
12462         * common/gdb_vecs.h (char_ptr): Remove.
12463         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12464
12465 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12466
12467         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12468         with std::vector.
12469         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12470
12471 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12472
12473         * tracepoint.h (struct uploaded_tp): Initialize fields.
12474         <actions, step_actions, cmd_strings>: Change type to
12475         std::vector<char *>.
12476         * tracepoint.c (get_uploaded_tp): Allocate with new.
12477         (free_uploaded_tps): Free with delete.
12478         (parse_tracepoint_definition): Adjust to std::vector change.
12479         * breakpoint.c (read_uploaded_action): Likewise.
12480         (create_tracepoint_from_upload): Likewise.
12481         * ctf.c (ctf_write_uploaded_tp): Likewise.
12482         (SET_ARRAY_FIELD): Likewise.
12483         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12484
12485 2018-03-30  Tom Tromey  <tom@tromey.com>
12486
12487         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12488         std::unique_ptr.
12489         (svr4_keep_data_in_core): Update.
12490         (svr4_read_so_list): Update.
12491
12492 2018-03-30  Tom Tromey  <tom@tromey.com>
12493
12494         * windows-nat.c (handle_output_debug_string, handle_exception):
12495         Update.
12496         * target.h (target_read_string): Update.
12497         * target.c (target_read_string): Change "string" to
12498         unique_xmalloc_ptr.
12499         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12500         Update.
12501         * solib-frv.c (frv_current_sos): Update.
12502         * solib-dsbt.c (dsbt_current_sos): Update.
12503         * solib-darwin.c (darwin_current_sos): Update.
12504         * linux-thread-db.c (inferior_has_bug): Update.
12505         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12506         Update.  Remove alloca.
12507         * ada-lang.c (ada_main_name): Update.
12508
12509 2018-03-30  Tom Tromey  <tom@tromey.com>
12510
12511         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12512         (struct dwo_file_deleter): New.
12513         (dwo_file_up): New typedef.
12514         (open_and_init_dwo_file): Use dwo_file_up.
12515         (free_dwo_file_cleanup): Remove.
12516
12517 2018-03-30  Tom Tromey  <tom@tromey.com>
12518
12519         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12520         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12521
12522 2018-03-30  Tom Tromey  <tom@tromey.com>
12523
12524         * dwarf2read.c (class free_cached_comp_units): New class.
12525         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12526         (free_cached_comp_units): Remove function.
12527
12528 2018-03-30  Tom Tromey  <tom@tromey.com>
12529
12530         * utils.h (make_cleanup_unpush_target): Remove.
12531         * inf-ptrace.c (struct target_unpusher): New.
12532         (target_unpush_up) New typedef.
12533         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12534         target_unpush_up.
12535         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12536
12537 2018-03-27  Tom Tromey  <tom@tromey.com>
12538
12539         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12540
12541 2018-03-27  Pedro Alves  <palves@redhat.com>
12542             Tom Tromey  <tom@tromey.com>
12543
12544         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12545         destructor.  Now a class.
12546         (gdb_readline_wrapper_cleanup): Remove function.
12547         (gdb_readline_wrapper): Remove cleanups.
12548
12549 2018-03-27  Tom Tromey  <tom@tromey.com>
12550
12551         * typeprint.h (struct type_print_options) <local_typedefs,
12552         global_typedefs>: Remove "struct" keyword.
12553         (class typedef_hash_table): New class.
12554         (recursively_update_typedef_hash, add_template_parameters)
12555         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12556         (find_typedef_in_hash): Don't declare.
12557         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12558         (typedef_hash_table::recursively_update): Rename from
12559         recursively_update_typedef_hash.  Now a member.
12560         (typedef_hash_table::add_template_parameters): Rename from
12561         add_template_parameters.  Now a member.
12562         (typedef_hash_table::typedef_hash_table): Now a constructor;
12563         rename from create_typedef_hash.
12564         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12565         rename from free_typedef_hash.
12566         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12567         (do_free_global_table): Remove.
12568         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12569         from copy_type_recursive.
12570         (create_global_typedef_table): Remove.
12571         (typedef_hash_table::find_global_typedef): Now a member of
12572         typedef_hash_table.
12573         (typedef_hash_table::find_typedef): Rename from
12574         find_typedef_in_hash; now a member.
12575         (whatis_exp): Update.
12576         * extension.h (struct ext_lang_type_printers): Add constructor and
12577         destructor.
12578         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12579         declare.
12580         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12581         Now a constructor; rename from start_ext_lang_type_printers.
12582         (ext_lang_type_printers): Now a destructor; rename from
12583         free_ext_lang_type_printers.
12584         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12585         Update.
12586         (c_type_print_base_struct_union): Update.  Remove cleanups.
12587
12588 2018-03-27  Tom Tromey  <tom@tromey.com>
12589
12590         * dwarf-index-write.c: Include <cmath>.
12591
12592 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12593
12594         * NEWS: Add entry describing new "set|show varsize-limit" command.
12595         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12596         command.
12597         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12598         "set variable".
12599
12600 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12601
12602         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12603         dwarf-index-write.c
12604         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12605         * dwarf-index-common.c: New file.
12606         * dwarf-index-common.h: New file.
12607         * dwarf-index-write.c: New file.
12608         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12609         (struct dwarf2_section_info): Move from here.
12610         (dwarf2_section_info_def): Likewise.
12611         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12612         (offset_type): Likewise.
12613         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12614         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12615         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12616         (byte_swap): Likewise.
12617         (MAYBE_SWAP): Likewise.
12618         (dwarf2_per_cu_ptr): Likewise.
12619         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12620         (struct tu_stats): Likewise.
12621         (struct dwarf2_per_objfile): Likewise.
12622         (struct dwarf2_per_cu_data): Likewise.
12623         (struct signatured_type): Likewise.
12624         (sig_type_ptr): Likewise.
12625         (DEF_VEC_P (sig_type_ptr)): Likewise.
12626         (INDEX4_SUFFIX): Likewise.
12627         (INDEX5_SUFFIX): Likewise.
12628         (DEBUG_STR_SUFFIX): Likewise.
12629         (dwarf2_read_section): Make non-static.
12630         (mapped_index_string_hash): Move from here.
12631         (dwarf5_djb_hash): Likewise.
12632         (file_write): Likewise.
12633         (class data_buf): Likewise.
12634         (struct symtab_index_entry): Likewise.
12635         (struct mapped_symtab): Likewise.
12636         (find_slot): Likewise.
12637         (hash_expand): Likewise.
12638         (add_index_entry): Likewise.
12639         (uniquify_cu_indices): Likewise.
12640         (class c_str_view): Likewise.
12641         (class c_str_view_hasher): Likewise.
12642         (class vector_hasher): Likewise.
12643         (write_hash_table): Likewise.
12644         (psym_index_map): Likewise.
12645         (struct addrmap_index_data): Likewise.
12646         (add_address_entry): Likewise.
12647         (add_address_entry_worker): Likewise.
12648         (write_address_map): Likewise.
12649         (symbol_kind): Likewise.
12650         (write_psymbols): Likewise.
12651         (struct signatured_type_index_data): Likewise.
12652         (write_one_signatured_type): Likewise.
12653         (recursively_count_psymbols): Likewise.
12654         (recursively_write_psymbols): Likewise.
12655         (class debug_names): Likewise.
12656         (check_dwarf64_offsets): Likewise.
12657         (psyms_seen_size): Likewise.
12658         (write_gdbindex): Likewise.
12659         (write_debug_names): Likewise.
12660         (assert_file_size): Likewise.
12661         (write_psymtabs_to_index): Likewise.
12662         (save_gdb_index_command): Likewise.
12663         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12664         command.
12665         * dwarf2read.h: New file.
12666
12667 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12668
12669         PR gdb/22670
12670         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12671         symbol name if the CU's language stores symbol names in linkage
12672         format.
12673         * language.h (struct language_defn)
12674         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12675         all instances of this struct.
12676
12677 2018-03-26  Tom Tromey  <tom@tromey.com>
12678
12679         * stack.c (backtrace_command_1): Remove verbose code.
12680
12681 2018-03-26  Tom Tromey  <tom@tromey.com>
12682
12683         * python/py-framefilter.c (py_print_type): Don't catch
12684         exceptions.  Return void.
12685         (py_print_value): Likewise.
12686         (py_print_single_arg): Likewise.
12687         (enumerate_args): Don't catch exceptions.
12688         (py_print_args): Likewise.
12689         (py_print_frame): Likewise.
12690         (gdbpy_apply_frame_filter): Catch exceptions here.
12691
12692 2018-03-26  Tom Tromey  <tom@tromey.com>
12693
12694         * stack.c (_initialize_stack): Remove trailing newlines from help
12695         text.  Add "Usage" line to "backtrace" help.
12696
12697 2018-03-26  Tom Tromey  <tom@tromey.com>
12698
12699         PR python/16486:
12700         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12701
12702 2018-03-26  Tom Tromey  <tom@tromey.com>
12703
12704         * python/py-framefilter.c (py_print_single_arg): Return
12705         EXT_LANG_BT_ERROR from catch.
12706
12707 2018-03-26  Tom Tromey  <tom@tromey.com>
12708
12709         PR backtrace/15584:
12710         * stack.c (backtrace_command_1): Move some code into no-filters
12711         "if".
12712
12713 2018-03-26  Tom Tromey  <tom@tromey.com>
12714
12715         * python/py-framefilter.c (throw_quit_or_print_exception): New
12716         function.
12717         (gdbpy_apply_frame_filter): Use it.
12718
12719 2018-03-26  Tom Tromey  <tom@tromey.com>
12720
12721         PR cli/17716:
12722         * python/py-framefilter.c (py_print_type, py_print_value)
12723         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12724         RETURN_MASK_ERROR.
12725
12726 2018-03-26  Tom Tromey  <tom@tromey.com>
12727
12728         * python/py-framefilter.c (enumerate_args): Use
12729         gdb::unique_xmalloc_ptr.
12730
12731 2018-03-26  Tom Tromey  <tom@tromey.com>
12732
12733         * python/py-framefilter.c (py_print_frame): Return
12734         EXT_LANG_BT_OK.
12735         (gdbpy_apply_frame_filter): Update comment.
12736         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12737         Remove.
12738         <EXT_LANG_BT_NO_FILTERS>: Change value.
12739
12740 2018-03-26  Tom Tromey  <tom@tromey.com>
12741
12742         PR backtrace/15582:
12743         * stack.c (backtrace_command): Parse "hide" argument.
12744         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12745         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12746         constant.
12747
12748 2018-03-26  Tom Tromey  <tom@tromey.com>
12749
12750         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12751         add "flags".
12752         (backtrace_command): Remove "fulltrace", add "flags".
12753
12754 2018-03-26  Tom Tromey  <tom@tromey.com>
12755
12756         * stack.c (backtrace_command): Rewrite command line parsing.
12757
12758 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12759
12760         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12761
12762 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12763
12764         * filename-seen-cache.h: Add include guard.
12765
12766 2018-03-26  Keith Seitz  <keiths@redhat.com>
12767
12768         * symfile.c (place_section): Remove "struct" from section_addr_info
12769         in comment.
12770         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12771         "struct" keyword from section_addr_info.
12772
12773 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12774
12775         * regformats/regdef.h (reg): Add constructors.
12776
12777 2018-03-25  Pedro Alves  <palves@redhat.com>
12778
12779         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12780         if then/else bodies in var_func_name extraction.
12781
12782 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12783
12784         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12785         lookup_minimal_symbol() to find symbol entry.
12786         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12787
12788 2018-03-23  Keith Seitz  <keiths@redhat.com>
12789
12790         PR c++/22968
12791         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12792         nested type definitions for C++, too.
12793
12794 2018-03-23  Tom Tromey  <tom@tromey.com>
12795
12796         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12797         a typedef.
12798         (macho_register_oso): Remove.
12799         (macho_symtab_read): Take a std::vector.
12800         (oso_el_compare_name): Now a std::sort comparator.
12801         (macho_symfile_read_all_oso): Take a std::vector.
12802         (macho_symfile_read): Use std::vector.  Remove cleanups.
12803
12804 2018-03-22  Tom Tromey  <tom@tromey.com>
12805
12806         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12807         (record_full_goto_bookmark): Use std::string.
12808
12809 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12810
12811         PR tdep/18295
12812         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12813         a single mask.
12814
12815 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12816
12817         * rs6000-tdep.c (store_insn_p): New function.
12818         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12819         and cr_reg to their unshifted values. Use store_insn_p to
12820         match LR saves using either R1 or fdata->alloca_reg. Use
12821         store_insn_p to match CR saves. Set alloca_reg_offset
12822         when alloca_reg and framep are set. Remove lr_reg shift
12823         when assigning to fdata->lr_register.
12824
12825 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12826
12827         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12828         command line args instead of emitting a warning.
12829
12830 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12831
12832         * tracepoint.h (struct static_tracepoint_marker): Initialize
12833         fields, define default constructor, move constructor and move
12834         assignment, disable the rest.
12835         <str_id, extra>: Make std::string.
12836         (release_static_tracepoint_marker): Remove.
12837         (free_current_marker): Remove.
12838         * tracepoint.c (free_current_marker): Remove.
12839         (parse_static_tracepoint_marker_definition): Adjust to
12840         std::string, use new hex2str overload.
12841         (release_static_tracepoint_marker): Remove.
12842         (print_one_static_tracepoint_marker): Get marker by reference
12843         and adjust to std::string.
12844         (info_static_tracepoint_markers_command): Adjust to std::vector
12845         changes
12846         * target.h (static_tracepoint_marker_p): Remove typedef.
12847         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12848         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12849         bool.
12850         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12851         * target-debug.h
12852         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12853         (target_debug_print_std_vector_static_tracepoint_marker): New.
12854         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12855         to...
12856         (target_debug_print_static_tracepoint_marker_p): ... this.
12857         * target-delegates.c: Re-generate.
12858         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12859         Make std::string.
12860         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12861         (decode_static_tracepoint_spec): Adjust to std::vector.
12862         (tracepoint_print_one_detail): Adjust to std::string.
12863         (strace_marker_decode_location): Adjust to std::string.
12864         (update_static_tracepoint): Adjust to std::string, remove call
12865         to release_static_tracepoint_marker.
12866         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12867         Adjust to std::vector.
12868         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12869         (remote_static_tracepoint_markers_by_strid): Adjust to
12870         std::vector.
12871         * common/rsp-low.h (hex2str): New overload with explicit count
12872         of bytes.
12873         * common/rsp-low.c (hex2str): New overload with explicit count
12874         of bytes.
12875         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12876         (_initialize_rsp_low_selftests): Add test_hex2str test.
12877         * unittests/tracepoint-selftests.c
12878         (test_parse_static_tracepoint_marker_definition): Adjust to
12879         std::string.
12880
12881 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12882
12883         * tracepoint.c (parse_static_tracepoint_marker_definition):
12884         Consider case where the definition is followed by more
12885         definitions.
12886         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12887         tracepoint-selftests.c.
12888         * unittests/tracepoint-selftests.c: New.
12889
12890 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12891
12892         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12893         Carvalho.
12894
12895 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12896
12897         * symtab.c (find_pc_sect_line): fixed indentation.
12898
12899 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12900
12901         * symtab.c (find_pc_sect_line): now uses binary search.
12902
12903 2018-03-19  Tom Tromey  <tom@tromey.com>
12904
12905         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12906         "IDENT" production.
12907
12908 2018-03-19  Pedro Alves  <palves@redhat.com>
12909             Tom Tromey  <tom@tromey.com>
12910
12911         * unittests/observable-selftests.c: New file.
12912         * common/observable.h: New file.
12913         * observable.h: New file.
12914         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12915         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12916         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12917         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12918         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12919         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12920         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12921         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12922         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12923         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12924         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12925         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12926         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12927         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12928         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12929         tui/tui-interp.c, valops.c: Update all users.
12930         * tui/tui-hooks.c (tui_bp_created_observer)
12931         (tui_bp_deleted_observer, tui_bp_modified_observer)
12932         (tui_inferior_exit_observer, tui_before_prompt_observer)
12933         (tui_normal_stop_observer, tui_register_changed_observer):
12934         Remove.
12935         (tui_observers_token): New global.
12936         (attach_or_detach, tui_attach_detach_observers): New functions.
12937         (tui_install_hooks, tui_remove_hooks): Use
12938         tui_attach_detach_observers.
12939         * record-btrace.c (record_btrace_thread_observer): Remove.
12940         (record_btrace_thread_observer_token): New global.
12941         * observer.sh: Remove.
12942         * observer.c: Rename to observable.c.
12943         * observable.c (namespace gdb_observers): Define new objects.
12944         (observer_debug): Move into gdb_observers namespace.
12945         (struct observer, struct observer_list, xalloc_observer_list_node)
12946         (xfree_observer_list_node, generic_observer_attach)
12947         (generic_observer_detach, generic_observer_notify): Remove.
12948         (_initialize_observer): Update.
12949         Don't include observer.inc.
12950         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12951         (clean mostlyclean): Likewise.
12952         (observer.h, observer.inc): Remove targets.
12953         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12954         (COMMON_SFILES): Use observable.c, not observer.c.
12955         * .gitignore: Remove observer.h.
12956
12957 2018-03-18  Tom Tromey  <tom@tromey.com>
12958
12959         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12960         gdb::def_vector.
12961         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12962
12963 2018-03-17  Tom Tromey  <tom@tromey.com>
12964
12965         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12966
12967 2018-03-17  Tom Tromey  <tom@tromey.com>
12968
12969         * target.c (class scoped_target_fd): New.
12970         (target_fileio_close_cleanup): Remove.
12971         (target_fileio_read_alloc_1): Use scoped_target_fd.
12972
12973 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12974
12975         * silent-rules.mk: New.
12976         * Makefile.in: Include silent-rules.mk
12977         (srcdir, VPATH, top_srcdir): Move up.
12978         (COMPILE): Add ECHO_CXX.
12979         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12980         (init.c): Add ECHO_INIT_C.
12981         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12982         (version.c): Add ECHO_GEN.
12983         (printcmd.o): Add ECHO_CXX.
12984         (target-float.o): Add ECHO_CXX.
12985         (ada-exp.o): Add ECHO_CXX.
12986         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12987         (insight$(EXEEXT)): Add ECHO_CXXLD.
12988         * gnulib/configure.ac: Add AM_SILENT_RULES.
12989         * gnulib/aclocal.m4: Re-generate.
12990         * gnulib/configure: Re-generate.
12991         * gnulib/import/Makefile.in: Re-generate.
12992
12993 2018-03-16  Tom Tromey  <tom@tromey.com>
12994
12995         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12996         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12997         * utils.c (do_free_section_addr_info)
12998         (make_cleanup_free_section_addr_info): Remove.
12999         * symfile.h (struct other_sections): Add constructor.
13000         (struct section_addr_info): Remove.
13001         (section_addr_info): New typedef.
13002         (struct sym_fns) <sym_offsets>: Change type of parameter.
13003         (build_section_addr_info_from_objfile)
13004         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13005         (default_symfile_offsets, symbol_file_add)
13006         (symbol_file_add_from_bfd)
13007         (build_section_addr_info_from_section_table): Update.
13008         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13009         * symfile.c (alloc_section_addr_info): Remove.
13010         (build_section_addr_info_from_section_table): Change return type.
13011         Update.
13012         (build_section_addr_info_from_bfd)
13013         (build_section_addr_info_from_objfile): Likewise.
13014         (free_section_addr_info): Remove.
13015         (relative_addr_info_to_section_offsets): Change type of "addrs".
13016         (addrs_section_compar): Now a std::sort comparator.
13017         (addrs_section_sort): Change return type.
13018         (addr_info_make_relative): Change type of "addrs".  Update.
13019         (default_symfile_offsets, syms_from_objfile_1)
13020         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13021         (symbol_file_add_separate): Update.
13022         (symbol_file_add): Change type of "addrs".  Update.
13023         (add_symbol_file_command): Update.  Remove cleanups.
13024         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13025         cleanups.
13026         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13027         * solib.c (solib_read_symbols): Update.
13028         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13029         * machoread.c (macho_symfile_offsets): Update.
13030         * jit.c (jit_bfd_try_read_symtab): Update.
13031
13032 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13033
13034         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13035         unittests/utils-selftests.c.
13036         * unittests/utils-selftests.c: New file.
13037
13038 2018-03-14  Tom Tromey  <tom@tromey.com>
13039
13040         PR cli/14977:
13041         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13042         for NULL.
13043
13044 2018-03-14  Tom Tromey  <tom@tromey.com>
13045
13046         PR cli/19918:
13047         * printcmd.c (printf_pointer): Allow "-" in format.
13048
13049 2018-03-14  Tom Tromey  <tom@tromey.com>
13050
13051         * printcmd.c (_initialize_printcmd): Add usage to printf.
13052
13053 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13054
13055         * MAINTAINERS: Update my email address.
13056
13057 2018-03-13  Tom Tromey  <tom@tromey.com>
13058
13059         * machoread.c (macho_check_dsym): Change filenamep to a
13060         std::string*.
13061         (macho_symfile_read): Update.
13062         * symfile.c (load_command): Use std::string.
13063
13064 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13065
13066         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13067         to error message string.
13068         (riscv_register_name): Use xsnprintf instead of sprintf.
13069         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13070         internal_error.
13071         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13072         error.
13073         (riscv_push_dummy_call): Likewise.
13074
13075 2018-03-12  Tom Tromey  <tom@tromey.com>
13076
13077         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13078         Use gdb::byte_vector.
13079         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13080
13081 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13082
13083         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13084         parameter type to readable_regcache.
13085         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13086         the declaration.
13087
13088 2018-03-11  Tom Tromey  <tom@tromey.com>
13089
13090         * dwarf2read.c (struct nextfield): Add initializers.
13091         (struct nextfnfield): Remove.
13092         (struct fnfieldlist): Add initializers.  Remove "length" and
13093         "head", use std::vector.
13094         (struct decl_field_list): Remove.
13095         (struct field_info): Add initializers.
13096         <fields, baseclasses>: Now std::vector.
13097         <nbaseclasses, nfnfields, typedef_field_list_count,
13098         nested_types_list_count>: Remove.
13099         (dwarf2_add_field, dwarf2_add_type_defn)
13100         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13101         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13102         (process_structure_scope): Update.
13103
13104 2018-03-11  Tom Tromey  <tom@tromey.com>
13105
13106         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13107         for use by std::sort.
13108         (build_type_psymtabs_1): Use std::vector.
13109
13110 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13111
13112         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13113         and LIBMPFR in the printed configuration.
13114
13115 2018-03-08  Tom Tromey  <tom@tromey.com>
13116
13117         * source.c (get_filename_and_charpos): Use scoped_fd.
13118         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13119         (procfs_pidlist): Likewise.
13120         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13121         (iterate_over_mappings): Likewise.
13122
13123 2018-03-08  Tom Tromey  <tom@tromey.com>
13124
13125         * infcall.c (struct call_return_meta_info)
13126         <stack_temporaries_enabled>: Remove.
13127         (get_call_return_value, call_function_by_hand_dummy): Update.
13128         * thread.c (disable_thread_stack_temporaries): Remove.
13129         (enable_thread_stack_temporaries): Remove.
13130         (thread_stack_temporaries_enabled_p): Return bool.
13131         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13132         (get_last_thread_stack_temporary): Update.
13133         * eval.c (evaluate_subexp): Update.
13134         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13135         class, not a function.
13136         (value_ptr, value_vec): Remove typedefs.
13137         (class thread_info) <stack_temporaries_enabled>: Now bool.
13138         <stack_temporaries>: Now a std::vector.
13139         (thread_stack_temporaries_enabled_p)
13140         (value_in_thread_stack_temporaries): Return bool.
13141
13142 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13143
13144         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13145         (getpkt_or_notif_sane_1): Likewise.
13146
13147 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13148
13149         * build-id.c (build_id_to_debug_bfd): Use std::string.
13150
13151 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13152
13153         * build-id.c (find_separate_debug_file_by_buildid): Return
13154         std::string.
13155         * build-id.h (find_separate_debug_file_by_buildid): Return
13156         std::string.
13157         * coffread.c (coff_symfile_read): Adjust to std::string.
13158         * elfread.c (elf_symfile_read): Adjust to std::string.
13159         * symfile.c (separate_debug_file_exists): Change parameter to
13160         std::string.
13161         (find_separate_debug_file): Return std::string.
13162         (find_separate_debug_file_by_debuglink): Return std::string.
13163         * symfile.h (find_separate_debug_file_by_debuglink): Return
13164         std::string.
13165
13166 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13167
13168         * common/xml-utils.c (xml_escape_text): Move code to...
13169         (xml_escape_text_append): ... this new function.
13170         * common/xml-utils.h (xml_escape_text_append): New declaration.
13171         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13172         New function.
13173         (_initialize_xml_utils): register test_xml_escape_text_append as
13174         a selftest.
13175
13176 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13177
13178         * defs.h: Remove MAX_REGISTER_SIZE.
13179         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13180         asserts.
13181         * python/py-unwind.c (pyuw_sniffer): Likewise.
13182
13183 2018-03-07  Tom Tromey  <tom@tromey.com>
13184
13185         * linux-tdep.c (linux_info_proc): Update.
13186         * target.h (struct target_ops) <to_fileio_readlink>: Return
13187         optional<string>.
13188         (target_fileio_readlink): Return optional<string>.
13189         * remote.c (remote_hostio_readlink): Return optional<string>.
13190         * inf-child.c (inf_child_fileio_readlink): Return
13191         optional<string>.
13192         * target.c (target_fileio_readlink): Return optional<string>.
13193
13194 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13195
13196         * regcache.c (cooked_read_test): Add riscv to the list of
13197         architectures that have a save_reggroup.
13198
13199 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13200
13201         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13202         value is not a dynamic class object.
13203
13204 2018-03-06  Tom Tromey  <tom@tromey.com>
13205
13206         * rust-exp.y: Formatting fixes.
13207
13208 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13209
13210         * riscv-tdep.c (riscv_register_name): Remove target description
13211         support.
13212         (riscv_gdbarch_init): Remove target description check.
13213
13214 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13215
13216         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13217         comment.
13218         * riscv-tdep.h: Likewise.
13219
13220 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13221
13222         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13223         (riscv_pseudo_register_write): Delete.
13224         (riscv_gdbarch_init): Remove all use of pseudo registers.
13225
13226 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13227
13228         * record-btrace.c (btrace_print_lines): Replace cleanup
13229         parameter with RAII equivalents.
13230         (btrace_insn_history): Replace cleanup with RAII equivalents.
13231         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13232         make_cleanup_ui_out_tuple_begin_end): Remove.
13233         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13234         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13235         make_cleanup_ui_out_list_begin_end): Remove.
13236
13237 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13238
13239         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13240         parameter types to std::vector.  Use bool.
13241         (record_btrace_wait): Replace VEC(tp_t) with
13242         std::vector<thread_info *>.
13243         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13244
13245 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13246
13247         * record-btrace.c (record_btrace_disable_callback): Remove.
13248         (struct scoped_btrace_disable): New.
13249         (record_btrace_open): Use scoped_btrace_disable.
13250
13251 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13252
13253         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13254         reading values from registers.
13255
13256 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13257
13258         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13259         where appropriate.
13260
13261 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13262
13263         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13264         change parameter type.  Use GDB's print functions, and use
13265         core_addr_to_string where appropriate.
13266         (riscv_push_dummy_call): Use core_addr_to_string where
13267         appropriate, update call to riscv_print_arg_location, and reindent
13268         a few lines.
13269         (riscv_return_value): Update call to riscv_print_arg_location.
13270
13271 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13272             Tim Newsome <tim@sifive.com>
13273             Albert Ou <a0u@eecs.berkeley.edu>
13274             Darius Rad <darius@bluespec.com>
13275
13276         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13277         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13278         (ALLDEPFILES): Add riscv-tdep.c
13279         * configure.tgt: Add riscv support.
13280         * riscv-tdep.c: New file.
13281         * riscv-tdep.h: New file.
13282         * NEWS: Mention new target.
13283         * MAINTAINERS: Add entry for riscv.
13284
13285 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13286
13287         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13288         fields within aggregates.
13289
13290 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13291
13292         * record-btrace.c (btrace_print_lines): Change type of flags to
13293         gdb_disassembly_flags.
13294
13295 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13296
13297         * fbsd-nat.c: Include "inf-ptrace.h".
13298         (USE_SIGTRAP_SIGINFO): Conditionally define.
13299         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13300         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13301         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13302         function.
13303         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13304         Likewise.
13305         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13306         Likewise.
13307         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13308         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13309         "supports_stopped_by_hw_breakpoint" target methods.
13310
13311 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13312
13313         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13314         * fbsd-nat.c (debug_fbsd_nat): New variable.
13315         (show_fbsd_nat_debug): New function.
13316         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13317         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13318
13319 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13320
13321         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13322         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13323         prototype.
13324         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13325         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13326         method.
13327
13328 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13329
13330         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13331         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13332
13333 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13334
13335         * charset.c (struct charset_vector): New.
13336         (charsets): Change type to charset_vector.
13337         (find_charset_names): Adjust.
13338         (add_one): Adjust.
13339         (_initialize_charset): Adjust.
13340
13341 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13342
13343         * progspace.h (struct program_space) <deleted_solibs>: Change
13344         type to std::vector<std::string>.
13345         * progspace.c (clear_program_space_solib_cache): Adjust.
13346         * breakpoint.c (print_solib_event): Adjust.
13347         (check_status_catch_solib): Adjust.
13348         * solib.c (update_solib_list): Adjust.
13349         * ui-out.h (class ui_out) <field_string>: New overload.
13350         * ui-out.c (ui_out::field_string): New overload.
13351
13352 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13353
13354         * progspace.h (struct program_space): Add constructor and
13355         destructor, initialize fields.
13356         (add_program_space): Remove.
13357         * progspace.c (add_program_space): Rename to...
13358         (program_space::program_space): ... this.
13359         (release_program_space): Rename to...
13360         (program_space::~program_space): ... this.
13361         (delete_program_space): Use delete to delete program_space.
13362         (initialize_progspace): Use new to allocate program_space.
13363         * inferior.c (add_inferior_with_spaces): Likewise.
13364         (clone_inferior_command): Likewise.
13365         * infrun.c (follow_fork_inferior): Likewise.
13366         (handle_vfork_child_exec_or_exit): Likewise.
13367
13368 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13369
13370         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13371         (delim_string_to_char_ptr_vec): Return std::vector of
13372         gdb::unique_xmalloc_ptr.
13373         (dirnames_to_char_ptr_vec_append): Take std::vector of
13374         gdb::unique_xmalloc_ptr.
13375         (dirnames_to_char_ptr_vec): Return std::vector of
13376         gdb::unique_xmalloc_ptr.
13377         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13378         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13379         (delim_string_to_char_ptr_vec): Return an std::vector of
13380         gdb::unique_xmalloc_ptr, adjust the code.
13381         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13382         gdb::unique_xmalloc_ptr, adjust the code.
13383         (dirnames_to_char_ptr_vec): Return an std::vector of
13384         gdb::unique_xmalloc_ptr, adjust the code.
13385         * auto-load.c (auto_load_safe_path_vec): Change type to
13386         std::vector of gdb::unique_xmalloc_ptr.
13387         (auto_load_expand_dir_vars): Return an std::vector of
13388         gdb::unique_xmalloc_ptr, adjust the code.
13389         (auto_load_safe_path_vec_update): Adjust.
13390         (filename_is_in_auto_load_safe_path_vec): Adjust.
13391         (auto_load_objfile_script_1): Adjust.
13392         * build-id.c (build_id_to_debug_bfd): Adjust.
13393         * linux-thread-db.c (thread_db_load_search): Adjust.
13394         * source.c (add_path): Adjust.
13395         (openp): Adjust.
13396         * symfile.c (find_separate_debug_file): Adjust.
13397         * utils.c (do_free_char_ptr_vec): Remove.
13398         (make_cleanup_free_char_ptr_vec): Remove.
13399
13400 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13401
13402         PR gdb/22907
13403         * common/pathstuff.c: Conditionally include "<windows.h>".
13404
13405 2018-03-01  Georg Sauthoff  <mail@georg.so>
13406
13407         PR gdb/22888
13408         * gcore.in: Quote variables and switch interpreter to bash.
13409
13410 2018-03-01  Tom Tromey  <tom@tromey.com>
13411
13412         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13413         assertion.  Add assertion for discriminant_index.
13414         (quirk_rust_enum): Use correct base type name in univariant case.
13415
13416 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13417
13418         * record.c (get_call_history_modifiers): Return a
13419         record_print_flags.
13420         (cmd_record_call_history): Adjust.
13421         * record-btrace.c (record_btrace_call_history): Adjust.
13422         (record_btrace_call_history_range): Adjust.
13423         (record_btrace_call_history_from): Adjust.
13424         * target-debug.h (target_debug_print_record_print_flags): New.
13425         * target-delegates.c: Re-generate.
13426         * target.c (target_call_history): Change flags type.
13427         (target_call_history_from): Likewise.
13428         (target_call_history_range): Likewise.
13429         * target.h (struct target_ops) <target_call_history>: Likewise.
13430         (target_call_history_from): Likewise.
13431         (target_call_history_range): Likewise.
13432
13433 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13434             Simon Marchi  <simon.marchi@polymtl.ca>
13435
13436         * common/common-utils.c: Include "sys/stat.h".
13437         (is_regular_file): Move here from "source.c"; change return
13438         type to "bool".
13439         * common/common-utils.h (is_regular_file): New prototype.
13440         * common/pathstuff.c (contains_dir_separator): New function.
13441         * common/pathstuff.h (contains_dir_separator): New prototype.
13442         * source.c: Don't include "sys/stat.h".
13443         (is_regular_file): Move to "common/common-utils.c".
13444
13445 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13446
13447         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13448         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13449         * auto-load.c: Include "common/pathstuff.h".
13450         * common/common-def.h (current_directory): Move here.
13451         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13452         function.
13453         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13454         prototype.
13455         * common/pathstuff.c: New file.
13456         * common/pathstuff.h: New file.
13457         * compile/compile.c: Include "common/pathstuff.h".
13458         * defs.h (current_directory): Move to "common/common-defs.h".
13459         * dwarf2read.c: Include "common/pathstuff.h".
13460         * exec.c: Likewise.
13461         * guile/scm-safe-call.c: Likewise.
13462         * linux-thread-db.c: Likewise.
13463         * main.c: Likewise.
13464         * nto-tdep.c: Likewise.
13465         * objfiles.c: Likewise.
13466         * source.c: Likewise.
13467         * symtab.c: Likewise.
13468         * utils.c: Include "common/pathstuff.h".
13469         (gdb_realpath): Move to "common/pathstuff.c".
13470         (gdb_realpath_keepfile): Likewise.
13471         (gdb_abspath): Likewise.
13472         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13473         (gdb_realpath_keepfile): Likewise.
13474         (gdb_abspath): Likewise.
13475
13476 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13477
13478         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13479         wildcard process pid for super_resume for kernels with a
13480         specific bug.
13481
13482 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13483
13484         * compile/compile.c (get_args): Add additional comments
13485         explaining function.
13486
13487 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13488             Tom Tromey  <tom@tromey.com>
13489
13490         * target.h (memory_write_request_s): Remove typedef.  Don't define
13491         VEC.
13492         (target_write_memory_blocks): Change argument to std::vector.
13493         (struct memory_write_request): Add constructor.
13494         * target-memory.c (compare_block_starting_address): Return bool.
13495         Change argument types.
13496         (claim_memory): Change arguments to use std::vector.
13497         (split_regular_and_flash_blocks, blocks_to_erase)
13498         (compute_garbled_blocks): Likewise.
13499         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13500         (target_write_memory_blocks): Change argument to std::vector.
13501         * symfile.c (struct load_section_data): Add constructor and
13502         destructor.  Use std::vector for "requests".
13503         (struct load_progress_data): Add initializers.
13504         (load_section_callback): Update.  Use "new".
13505         (clear_memory_write_data): Remove.
13506         (generic_load): Update.
13507
13508 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13509
13510         * arch/aarch64.h: Use common/tdesc.h.
13511
13512 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13513
13514         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13515         architecture with a 64-bit ABI.
13516
13517 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13518
13519         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13520         ahead of target description loading.
13521
13522 2018-02-26  Tom Tromey  <tom@tromey.com>
13523
13524         * stack.c (backtrace_command_1): Update.
13525         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13526         of "flags".
13527         * python/py-framefilter.c (py_print_frame)
13528         (gdbpy_apply_frame_filter): Change type of "flags".
13529         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13530         of "flags".
13531         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13532         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13533         * extension.h (enum frame_filter_flag): Rename from
13534         frame_filter_flags.
13535         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13536         (apply_ext_lang_frame_filter): Change type of "flags".
13537         * extension.c (apply_ext_lang_frame_filter): Change type of
13538         "flags".
13539         * extension-priv.h (struct extension_language_ops)
13540         <apply_frame_filter>: Change type of "flags".
13541
13542 2018-02-26  Tom Tromey  <tom@tromey.com>
13543
13544         PR python/16497:
13545         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13546         off-by-one in py_end computation.
13547         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13548         PRINT_MORE_FRAMES.
13549         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13550         constant.
13551
13552 2018-02-26  Tom Tromey  <tom@tromey.com>
13553
13554         * dwarf2read.c (struct variant_field): New.
13555         (struct nextfield) <variant>: New field.
13556         (dwarf2_add_field): Handle DW_TAG_variant_part.
13557         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13558         discriminated union.
13559         (read_structure_type): Handle DW_TAG_variant_part.
13560         (handle_struct_member_die): New function, extracted from
13561         process_structure_scope.  Handle DW_TAG_variant.
13562         (process_structure_scope): Handle discriminated unions.  Call
13563         handle_struct_member_die.
13564
13565 2018-02-26  Tom Tromey  <tom@tromey.com>
13566
13567         * rust-lang.h (rust_last_path_segment): Declare.
13568         * rust-lang.c (rust_last_path_segment): Now public.  Change
13569         contract.
13570         (struct disr_info): Remove.
13571         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13572         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13573         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13574         (rust_enum_p, rust_enum_variant): New function.
13575         (rust_underscore_fields): Remove "offset" parameter.
13576         (rust_print_enum): New function.
13577         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13578         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13579         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13580         enums.
13581         (rust_internal_print_type): New function, from rust_print_type.
13582         Remove enum code.
13583         (rust_print_type): Call rust_internal_print_type.
13584         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13585         Update enum handling.
13586         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13587         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13588         (rust_union_quirks): New functions.
13589         (process_full_comp_unit, process_full_type_unit): Call
13590         rust_union_quirks.
13591         (process_structure_scope): Update rust_unions if necessary.
13592
13593 2018-02-26  Tom Tromey  <tom@tromey.com>
13594
13595         * value.h (value_union_variant): Declare.
13596         * valops.c (value_union_variant): New function.
13597         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13598         (struct discriminant_info): New.
13599         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13600         enumerator.
13601         (struct main_type) <flag_discriminated_union>: New field.
13602
13603 2018-02-26  Tom Tromey  <tom@tromey.com>
13604
13605         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13606         unittests/unpack-selftests.c.
13607         * unittests/unpack-selftests.c: New file.
13608         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13609
13610 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13611
13612         * dwarf2read.c (struct partial_die_info) <read>: New method.
13613         (read_partial_die): Remove the declaration.
13614         (load_partial_dies): Update.
13615         (partial_die_info::partial_die_info):
13616         (read_partial_die): Change it to partial_die_info::read.
13617
13618 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13619
13620         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13621         (fixup_partial_die): Remove declaration.
13622         (scan_partial_symbols): Update.
13623         (partial_die_parent_scope): Likewise.
13624         (partial_die_full_name): Likewise.
13625         (fixup_partial_die): Change it to partial_die_info::fixup.
13626
13627 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13628
13629         * dwarf2read.c (read_partial_die): Update the declaration.
13630         (load_partial_dies): Caller update.
13631         (read_partial_die): Remove one argument abbrev_len.
13632
13633 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13634
13635         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13636         assignment operator.
13637         (load_partial_dies): Use ctor and copy ctor.
13638         (read_partial_die): Update.
13639         (dwarf2_cu::find_partial_die): Use ctor.
13640
13641 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13642
13643         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13644         (find_partial_die_in_comp_unit): Change it to
13645         dwarf2_cu::find_partial_die.
13646         (find_partial_die): Update.
13647
13648 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13649
13650         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13651         is NULL.
13652
13653 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13654
13655         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13656
13657 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13658
13659         * arch/amd64.h: Use common/tdesc.h.
13660         * arch/i386.c: Likewise.
13661         * arch/i386.h: Likewise.
13662         * arch/tic6x.c: Likewise.
13663         * arch/tdesc.h: Move file from here...
13664         * common/tdesc.h: ...to here.
13665         * features/aarch64-core.c: Regenerate.
13666         * features/aarch64-fpu.c: Regenerate.
13667         * features/i386/32bit-avx.c: Regenerate.
13668         * features/i386/32bit-avx512.c: Regenerate.
13669         * features/i386/32bit-core.c: Regenerate.
13670         * features/i386/32bit-linux.c: Regenerate.
13671         * features/i386/32bit-mpx.c: Regenerate.
13672         * features/i386/32bit-pkeys.c: Regenerate.
13673         * features/i386/32bit-sse.c: Regenerate.
13674         * features/i386/64bit-avx.c: Regenerate.
13675         * features/i386/64bit-avx512.c: Regenerate.
13676         * features/i386/64bit-core.c: Regenerate.
13677         * features/i386/64bit-linux.c: Regenerate.
13678         * features/i386/64bit-mpx.c: Regenerate.
13679         * features/i386/64bit-pkeys.c: Regenerate.
13680         * features/i386/64bit-segments.c: Regenerate.
13681         * features/i386/64bit-sse.c: Regenerate.
13682         * features/i386/x32-core.c: Regenerate.
13683         * features/tic6x-c6xp.c: Regenerate.
13684         * features/tic6x-core.c: Regenerate.
13685         * features/tic6x-gp.c: Regenerate.
13686         * target-descriptions.c: Use common/tdesc.h.
13687         * target-descriptions.h: Likewise.
13688
13689 2018-02-24  Tom Tromey  <tom@tromey.com>
13690
13691         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13692         (try_thread_db_load_from_dir, thread_db_load_search): Use
13693         std::string.
13694         (info_auto_load_libthread_db_compare): Return bool.  Change
13695         argument types.
13696         (info_auto_load_libthread_db): Use std::vector, std::string.
13697         Remove cleanups.
13698
13699 2018-02-24  Tom Tromey  <tom@tromey.com>
13700
13701         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13702         std::string.
13703         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13704         std::string*.
13705         * gdbarch.c: Rebuild.
13706         * gdbarch.h: Rebuild.
13707         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13708         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13709         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13710         std::string*.
13711
13712 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13713
13714         * gdbtypes.h (sect_offset): Change type to uint64_t.
13715         (sect_offset_str): New function.
13716         * dwarf2read.c (create_addrmap_from_aranges): Use
13717         sect_offset_str.
13718         (error_check_comp_unit_head): Likewise.
13719         (create_debug_type_hash_table): Likewise.
13720         (read_cutu_die_from_dwo): Likewise.
13721         (init_cutu_and_read_dies): Likewise.
13722         (init_cutu_and_read_dies_no_follow): Likewise.
13723         (process_psymtab_comp_unit_reader): Likewise.
13724         (partial_die_parent_scope): Likewise.
13725         (peek_die_abbrev): Likewise.
13726         (process_queue): Likewise.
13727         (dwarf2_physname): Likewise.
13728         (read_namespace_alias): Likewise.
13729         (read_import_statement): Likewise.
13730         (create_dwo_cu_reader): Likewise.
13731         (create_cus_hash_table): Likewise.
13732         (lookup_dwo_cutu): Likewise.
13733         (inherit_abstract_dies): Likewise.
13734         (read_func_scope): Likewise.
13735         (read_call_site_scope): Likewise.
13736         (dwarf2_add_member_fn): Likewise.
13737         (read_common_block): Likewise.
13738         (read_module_type): Likewise.
13739         (read_typedef): Likewise.
13740         (read_subrange_type): Likewise.
13741         (load_partial_dies): Likewise.
13742         (read_partial_die): Likewise.
13743         (find_partial_die): Likewise.
13744         (read_str_index): Likewise.
13745         (dwarf2_string_attr): Likewise.
13746         (build_error_marker_type): Likewise.
13747         (lookup_die_type): Likewise.
13748         (dump_die_shallow): Likewise.
13749         (follow_die_ref): Likewise.
13750         (dwarf2_fetch_die_loc_sect_off): Likewise.
13751         (dwarf2_fetch_constant_bytes): Likewise.
13752         (follow_die_sig): Likewise.
13753         (get_signatured_type): Likewise.
13754         (get_DW_AT_signature_type): Likewise.
13755         (dwarf2_find_containing_comp_unit): Likewise.
13756         (set_die_type): Likewise.
13757
13758 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13759
13760         * arch/aarch64.c: Include "common-defs.h".
13761         * arch/amd64.c: Likewise.
13762         * arch/i386.c: Likewise.
13763
13764 2018-02-21  Tom Tromey  <tom@tromey.com>
13765
13766         * value.h: (extract_field_op): Update.
13767         * eval.c (extract_field_op): Return a const char *.
13768         * expression.h (parse_expression_for_completion): Update.
13769         * completer.c (complete_expression): Update.
13770         (add_struct_fields): Make fieldname const.
13771         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13772         (mark_completion_tag, parse_exp_in_context_1): Update.
13773         (parse_expression_for_completion): Change "name" to
13774         unique_xmalloc_ptr*.
13775
13776 2018-02-21  Tom Tromey  <tom@tromey.com>
13777
13778         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13779
13780 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13781
13782         * avr-tdep.c (avr_read_pc): Change parameter type to
13783         readable_regcache.
13784         * gdbarch.sh (read_pc): Likewise.
13785         * gdbarch.c: Re-generated.
13786         * gdbarch.h: Re-generated.
13787         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13788         readable_regcache.
13789         * ia64-tdep.c (ia64_read_pc): Likewise.
13790         * mips-tdep.c (mips_read_pc): Likewise.
13791         * spu-tdep.c (spu_read_pc): Likewise.
13792
13793 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13794
13795         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13796         * regcache-dump.c: New file.
13797         * regcache.c: Move register_dump to regcache-dump.c.
13798         (maintenance_print_registers): Likewise.
13799         (maintenance_print_raw_registers): Likewise.
13800         (maintenance_print_cooked_registers): Likewise.
13801         (maintenance_print_register_groups): Likewise.
13802         (maintenance_print_remote_registers): Likewise.
13803         (_initialize_regcache): Likewise.
13804         * regcache.h (register_dump): Moved from regcache.c.
13805
13806 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13807
13808         * regcache.c (regcache::regcache): Update.
13809         (regcache::invalidate): Move it to detached_regcache::invalidate.
13810         (get_thread_arch_aspace_regcache): Update.
13811         (regcache::raw_update): Update.
13812         (regcache::cooked_read): Remove some code.
13813         (regcache::cooked_read_value): Likewise.
13814         (regcache::raw_write): Remove assert on m_readonly_p.
13815         (regcache::raw_supply_integer): Move it to
13816         detached_regcache::raw_supply_integer.
13817         (regcache::raw_supply_zeroed): Likewise.
13818         * regcache.h (detached_regcache) <raw_supply_integer>: New
13819         declaration.
13820         <raw_supply_zeroed, invalidate>: Likewise.
13821         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13822         <invalidate>: Likewise.
13823         <m_readonly_p>: Removed.
13824
13825 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13826
13827         * infcmd.c (get_return_value): Let stop_regs point to
13828         get_current_regcache.
13829         * regcache.c (regcache::regcache): Remove.
13830         (register_dump_reg_buffer): New class.
13831         (regcache_print): Adjust.
13832         * regcache.h (regcache): Remove constructors.
13833
13834 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13835
13836         * regcache.c (class register_dump): New class.
13837         (register_dump_regcache, register_dump_none): New class.
13838         (register_dump_remote, register_dump_groups): New class.
13839         (regcache_print): Update.
13840         * regcache.h (regcache_dump_what): Move it to regcache.c.
13841         (regcache) <dump>: Remove.
13842
13843 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13844
13845         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13846          reg_buffer_rw *.
13847         (jit_unwind_reg_set_impl): Call raw_supply.
13848         (jit_frame_sniffer): Use reg_buffer_rw.
13849         * record-full.c (record_full_core_regbuf): Change its type.
13850         (record_full_core_open_1): Use reg_buffer_rw.
13851         (record_full_close): Likewise.
13852         (record_full_core_fetch_registers): Use regcache->raw_supply.
13853         (record_full_core_store_registers): Likewise.
13854         * regcache.c (regcache::get_register_status): Move it to
13855         reg_buffer.
13856         (regcache_raw_set_cached_value): Remove.
13857         (regcache::raw_set_cached_value): Remove.
13858         (regcache::raw_write): Call raw_supply.
13859         (regcache::raw_supply): Move it to reg_buffer_rw.
13860         * regcache.h (regcache_raw_set_cached_value): Remove.
13861         (reg_buffer_rw): New class.
13862
13863 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13864
13865         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13866         readonly_detached_regcache.
13867         (dummy_frame_prev_register): Use regcache->cooked_read.
13868         * frame.c (frame_save_as_regcache): Change return type.
13869         (frame_pop): Update.
13870         * frame.h (frame_save_as_regcache): Update declaration.
13871         * inferior.h (get_infcall_suspend_state_regcache): Update
13872         declaration.
13873         * infrun.c (infcall_suspend_state) <registers>: use
13874         readonly_detached_regcache.
13875         (save_infcall_suspend_state): Don't use regcache_dup.
13876         (get_infcall_suspend_state_regcache): Change return type.
13877         * linux-fork.c (struct fork_info) <savedregs>: Change to
13878         readonly_detached_regcache.
13879         <pc>: New field.
13880         (fork_save_infrun_state): Don't use regcache_dup.
13881         (info_checkpoints_command): Adjust.
13882         * mi/mi-main.c (register_changed_p): Update declaration.
13883         (mi_cmd_data_list_changed_registers): Use
13884         readonly_detached_regcache.
13885         (register_changed_p): Change parameter type to
13886         readonly_detached_regcache.
13887         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13888         readonly_detached_regcache.
13889         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13890         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13891         New.
13892         (regcache::save): Move it to reg_buffer.
13893         (regcache::restore): Change parameter type.
13894         (regcache_dup): Remove.
13895         * regcache.h (reg_buffer) <save>: New method.
13896         (readonly_detached_regcache): New class.
13897         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13898         readonly_detached_regcache.
13899         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13900
13901 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13902
13903         * frame.c (frame_save_as_regcache): Use regcache method save.
13904         (frame_pop): Use regcache method restore.
13905         * infrun.c (restore_infcall_suspend_state): Likewise.
13906         * linux-fork.c (fork_load_infrun_state): Likewise.
13907         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13908         save.
13909         * regcache.c (regcache_save): Remove.
13910         (regcache::restore): More asserts.
13911         (regcache_cpy): Remove.
13912         * regcache.h (regcache_save): Remove the declaration.
13913         (regcache::restore): Move from private to public.
13914         Remove the friend declaration of regcache_cpy.
13915         (regcache_cpy): Remove declaration.
13916
13917 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13918
13919         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13920         parameter type to 'readable_regcache *'.
13921         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13922         * arm-tdep.c (arm_neon_quad_read): Likewise.
13923         (arm_pseudo_read): Likewise.
13924         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13925         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13926         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13927         * gdbarch.c: Re-generated.
13928         * gdbarch.h: Re-generated.
13929         * gdbarch.sh (pseudo_register_read): Change parameter type to
13930         'readable_regcache *'.
13931         (pseudo_register_read_value): Likewise.
13932         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13933         (h8300_pseudo_register_read): Likewise.
13934         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13935         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13936         (i386_pseudo_register_read_into_value): Likewise.
13937         (i386_pseudo_register_read_value): Likewise.
13938         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13939         declaration.
13940         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13941         * m32c-tdep.c (m32c_raw_read): Likewise.
13942         (m32c_read_flg): Likewise.
13943         (m32c_banked_register): Likewise.
13944         (m32c_banked_read): Likewise.
13945         (m32c_sb_read): Likewise.
13946         (m32c_part_read): Likewise.
13947         (m32c_cat_read): Likewise.
13948         (m32c_r3r2r1r0_read): Likewise.
13949         (m32c_pseudo_register_read): Likewise.
13950         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13951         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13952         (mep_pseudo_cr64_read): Likewise.
13953         (mep_pseudo_register_read): Likewise.
13954         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13955         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13956         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13957         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13958         (regcache::cooked_read): Likewise.
13959         (regcache::cooked_read_value): Likewise.
13960         (regcache_cooked_read_signed):
13961         (regcache::cooked_read): Likewise.
13962         * regcache.h (readable_regcache): New class.
13963         (regcache): Inherit readable_regcache.  Move some methods to
13964         readable_regcache.
13965         * rl78-tdep.c (rl78_pseudo_register_read): Change
13966         parameter type to 'readable_regcache *'.
13967         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13968         (e500_pseudo_register_read): Change parameter type to
13969         'readable_regcache *'.
13970         (dfp_pseudo_register_read): Likewise.
13971         (vsx_pseudo_register_read): Likewise.
13972         (efpr_pseudo_register_read): Likewise.
13973         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13974         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13975         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13976         (sh64_pseudo_register_read): Likewise.
13977         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13978         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13979         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13980         (spu_pseudo_register_read): Likewise.
13981         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13982         (xtensa_pseudo_register_read): Likewise.
13983
13984 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13985
13986         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13987         (regcache::arch): Move it to reg_buffer::arch.
13988         (regcache::register_buffer): Likewise.
13989         (regcache::assert_regnum): Likewise.
13990         (regcache::num_raw_registers): Likewise.
13991         * regcache.h (reg_buffer): New class.
13992         (regcache): Inherit reg_buffer.
13993
13994 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13995
13996         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13997         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13998
13999 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14000
14001         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14002
14003 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14004
14005         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14006         (SFILES): Remove common/*.c files.
14007         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14008         * common/common.host: Add common reference.
14009         * configure.ac: Likewise.
14010         * configure: Regenerate.
14011
14012 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14013
14014         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14015         (block_initialize_namespace): Use new.
14016         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14017         (dwarf2_free_objfile): Use delete.
14018         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14019         (copy_type_recursive): Use new.
14020         * gdb_obstack.h (allocate_on_obstack): New.
14021
14022 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14023
14024         PR gdb/22849
14025         * inferior.c (exit_inferior_1): Reset inf->control.
14026
14027 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14028
14029         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14030         declaration.
14031
14032 2018-02-14  Pedro Alves  <palves@redhat.com>
14033
14034         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14035         frame_cleanup_after_sniffer on exception.
14036
14037 2018-02-14  Tom Tromey  <tom@tromey.com>
14038
14039         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14040         const.
14041         (solib_bfd_open): Make pathname const.
14042         * solib.c (solib_bfd_open): Make pathname const.
14043         * solib-spu.c (spu_bfd_fopen): Make name const.
14044         (spu_bfd_open): Make pathname const.
14045         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14046         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14047
14048 2018-02-14  Tom Tromey  <tom@tromey.com>
14049
14050         * symfile.c (symfile_bfd_open): Update.
14051         * source.h (openp, source_full_path_of, find_and_open_source):
14052         Change argument type to unique_xmalloc_ptr.
14053         * source.c (openp): Take a unique_xmalloc_ptr.
14054         (source_full_path_of, find_and_open_source): Likewise.
14055         (open_source_file, symtab_to_fullname): Update.
14056         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14057         unique_xmalloc_ptr.
14058         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14059         (exec_file_find): Update.
14060         * psymtab.c (psymtab_to_fullname): Update.
14061         * nto-tdep.h (nto_find_and_open_solib): Update.
14062         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14063         unique_xmalloc_ptr.
14064         * exec.c (exec_file_attach): Update.
14065         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14066         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14067
14068 2018-02-14  Tom Tromey  <tom@tromey.com>
14069
14070         * solib.c: Include source.h.
14071         * nto-tdep.c: Include source.h.
14072         * mi/mi-cmd-env.c: Include source.h.
14073         * infcmd.c: Include source.h.
14074         * exec.c: Include source.h.
14075         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14076         (add_path, directory_switch, source_path, init_source_path): Move
14077         declarations...
14078         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14079         (add_path, directory_switch, source_path, init_source_path):
14080         ...here.
14081
14082 2018-02-14  Tom Tromey  <tom@tromey.com>
14083
14084         * solist.h (exec_file_find, solib_find): Return
14085         unique_xmalloc_ptr.
14086         (solib_bfd_fopen): Take a const char *.
14087         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14088         (exec_file_find, solib_find): Likewise.
14089         (solib_bfd_fopen): Do not take ownership of "pathname".
14090         (solib_bfd_open): Use unique_xmalloc_ptr.
14091         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14092         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14093         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14094         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14095
14096 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14097
14098         * ada-lang.c (name_match_type_from_name): Remove reference to
14099         ada_name_for_lookup in function's documentation.
14100         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14101
14102 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14103
14104         * defs.h (enum openp_flags): New enum.
14105         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14106         Move to enum openp_flags.
14107         (openp_flags): New enum flags.
14108         (openp): Change parameter type to openp_flags.
14109         * source.c (openp): Change parameter type to openp_flags.
14110         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14111         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14112
14113 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14114
14115         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14116         per-command.
14117
14118 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14119
14120         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14121         into...
14122         (class dwarf2_queue_guard): ...the destructor of this new class.
14123         (dw2_do_instantiate_symtab): Create instance of the new class
14124         dwarf2_queue_guard, remove cleanup.
14125
14126 2018-02-09  Tom Tromey  <tom@tromey.com>
14127
14128         * source.c (find_source_lines): Don't reference past the end of
14129         the vector.
14130
14131 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14132
14133         * remote.c (remote_btrace_maybe_reopen): Change error message.
14134         * btrace.c (btrace_enable): Likewise.
14135         (parse_xml_btrace): Likewise.
14136         (parse_xml_btrace_conf): Likewise.
14137
14138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14139
14140         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14141         (linux_enable_pt, linux_enable_bts): Call
14142         diagnose_perf_event_open_fail.
14143
14144 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14145
14146         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14147         Remove parameter and change return type.  Update callers.  Move it.
14148         (linux_enable_bts, linux_enable_pt): Improve error message.
14149         (linux_enable_pt): Remove zero buffer size check.
14150         (linux_enable_btrace): Improve error messages.  Remove NULL return
14151         check.
14152
14153 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14154
14155         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14156         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14157         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14158         (linux_supports_pt, linux_supports_btrace): Remove.
14159         (linux_enable_bts): Call cpu_supports_bts.
14160         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14161         * remote.c (remote_supports_btrace): Remove.
14162         (init_remote_ops): Remove remote_supports_btrace.
14163         * target-delegates.c: Regenerated.
14164         * target.c (target_supports_btrace): Remove.
14165         * target.h (target_ops) <to_supports_btrace>: Remove
14166         (target_supports_btrace): Remove.
14167         * x86-linux-nat.c (x86_linux_create_target): Remove
14168         linux_supports_btrace.
14169
14170 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14171
14172         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14173         btrace failed.
14174         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14175         exception and use message in own exception.
14176
14177 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14178
14179         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14180         (perf_event_pt_event_type): Use gdb_file_up.
14181         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14182         scoped_fd, and scoped_mmap.
14183
14184 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14185
14186         * common/scoped_mmap.h: New.
14187         * unittests/scoped_mmap-selftest.c: New.
14188         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14189         unittests/scoped_mmap-selftest.c.
14190
14191 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14192
14193         * common/scoped_fd.h: New.
14194         * unittests/scoped_fd-selftest.c: New.
14195         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14196         unittests/scoped_fd-selftest.c.
14197
14198 2018-02-09  Tom Tromey  <tom@tromey.com>
14199
14200         * auto-load.c (auto_load_section_scripts): Use
14201         gdb::unique_xmalloc_ptr.
14202
14203 2018-02-09  Tom Tromey  <tom@tromey.com>
14204
14205         * auto-load.c (execute_script_contents): Use std::string.
14206
14207 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14208
14209         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14210         Python function, rather than a new command.
14211
14212 2018-02-08  Tom Tromey  <tom@tromey.com>
14213
14214         * solib.c (solib_find_1): Use std::string.
14215         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14216
14217 2018-02-08  Tom Tromey  <tom@tromey.com>
14218
14219         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14220
14221 2018-02-08  Tom Tromey  <tom@tromey.com>
14222
14223         * source.c (find_source_lines): Use gdb::def_vector.
14224
14225 2018-02-08  Tom Tromey  <tom@tromey.com>
14226
14227         * macrocmd.c (struct temporary_macro_definition): New.
14228         (macro_define_command): Use temporary_macro_definition.  Remove
14229         cleanups.
14230         (free_macro_definition_ptr): Remove.
14231
14232 2018-02-08  Tom Tromey  <tom@tromey.com>
14233
14234         * macroexp.c (maybe_expand): Use std::string.
14235
14236 2018-02-08  Tom Tromey  <tom@tromey.com>
14237
14238         * macroexp.c (struct macro_buffer): Add initializers for some
14239         members.
14240         (init_buffer, init_shared_buffer, free_buffer)
14241         (free_buffer_return_text): Remove.
14242         (macro_buffer): New constructors.
14243         (~macro_buffer): New destructor.
14244         (macro_buffer::set_shared): New method.
14245         (macro_buffer::resize_buffer, macro_buffer::appendc)
14246         (macro_buffer::appendmem): Now methods, not free functions.
14247         (set_token, append_tokens_without_splicing, stringify)
14248         (macro_stringify): Update.
14249         (gather_arguments): Change return type.  Remove argc_p argument,
14250         add args_ptr argument.  Use std::vector.
14251         (substitute_args): Remove argc argument.  Accept std::vector.
14252         (expand): Update.  Use std::vector.
14253         (scan, macro_expand, macro_expand_next): Update.
14254
14255 2018-02-08  Tom Tromey  <tom@tromey.com>
14256
14257         * symtab.c (default_collect_symbol_completion_matches_break_on):
14258         Use unique_xmalloc_ptr.
14259         * macroscope.h: (sal_macro_scope, user_macro_scope)
14260         (default_macro_scope): Return unique_xmalloc_ptr.
14261         * macroscope.c (sal_macro_scope, user_macro_scope)
14262         (default_macro_scope): Return unique_xmalloc_ptr.
14263         * macroexp.h (macro_expand, macro_expand_once): Return
14264         unique_xmalloc_ptr.
14265         * macroexp.c (macro_expand, macro_expand_once): Return
14266         unique_xmalloc_ptr.
14267         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14268         (info_macro_command, info_macros_command): Use
14269         unique_xmalloc_ptr.
14270         * compile/compile-c-support.c (write_macro_definitions): Use
14271         unique_xmalloc_ptr.
14272         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14273
14274 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14275
14276         * value.c (value_static_field): Assign field type instead of
14277         containing type when returning an optimized out value.
14278
14279 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14280
14281         * ft32-tdep.c (ft32_read_pc): Remove.
14282         (ft32_write_pc): Remove.
14283         (ft32_gdbarch_init): Update.
14284         * m32r-tdep.c (m32r_read_pc): Remove.
14285         (m32r_gdbarch_init): Update.
14286         * mep-tdep.c (mep_read_pc): Remove.
14287         (mep_gdbarch_init): Update.
14288         * microblaze-tdep.c (microblaze_write_pc): Remove.
14289         (microblaze_gdbarch_init): Update.
14290         * mn10300-tdep.c (mn10300_read_pc): Remove.
14291         (mn10300_write_pc): Remove.
14292         (mn10300_gdbarch_init): Update.
14293         * moxie-tdep.c (moxie_read_pc): Remove.
14294         (moxie_write_pc): Remove.
14295         (moxie_gdbarch_init): Update.
14296
14297 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14298
14299         * expprint.c (print_subexp_standard): Handle
14300         OP_F77_UNDETERMINED_ARGLIST.
14301         (dump_subexp_body_standard): Likewise.
14302
14303 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14304
14305         * target-descriptions.c (tdesc_element_visitor) Add empty
14306         implementations.
14307         (tdesc_type): Move make_gdb_type from here.
14308         (tdesc_type_builtin): Likewise.
14309         (tdesc_type_vector): Likewise.
14310         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14311         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14312         (make_gdb_type_union): Likewise.
14313         (make_gdb_type_flags): Likewise.
14314         (make_gdb_type_enum): Likewise.
14315         (make_gdb_type): New function.
14316         (tdesc_register_type): Use static make_gdb_type.
14317
14318 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14319
14320         * infcmd.c (default_print_one_register_info): Align natural-format
14321         column values consistently one under another.
14322         (pad_to_column): New function.
14323
14324 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14325
14326         * dwarf2read.c (dwarf2_physname): Move commment.
14327
14328 2018-02-01  Leszek Swirski  <leszeks@google.com>
14329
14330         * varobj.c (varobj_formatted_print_options): Allow recursive
14331         pretty printing if pretty printing is enabled.
14332
14333 2018-02-01  Leszek Swirski  <leszeks@google.com>
14334
14335         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14336         names after a structop as a filename.
14337
14338 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14339
14340         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14341         (arm_record_coproc_data_proc): Likewise.
14342
14343 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14344
14345         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14346
14347 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14348
14349         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14350         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14351
14352 2018-01-31  Pedro Alves  <palves@redhat.com>
14353
14354         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14355         * inflow.c (child_terminal_save_inferior): Wrap reference to
14356         tcgetpgrp in HAVE_TERMIOS_H.
14357         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14358         _WIN32.
14359         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14360         always iterate over all inferiors.
14361         (gdbsim_cntrl_c): Adjust.
14362         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14363
14364 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14365
14366         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14367         index type is objfile-owned if the element type is as well.
14368
14369 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14370
14371         GDB 8.1 released.
14372
14373 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14374
14375         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14376         "features/s390x-linux64.c".
14377         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14378         s390_linux32 and s390x_linux64.
14379         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14380         default tdesc.
14381         * s390-tdep.c: Include "features/s390-linux32.c" and
14382         "features/s390x-linux64.c".
14383         (s390_tdesc_valid): Add check for tdesc_has_registers.
14384         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14385         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14386         tdesc_s390x_linux64.
14387         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14388         tdesc_s390x_linux64 to...
14389         * s390-tdep.h: ...here.
14390
14391 2018-01-30  Pedro Alves  <palves@redhat.com>
14392
14393         PR gdb/13211
14394         * config.in, configure: Regenerate.
14395         * configure.ac: Check for getpgid.
14396         * go32-nat.c (go32_pass_ctrlc): New.
14397         (go32_target): Install it.
14398         * inf-child.c (inf_child_target): Install
14399         child_terminal_save_inferior, child_pass_ctrlc and
14400         child_interrupt.
14401         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14402         (inf_ptrace_target): No longer install it.
14403         * infcmd.c (interrupt_target_1): Adjust.
14404         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14405         (child_interrupt): Declare.
14406         (inferior::terminal_state): New.
14407         * inflow.c (struct terminal_info): Update comments.
14408         (inferior_process_group): Delete.
14409         (terminal_is_ours): Delete.
14410         (gdb_tty_state): New.
14411         (child_terminal_init): Adjust.
14412         (is_gdb_terminal, sharing_input_terminal_1)
14413         (sharing_input_terminal): New functions.
14414         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14415         Set the process's actual process group in the foreground if
14416         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14417         mark terminal as the inferior's if not sharing GDB's terminal.
14418         Don't check attach_flag.
14419         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14420         pass down a target_terminal_state.
14421         (child_terminal_save_inferior): New, factored out from ...
14422         (child_terminal_ours_1): ... this.  Handle
14423         target_terminal_state::is_ours_for_output.
14424         (child_interrupt, child_pass_ctrlc): New.
14425         (inflow_inferior_exit): Clear the inferior's terminal_state.
14426         (copy_terminal_info): Copy the inferior's terminal state.
14427         (_initialize_inflow): Remove reference to terminal_is_ours.
14428         * inflow.h (inferior_process_group): Delete.
14429         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14430         * procfs.c (procfs_target): Don't install procfs_interrupt.
14431         (procfs_interrupt): Delete.
14432         * remote.c (remote_serial_quit_handler): Adjust.
14433         (remote_interrupt): Remove ptid parameter.  Adjust.
14434         * target-delegates.c: Regenerate.
14435         * target.c: Include "terminal.h".
14436         (target_terminal::terminal_state): Rename to ...
14437         (target_terminal::m_terminal_state): ... this.
14438         (target_terminal::init): Adjust.
14439         (target_terminal::inferior): Adjust to per-inferior
14440         terminal_state.
14441         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14442         (target_terminal::ours, target_terminal::ours_for_output): Use
14443         target_terminal_is_ours_kind.
14444         (target_interrupt): Remove ptid parameter.  Adjust.
14445         (default_target_pass_ctrlc): Adjust.
14446         * target.h (target_ops::to_terminal_save_inferior): New field.
14447         (target_ops::to_interrupt): Remove ptid_t parameter.
14448         (target_interrupt): Remove ptid_t parameter.  Update comment.
14449         (target_pass_ctrlc): Update comment.
14450         * target/target.h (target_terminal_state): New scoped enum,
14451         factored out of ...
14452         (target_terminal::terminal_state): ... here.
14453         (target_terminal::inferior): Update comments.
14454         (target_terminal::restore_inferior): New.
14455         (target_terminal::is_inferior, target_terminal::is_ours)
14456         (target_terminal::is_ours_for_output): Adjust.
14457         (target_terminal::scoped_restore_terminal_state): Adjust to
14458         rename, and call restore_inferior() instead of inferior().
14459         (target_terminal::scoped_restore_terminal_state::m_state): Change
14460         type.
14461         (target_terminal::terminal_state): Rename to ...
14462         (target_terminal::m_terminal_state): ... this and change type.
14463
14464 2018-01-30  Pedro Alves  <palves@redhat.com>
14465
14466         * linux-nat.c (wait_for_signal): New function.
14467         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14468         directly.
14469         (async_terminal_is_ours)
14470         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14471         (linux_nat_add_target): Don't override
14472         to_terminal_inferior/to_terminal_ours.
14473
14474 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14475
14476         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14477
14478 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14479
14480         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14481         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14482         dwarf2_per_objfile_free here.
14483         (dwarf2_per_objfile_free): Remove.
14484         (_initialize_dwarf2_read): Don't register
14485         dwarf2_per_objfile_free as a registry cleanup.
14486
14487 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14488
14489         Avoid compilation errors in MinGW native builds
14490
14491         The error is triggered by including python-internal.h, and the
14492         error message is:
14493
14494              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14495                       from build-gnulib/import/math.h:27,
14496                       from d:/usr/Python26/include/pyport.h:235,
14497                       from d:/usr/Python26/include/Python.h:58,
14498                       from python/python-internal.h:94,
14499                       from python/py-arch.c:24:
14500              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14501         using ::hypot;
14502                 ^~~~~
14503
14504         This happens because Python headers define 'hypot' to expand t
14505         '_hypot' in the Windows builds.
14506         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14507         'hypoth'.  This avoids a compilation error.
14508
14509 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14510
14511         * MAINTAINERS (Write After Approval): Fix ordering.
14512
14513 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14514
14515         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14516
14517 2018-01-26  Alan Modra  <amodra@gmail.com>
14518
14519         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14520         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14521         Remove nop.  Make const.  Comment.
14522         (powerpc32_plt_stub_so_2): New.
14523         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14524         Correct count.  Update uses.
14525         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14526         Move common code reading PLT entry word.  Correct
14527         powerpc32_plt_stub PLT address calculation.
14528         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14529         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14530         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14531         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14532         (ppc64_standard_linkage8): Likewise.
14533         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14534         Correct insns description.
14535         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14536
14537 2018-01-24  Pedro Alves  <palves@redhat.com>
14538
14539         GCC PR libstdc++/83906
14540         * gdbtypes.c (operator==(const dynamic_prop &,
14541         const dynamic_prop &)): New.
14542         (operator==(const range_bounds &, const range_bounds &)): New.
14543         (check_types_equal): Use them instead of memcmp.
14544         * gdbtypes.h (operator==(const dynamic_prop &,
14545         const dynamic_prop &)): Declare.
14546         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14547         (operator==(const range_bounds &, const range_bounds &)): Declare.
14548         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14549
14550 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14551
14552         * s390-linux-tdep.c (s390_record_address_mask)
14553         (s390_record_calc_disp_common, s390_record_calc_disp)
14554         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14555         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14556         (s390_process_record): Move to s390-tdep.c.
14557         (s390_linux_init_abi_any): Adjust.
14558         * s390-tdep.c (s390_record_address_mask)
14559         (s390_record_calc_disp_common, s390_record_calc_disp)
14560         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14561         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14562         (s390_process_record): Moved from s390-linux-tdep.c
14563         (s390_gdbarch_init): Adjust.
14564
14565 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14566
14567         * s390-linux-nat.c (s390-tdep.h): New include.
14568         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14569         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14570         (ALLDEPFILES): Add s390-tdep.c.
14571         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14572         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14573         * s390-tdep.h: ...this.  New file.
14574         * s390-linux-tdep.c (s390-tdep.h): New include.
14575         (_initialize_s390_tdep): Rename to...
14576         (_initialize_s390_linux_tdep): ...this and adjust.
14577         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14578         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14579         s390-tdep.h.
14580         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14581         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14582         (s390_is_partial_instruction, s390_software_single_step)
14583         (is_non_branch_ril, s390_displaced_step_copy_insn)
14584         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14585         (s390_prologue_data, s390_addr, s390_store, s390_load)
14586         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14587         (s390_register_call_saved, s390_guess_tracepoint_registers)
14588         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14589         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14590         (s390_pseudo_register_name, s390_pseudo_register_type)
14591         (s390_pseudo_register_read, s390_pseudo_register_write)
14592         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14593         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14594         (s390_addr_bits_remove, s390_address_class_type_flags)
14595         (s390_address_class_type_flags_to_name)
14596         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14597         (s390_function_arg_float, s390_function_arg_vector)
14598         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14599         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14600         (s390_frame_align, s390_register_return_value, s390_return_value)
14601         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14602         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14603         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14604         (s390_trad_frame_prev_register, s390_unwind_cache)
14605         (s390_prologue_frame_unwind_cache)
14606         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14607         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14608         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14609         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14610         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14611         (s390_frame_base_address, s390_local_base_address)
14612         (s390_frame_base, s390_gcc_target_options)
14613         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14614         (s390_validate_reg_range, s390_tdesc_valid)
14615         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14616         * s390-tdep.c: ...this.  New file.
14617
14618 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14619
14620         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14621         (s390_process_record, s390_gdbarch_tdep_alloc)
14622         (s390_linux_init_abi_any): Use/set new hook.
14623
14624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14625
14626         * s390-linux-tdep.c (osabi.h): New include.
14627         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14628         (s390_linux_init_abi_any): New functions.
14629         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14630
14631 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14632
14633         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14634         tdesc_has_registers check
14635
14636 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14637
14638         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14639         (s390_validate_reg_range): New macro.
14640         (s390_gdbarch_init): Adjust.
14641
14642 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14643
14644         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14645         (s390_gdbarch_tdep_alloc): Adjust.
14646         (s390_gdbarch_init): Adjust.
14647
14648 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14649
14650         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14651         <have_tdb>: Change type to bool.
14652         (s390_gdbarch_tdep_alloc): Adjust.
14653         (s390_gdbarch_init): Adjust.
14654
14655 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14656
14657         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14658         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14659         (s390_gdbarch_tdep_alloc): New function.
14660         (s390_gdbarch_init): Allocate tdep at start and use its fields
14661         instead of separate variables.
14662
14663 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14664
14665         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14666         when looking for cached gdbarch and add comment for remaining.
14667
14668 2018-01-22  Pedro Alves  <palves@redhat.com>
14669             Sergio Durigan Junior  <sergiodj@redhat.com>
14670
14671         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14672         case.
14673
14674 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14675
14676         * MAINTAINERS: Update my company e-mail address.
14677
14678 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14679
14680         * regcache.c (cooked_write_test): New function.
14681         (_initialize_regcache): Register the test.
14682
14683 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14684
14685         * ia64-tdep.c (ia64_pseudo_register_read): Call
14686         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14687         * m32c-tdep.c (m32c_cat_read): Likewise.
14688         (m32c_r3r2r1r0_read): Likewise.
14689         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14690         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14691
14692 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14693
14694         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14695         method raw_read instead of regcache_raw_read.
14696         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14697         * arm-tdep.c (arm_neon_quad_read): Likewise.
14698         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14699         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14700         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14701         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14702         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14703         (i386_pseudo_register_read_into_value): Likewise.
14704         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14705         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14706         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14707         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14708         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14709         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14710         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14711         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14712         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14713
14714 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14715
14716         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14717         * configure.tgt: Remove target mt.
14718         * mt-tdep.c: Remove.
14719         * regcache.c (cooked_read_test): Remove the check for mt.
14720
14721 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14722
14723         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14724         instead of gdbarch_pseudo_register_read_value.
14725
14726 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14727
14728         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14729         language is Ada.
14730
14731 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14732
14733         * linespec.c (create_sals_line_offset): Remove code that preserved
14734         the symtab_and_line's line number.
14735
14736 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14737
14738         * varobj.c (varobj_create): Don't set valid_block when creating a
14739         floating varobj.
14740
14741 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14742
14743         * varobj.c (varobj_create): Remove out of date comment.
14744
14745 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14746
14747         PR mi/20395
14748         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14749         updating innermost block.
14750         * parse.c (innermost_block_tracker::update): Take extra type
14751         parameter, and check types match before updating innermost block.
14752         (write_dollar_variable): Update innermost block for registers.
14753         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14754         (innermost_block_tracker::innermost_block_tracker): Initialise
14755         m_types member.
14756         (innermost_block_tracker::reset): Take type parameter.
14757         (innermost_block_tracker::update): Take type parameter, and pass
14758         type through as needed.
14759         (innermost_block_tracker::m_types): New member.
14760         * varobj.c (varobj_create): Pass type when reseting innermost
14761         block.
14762
14763 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14764
14765         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14766         * ada-lang.c (resolve_subexp): Likewise.
14767         * breakpoint.c (set_breakpoint_condition) Likewise.
14768         (watch_command_1) Likewise.
14769         * c-exp.y (variable): Likewise.
14770         * d-exp.y (PrimaryExpression): Likewise.
14771         * f-exp.y (variable): Likewise.
14772         * go-exp.y (variable): Likewise.
14773         * m2-exp.y (variable): Likewise.
14774         * objfiles.c (objfile::~objfile): Likewise.
14775         * p-exp.y (variable): Likewise.
14776         * parse.c (innermost_block): Change type.
14777         * parser-defs.h (class innermost_block_tracker): New.
14778         (innermost_block): Change to innermost_block_tracker.
14779         * printcmd.c (display_command): Switch to innermost_block API.
14780         (do_one_display): Likewise.
14781         * rust-exp.y (do_one_display): Likewise.
14782         * symfile.c (clear_symtab_users): Likewise.
14783         * varobj.c (varobj_create): Switch to innermost_block API, replace
14784         use of innermost_block with block stored on varobj object.
14785
14786 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14787
14788         * expression.h (innermost_block): Remove declaration.
14789         * varobj.c: Add 'parser-defs.h' include.
14790
14791 2018-01-19  Tom Tromey  <tom@tromey.com>
14792
14793         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14794         symbols in the static and global blocks.
14795
14796 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14797
14798         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14799         gdb_ptrace.h, and move including gdb_wait.h ...
14800         * nat/linux-ptrace.h: ... to here.
14801
14802 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14803
14804         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14805         inf_ptrace_detach_success.
14806         (inf_ptrace_detach_success): Add inferior parameter, use it
14807         instead of inferior_ptid, pass it to detach_inferior.
14808         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14809         parameter.
14810         * inferior.c (detach_inferior): Add overload that takes an
14811         inferior object.
14812         * inferior.h (detach_inferior): Likewise.
14813         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14814         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14815         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14816
14817 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14818
14819         * target.h (struct target_ops) <to_detach>: Add inferior
14820         parameter.
14821         (target_detach): Likewise.
14822         * target.c (dispose_inferior): Pass inferior down.
14823         (target_detach): Pass inferior down.  Assert that it is equal to
14824         the current inferior.
14825         * aix-thread.c (aix_thread_detach): Pass inferior down.
14826         * corefile.c (core_file_command): Pass current_inferior() down.
14827         * corelow.c (core_detach): Add inferior parameter.
14828         * darwin-nat.c (darwin_detach): Likewise.
14829         * gnu-nat.c (gnu_detach): Likewise.
14830         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14831         * infcmd.c (detach_command): Pass current_inferior() down to
14832         target_detach.
14833         * infrun.c (follow_fork_inferior): Pass parent_inf to
14834         target_detach.
14835         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14836         target_detach.
14837         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14838         * linux-thread-db.c (thread_db_detach): Likewise.
14839         * nto-procfs.c (procfs_detach): Likewise.
14840         * procfs.c (procfs_detach): Likewise.
14841         * record.c (record_detach): Likewise.
14842         * record.h (struct inferior): Forward-declare.
14843         (record_detach): Add inferior parameter.
14844         * remote-sim.c (gdbsim_detach): Likewise.
14845         * remote.c (remote_detach_1): Likewise.
14846         (remote_detach): Likewise.
14847         (extended_remote_detach): Likewise.
14848         * sol-thread.c (sol_thread_detach): Likewise.
14849         * target-debug.h (target_debug_print_inferior_p): New macro.
14850         * target-delegates.c: Re-generate.
14851         * top.c (kill_or_detach): Pass inferior down to target_detach.
14852         * windows-nat.c (windows_detach): Add inferior parameter.
14853
14854 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14855
14856         * target.h (struct target_ops) <to_detach>: Remove args
14857         parameter.
14858         (target_detach): Likewise.
14859         * target.c (dispose_inferior): Adjust.
14860         (target_detach): Remove args parameter, adjust.
14861         * aix-thread.c (aix_thread_detach): Adjust.
14862         * corefile.c (core_file_command): Adjust.
14863         * corelow.c (core_detach): Adjust.
14864         * darwin-nat.c (darwin_detach): Adjust.
14865         * gnu-nat.c (gnu_detach): Adjust.
14866         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14867         * infcmd.c (detach_command): Adjust
14868         * infrun.c (follow_fork_inferior): Adjust.
14869         (handle_vfork_child_exec_or_exit): Adjust.
14870         * linux-fork.c (linux_fork_detach): Remove args parameter.
14871         * linux-fork.h (linux_fork_detach): Likewise.
14872         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14873         * linux-thread-db.c (thread_db_detach): Likewise.
14874         * nto-procfs.c (procfs_detach): Likewise.
14875         * procfs.c (procfs_detach): Likewise.
14876         (do_detach): Remove signo parameter.
14877         * record.c (record_detach): Remove args parameter.
14878         * record.h (record_detach): Likewise.
14879         * remote-sim.c (gdbsim_detach): Likewise.
14880         * remote.c (remote_detach_1): Likewise.
14881         (remote_detach): Likewise.
14882         (extended_remote_detach): Likewise.
14883         * sol-thread.c (sol_thread_detach): Likewise.
14884         * target-delegates.c: Re-generate.
14885         * top.c (struct qt_args) <args>: Remove field.
14886         (kill_or_detach): Don't pass args.
14887         (quit_force): Don't set args.
14888         * windows-nat.c (windows_detach): Remove args parameter.
14889
14890 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14891
14892         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14893         (arm_linux_init_abi): Install it.
14894
14895 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14896
14897         * osabi.c (gdb_osabi_names): Extend the regexp for
14898         arm-linux-gnueabihf.
14899
14900 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14901
14902         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14903         m_abbrevs.
14904         (abbrev_table::add_abbrev): Update.
14905         (abbrev_table::lookup_abbrev): Update.
14906
14907 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14908
14909         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14910
14911 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14912
14913         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14914         to "std::string".
14915
14916 2018-01-17  Tom Tromey  <tom@tromey.com>
14917
14918         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14919
14920 2018-01-17  Tom Tromey  <tom@tromey.com>
14921
14922         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14923         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14924         (create_array_type_with_stride): Update.
14925         * dwarf2read.c (set_die_type): Update.
14926
14927 2018-01-17  Tom Tromey  <tom@tromey.com>
14928
14929         * dwarf2read.c (delayed_method_info): Remove typedef.
14930         (dwarf2_cu::method_info): Now a std::vector.
14931         (add_to_method_list): Update.
14932         (free_delayed_list): Remove.
14933         (compute_delayed_physnames): Update.
14934         (process_full_comp_unit, process_full_type_unit): Clear the method
14935         list.  Remove cleanups.
14936         (psymtab_include_file_name): Add name_holder parameter.  Use
14937         unique_xmalloc_ptr.
14938         (dwarf_decode_lines): Update.
14939
14940 2018-01-17  Tom Tromey  <tom@tromey.com>
14941             Simon Marchi  <simon.marchi@ericsson.com>
14942
14943         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14944         (dwarf2_per_objfile::free_cached_comp_units)
14945         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14946         (init_cutu_and_read_dies_no_follow): Update.
14947         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14948         (dwarf2_cu::~dwarf2_cu): New.
14949         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14950         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14951
14952 2018-01-17  Tom Tromey  <tom@tromey.com>
14953             Simon Marchi  <simon.marchi@ericsson.com>
14954
14955         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14956         (struct die_reader_specs) <abbrev_table>: New member.
14957         (struct abbrev_table): Add constructor.
14958         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14959         <abbrev_obstack>: Now an auto_obstack.
14960         (abbrev_table_up): New typedef.
14961         (init_cu_die_reader): Add abbrev_table parameter.
14962         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14963         Add result_dwo_abbrev_table.
14964         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14965         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14966         Update.
14967         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14968         parameter.
14969         (skip_children): Update.
14970         (abbrev_table::alloc_abbrev): Rename from
14971         abbrev_table_alloc_abbrev.
14972         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14973         (abbrev_table::lookup_abbrev): Rename from
14974         abbrev_table_lookup_abbrev.
14975         (abbrev_table_read_table): Return abbrev_table_up.
14976         (abbrev_table_free, abbrev_table_free_cleanup)
14977         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14978         (load_partial_dies): Update.
14979
14980 2018-01-17  Tom Tromey  <tom@tromey.com>
14981
14982         * dwarf2read.c (dwarf2_compute_name): Update comment.
14983         (read_func_scope, read_variable): Update.
14984         (new_symbol): Remove.
14985         (new_symbol_full): Rename to new_symbol.
14986
14987 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14988
14989         PR gdb/16577
14990         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14991         a warning instead of throwing an error, set section size to 0 and return
14992         NULL.
14993         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14994
14995 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14996
14997         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14998         std::string.
14999         (linux_ptrace_attach_fail_reason_string): Likewise.
15000         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15001         Likewise.
15002         (linux_ptrace_attach_fail_reason_string): Likewise.
15003         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15004
15005 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15006
15007         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15008
15009 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15010
15011         PR gdb/21559
15012         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15013         checking for fs_base/gs_base fields in struct user_regs_struct.
15014         * configure: Regenerate.
15015
15016 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15017
15018         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15019         function.
15020         (aarch64_linux_init_abi): Install it to gdbarch hook
15021         gcc_target_options.
15022
15023 2018-01-15  Pedro Alves  <palves@redhat.com>
15024
15025         * common/signals-state-save-restore.c
15026         (save_original_signals_state): Fix typos.
15027
15028 2017-01-12  Tom Tromey  <tom@tromey.com>
15029             Sergio Durigan Junior  <sergiodj@redhat.com>
15030
15031         * Makefile.in (install-only): Install gdb-add-index.
15032
15033 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15034
15035         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15036
15037 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15038
15039         * infrun.c (keep_going_pass_signal): Clear step-over info when
15040         insert_breakpoints fails.
15041
15042 2018-01-11  Pedro Alves  <palves@redhat.com>
15043
15044         PR gdb/22583
15045         * infrun.c (resume): Rename to ...
15046         (resume_1): ... this.
15047         (resume): Reimplement as wrapper around resume_1.
15048
15049 2018-01-11  Pedro Alves  <palves@redhat.com>
15050
15051         PR remote/22597
15052         * remote.c (remote_parse_stop_reply): Default to the last-set
15053         general thread instead of to 'magic_null_ptid'.
15054
15055 2018-01-10  Pedro Alves  <palves@redhat.com>
15056
15057         * language.h (language_get_symbol_name_matcher): Rename ...
15058         (get_symbol_name_matcher): ... this.
15059         * language.c (language_get_symbol_name_matcher): Ditto.
15060         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15061         callers adjusted.
15062
15063 2018-01-10  Pedro Alves  <palves@redhat.com>
15064
15065         PR gdb/22670
15066         * dwarf2read.c
15067         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15068         Adjust to use language_get_symbol_name_matcher instead of
15069         language_defn::la_get_symbol_name_matcher.
15070         * language.c (language_get_symbol_name_matcher): If in Ada mode
15071         and the lookup name is a verbatim match, return Ada's matcher.
15072         * language.h (language_get_symbol_name_matcher): Adjust comment.
15073         (ada_lookup_name_info::verbatim_p):: New method.
15074
15075 2018-01-10  Pedro Alves  <palves@redhat.com>
15076
15077         PR gdb/22670
15078         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15079         minsym's language is language_auto or language_cplus, pass down
15080         language_ada instead.
15081         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15082
15083 2018-01-10  Pedro Alves  <palves@redhat.com>
15084
15085         PR gdb/22670
15086         * minsyms.c (linkage_name_str): New function.
15087         (iterate_over_minimal_symbols): Use it.
15088
15089 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15090
15091         * NEWS: Document that 'info proc' now works on FreeBSD.
15092
15093 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15094
15095         * configure.ac: Check for kinfo_getfile in libutil.
15096         * configure: Regenerate.
15097         * config.in: Regenerate.
15098         * fbsd-nat.c: Include "fbsd-tdep.h".
15099         (fbsd_fetch_cmdline): New.
15100         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15101         rather than calling error.
15102         (fbsd_info_proc): New.
15103         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15104         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15105         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15106
15107 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15108
15109         * fbsd-nat.c (struct free_deleter): Remove.
15110         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15111
15112 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15113
15114         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15115         NULL for an empty pathname.
15116
15117 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15118
15119         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15120         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15121         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15122         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15123         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15124         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15125         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15126         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15127         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15128         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15129         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15130         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15131         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15132         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15133         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15134
15135 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15136
15137         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15138         (gnu_xfer_auxv): New function.
15139         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15140         TARGET_OBJECT_AUXV.
15141
15142 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15143             Simon Marchi  <simon.marchi@ericsson.com>
15144
15145         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15146         common/selftest.c.
15147         (COMMON_OBS): Remove selftest.o.
15148         * configure.ac: Append selftest-arch.c and common/selftest.c to
15149         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15150         * configure: Re-generated.
15151         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15152         GDB_SELF_TEST.
15153         (maintenance_info_selftests): Likewise.
15154
15155 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15156
15157         * ada-valprint.c (val_print_packed_array_elements): Use
15158         proper number of elements when printing an array indexed
15159         by an enumeration type.
15160
15161 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15162
15163         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15164         (dw2_get_file_names_reader): Adjust.
15165         (lookup_dwo_signatured_type): Adjust.
15166         (lookup_dwp_signatured_type): Adjust.
15167         (lookup_signatured_type): Adjust.
15168         (create_type_unit_group): Adjust.
15169         (get_type_unit_group): Adjust.
15170         (process_psymtab_comp_unit_reader): Adjust.
15171         (build_type_psymtabs_reader): Adjust.
15172         (scan_partial_symbols): Adjust.
15173         (add_partial_symbol): Adjust.
15174         (add_partial_subprogram): Adjust.
15175         (peek_die_abbrev): Adjust.
15176         (fixup_go_packaging): Adjust.
15177         (process_imported_unit_die): Adjust.
15178         (dwarf2_compute_name): Adjust.
15179         (dwarf2_physname): Adjust.
15180         (read_import_statement): Adjust.
15181         (handle_DW_AT_stmt_list): Adjust.
15182         (read_file_scope): Adjust.
15183         (read_func_scope): Adjust.
15184         (read_lexical_block_scope): Adjust.
15185         (read_call_site_scope): Adjust.
15186         (read_variable): Adjust.
15187         (dwarf2_rnglists_process): Adjust.
15188         (dwarf2_ranges_process): Adjust.
15189         (dwarf2_ranges_read): Adjust.
15190         (dwarf2_get_pc_bounds): Adjust.
15191         (dwarf2_record_block_ranges): Adjust.
15192         (dwarf2_add_field): Adjust.
15193         (dwarf2_add_member_fn): Adjust.
15194         (read_structure_type): Adjust.
15195         (process_structure_scope): Adjust.
15196         (read_enumeration_type): Adjust.
15197         (read_array_type): Adjust.
15198         (mark_common_block_symbol_computed): Adjust.
15199         (read_common_block): Adjust.
15200         (read_namespace_type): Adjust.
15201         (read_namespace): Adjust.
15202         (read_module_type): Adjust.
15203         (read_tag_pointer_type): Adjust.
15204         (read_tag_ptr_to_member_type): Adjust.
15205         (read_tag_string_type): Adjust.
15206         (read_subroutine_type): Adjust.
15207         (read_typedef): Adjust.
15208         (read_base_type): Adjust.
15209         (attr_to_dynamic_prop): Adjust.
15210         (read_subrange_type): Adjust.
15211         (read_unspecified_type): Adjust.
15212         (dwarf2_read_abbrevs): Adjust.
15213         (load_partial_dies): Adjust.
15214         (read_partial_die): Adjust.
15215         (find_partial_die): Adjust.
15216         (guess_partial_die_structure_name): Adjust.
15217         (fixup_partial_die): Adjust.
15218         (read_attribute_value): Adjust.
15219         (read_addr_index): Adjust.
15220         (read_addr_index_from_leb128): Adjust.
15221         (read_str_index): Adjust.
15222         (dwarf2_string_attr): Adjust.
15223         (get_debug_line_section): Adjust.
15224         (dwarf_decode_line_header): Adjust.
15225         (lnp_state_machine::check_line_address): Adjust.
15226         (dwarf_decode_lines_1): Adjust.
15227         (dwarf_decode_lines): Adjust.
15228         (dwarf2_start_symtab): Adjust.
15229         (var_decode_location): Adjust.
15230         (new_symbol_full): Adjust.
15231         (dwarf2_const_value_data): Adjust.
15232         (dwarf2_const_value_attr): Adjust.
15233         (dwarf2_const_value): Adjust.
15234         (die_type): Adjust.
15235         (die_containing_type): Adjust.
15236         (build_error_marker_type): Adjust.
15237         (lookup_die_type): Adjust.
15238         (guess_full_die_structure_name): Adjust.
15239         (anonymous_struct_prefix): Adjust.
15240         (determine_prefix): Adjust.
15241         (dwarf2_name): Adjust.
15242         (follow_die_ref_or_sig): Adjust.
15243         (follow_die_offset): Adjust.
15244         (follow_die_ref): Adjust.
15245         (follow_die_sig_1): Adjust.
15246         (follow_die_sig): Adjust.
15247         (get_signatured_type): Adjust.
15248         (get_DW_AT_signature_type): Adjust.
15249         (decode_locdesc): Adjust.
15250         (dwarf_decode_macros): Adjust.
15251         (cu_debug_loc_section): Adjust.
15252         (fill_in_loclist_baton): Adjust.
15253         (dwarf2_symbol_mark_computed): Adjust.
15254         (init_one_comp_unit): Don't assign
15255         dwarf2_cu::dwarf2_per_objfile.
15256         (set_die_type): Adjust.
15257
15258 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15259
15260         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15261         <dwarf2_per_objfile>: New field.
15262         (dwarf2_per_objfile): Remove global.
15263         (get_dwarf2_per_objfile): New function.
15264         (set_dwarf2_per_objfile): New function.
15265         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15266         dwarf2_per_objfile.
15267         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15268         (read_abbrev_offset): Likewise.
15269         (read_indirect_string): Likewise.
15270         (read_indirect_line_string): Likewise.
15271         (read_indirect_string_at_offset): Likewise.
15272         (read_indirect_string_from_dwz): Likewise.
15273         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15274         dwarf2_per_objfile.
15275         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15276         (create_all_comp_units): Change objfile parameter to
15277         dwarf2_per_objfile.
15278         (create_all_type_units): Likewise.
15279         (process_queue): Add dwarf2_per_objfile parameter.
15280         (read_and_check_comp_unit_head): Likewise.
15281         (lookup_dwo_unit_in_dwp): Likewise.
15282         (get_dwp_file): Likewise.
15283         (process_cu_includes): Likewise.
15284         (struct free_dwo_file_cleanup_data): New struct.
15285         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15286         set_dwarf2_per_objfile.
15287         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15288         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15289         context, adjust calls.
15290         (dw2_instantiate_symtab): Likewise.
15291         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15292         (dw2_get_cu): Likewise.
15293         (create_cu_from_index_list): Change objfile parameter to
15294         dwarf2_per_objfile.
15295         (create_cus_from_index_list): Get dwarf2_per_objfile from
15296         context, adjust calls.
15297         (create_cus_from_index): Likewise.
15298         (create_signatured_type_table_from_index): Change objfile
15299         parameter to dwarf2_per_objfile.
15300         (create_signatured_type_table_from_debug_names): Change objfile
15301         parameter to dwarf2_per_objfile.
15302         (create_addrmap_from_index): Likewise.
15303         (create_addrmap_from_aranges): Likewise.
15304         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15305         (dw2_setup): Remove.
15306         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15307         context.
15308         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15309         get_dwarf2_per_objfile.
15310         (dw2_forget_cached_source_info): Likewise.
15311         (dw2_map_symtabs_matching_filename): Likewise.
15312         (struct dw2_symtab_iterator) <index>: Remove.
15313         <dwarf2_per_objfile>: New field.
15314         (dw2_symtab_iter_init): Replace index parameter with
15315         dwarf2_per_objfile.
15316         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15317         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15318         (dw2_print_stats): Likewise.
15319         (dw2_dump): Likewise.
15320         (dw2_expand_symtabs_for_function): Likewise.
15321         (dw2_expand_all_symtabs): Likewise.
15322         (dw2_expand_symtabs_with_fullname): Likewise.
15323         (dw2_expand_marked_cus): Replace index and objfile parameters
15324         with dwarf2_per_objfile.
15325         (dw_expand_symtabs_matching_file_matcher): Add
15326         dwarf2_per_objfile parameter and adjust calls.
15327         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15328         adjust calls.
15329         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15330         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15331         adjust calls.
15332         (create_cus_from_debug_names_list): Replace objfile parameter
15333         with dwarf2_per_objfile and adjust calls.
15334         (create_cus_from_debug_names): Likewise.
15335         (dwarf2_read_debug_names): Likewise.
15336         (mapped_debug_names::namei_to_name): Adjust call.
15337         (dw2_debug_names_iterator::next): Likewise.
15338         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15339         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15340         (dw2_debug_names_dump): Likewise.
15341         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15342         (dw2_debug_names_expand_symtabs_matching): Likewise.
15343         (dwarf2_initialize_objfile): Likewise.
15344         (dwarf2_build_psymtabs): Likewise.
15345         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15346         this_cu.
15347         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15348         (read_and_check_comp_unit_head): Likewise.
15349         (read_abbrev_offset): Likewise.
15350         (create_debug_type_hash_table): Likewise.
15351         (create_debug_types_hash_table): Likewise.
15352         (create_all_type_units): Replace objfile parameter with
15353         dwarf2_per_objfile.
15354         (add_type_unit): Add dwarf2_per_objfile parameter.
15355         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15356         with dwarf2_per_objfile.
15357         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15358         (lookup_dwp_signatured_type): Likewise.
15359         (lookup_signatured_type): Likewise.
15360         (read_cutu_die_from_dwo): Likewise.
15361         (init_tu_and_read_dwo_dies): Likewise.
15362         (init_cutu_and_read_dies): Likewise.
15363         (init_cutu_and_read_dies_no_follow): Likewise.
15364         (allocate_type_unit_groups_table): Add objfile parameter.
15365         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15366         (get_type_unit_group): Likewise.
15367         (process_psymtab_comp_unit): Update call.
15368         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15369         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15370         (print_tu_stats): Likewise.
15371         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15372         in void* parameter.
15373         (build_type_psymtabs): Change objfile parameter to
15374         dwarf2_per_objfile.
15375         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15376         passed in void* parameter.
15377         (process_skeletonless_type_units): Change objfile parameter to
15378         dwarf2_per_objfile.
15379         (set_partial_user): Likewise.
15380         (dwarf2_build_psymtabs_hard): Likewise.
15381         (read_comp_units_from_section): Likewise.
15382         (create_all_comp_units): Likewise.
15383         (scan_partial_symbols): Update calls.
15384         (add_partial_symbol): Likewise.
15385         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15386         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15387         (process_queue): Add dwarf2_per_objfile parameter.
15388         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15389         (compute_compunit_symtab_includes): Likewise.
15390         (process_cu_includes): Add dwarf2_per_objfile parameter.
15391         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15392         (process_full_type_unit): Likewise.
15393         (process_imported_unit_die): Update call.
15394         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15395         (read_file_scope): Likewise.
15396         (allocate_dwo_file_hash_table): Add objfile parameter.
15397         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15398         (create_cus_hash_table): Likewise.
15399         (create_dwp_hash_table): Likewise.
15400         (create_dwo_unit_in_dwp_v1): Likewise.
15401         (create_dwp_v2_section): Likewise.
15402         (create_dwo_unit_in_dwp_v2): Likewise.
15403         (lookup_dwo_unit_in_dwp): Likewise.
15404         (try_open_dwop_file): Likewise.
15405         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15406         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15407         cleanup to include a reference to dwarf2_per_objfile.
15408         (open_dwp_file): Add dwarf2_per_objfile parameter.
15409         (open_and_init_dwp_file): Likewise.
15410         (get_dwp_file): Likewise.
15411         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15412         (queue_and_load_all_dwo_tus): Update call.
15413         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15414         data.
15415         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15416         (dwarf2_ranges_process): Likewise.
15417         (dwarf2_get_pc_bounds): Likewise.
15418         (mark_common_block_symbol_computed): Likewise.
15419         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15420         (dwarf2_read_abbrevs): Update call.
15421         (read_partial_die): Use dwarf2_per_objfile from cu.
15422         (find_partial_die): Likewise.
15423         (fixup_partial_die): Likewise.
15424         (read_attribute_value): Likewise.
15425         (read_indirect_string_at_offset_from): Add objfile parameter.
15426         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15427         parameter.
15428         (read_indirect_string_from_dwz): Add objfile parameter.
15429         (read_indirect_string): Add objfile parameter.
15430         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15431         (read_addr_index): Use dwarf2_per_objfile from cu.
15432         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15433         call dw2_setup.
15434         (read_str_index): Use dwarf2_per_objfile from cu.
15435         (get_debug_line_section): Likewise.
15436         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15437         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15438         (new_symbol_full): Use dwarf2_per_objfile from cu.
15439         (build_error_marker_type): Likewise.
15440         (lookup_die_type): Likewise.
15441         (determine_prefix): Likewise.
15442         (follow_die_offset): Likewise.
15443         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15444         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15445         (dwarf2_fetch_die_type_sect_off): Likewise.
15446         (dwarf2_get_die_type): Likewise.
15447         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15448         (get_signatured_type): Likewise.
15449         (get_DW_AT_signature_type): Likewise.
15450         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15451         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15452         (cu_debug_loc_section): Likewise.
15453         (fill_in_loclist_baton): Likewise.
15454         (dwarf2_symbol_mark_computed): Likewise.
15455         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15456         dwarf2_per_objfile.
15457         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15458         parameter.
15459         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15460         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15461         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15462         (set_die_type): Use dwarf2_free_objfile from cu.
15463         (get_die_type_at_offset): Likewise.
15464         (dwarf2_per_objfile_free): Don't assign global variable.
15465         (debug_names) <constructor>: Add dwarf2_per_objfile
15466         parameter, update m_debugstrlookup construction.
15467         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15468         parameter.
15469         <m_dwarf2_per_objfile>: New field.
15470         <lookup>: Use m_dwarf2_per_objfile.
15471         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15472         (psyms_seen_size): Likewise.
15473         (write_gdbindex): Replace objfile parameter with
15474         dwarf2_per_objfile.
15475         (write_debug_names): Likewise.
15476         (write_psymtabs_to_index): Likewise.
15477         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15478         calls.
15479
15480 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15481
15482         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15483         <dwarf2_per_objfile>: New field.
15484         (struct dwarf2_per_cu_data) <objfile>: Remove.
15485         <dwarf2_per_objfile>: New field.
15486         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15487         of objfile.
15488         (create_signatured_type_table_from_index): Likewise.
15489         (create_debug_type_hash_table): Likewise.
15490         (fill_in_sig_entry_from_dwo_entry): Likewise.
15491         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15492         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15493         objfile.
15494         (create_partial_symtab): Access objfile through
15495         dwarf2_per_objfile.
15496         (process_psymtab_comp_unit_reader): Likewise.
15497         (read_comp_units_from_section): Likewise.
15498         (scan_partial_symbols): Likewise.
15499         (add_partial_symbol): Likewise.
15500         (add_partial_subprogram): Likewise.
15501         (peek_die_abbrev): Likewise.
15502         (fixup_go_packaging): Likewise.
15503         (process_full_comp_unit): Likewise.
15504         (process_full_type_unit): Likewise.
15505         (process_imported_unit_die): Likewise.
15506         (dwarf2_compute_name): Likewise.
15507         (dwarf2_physname): Likewise.
15508         (read_import_statement): Likewise.
15509         (create_cus_hash_table): Assign dwarf2_physname instead of
15510         objfile.
15511         (read_func_scope): Access objfile through dwarf2_per_objfile.
15512         (read_lexical_block_scope): Likewise.
15513         (read_call_site_scope): Likewise.
15514         (read_variable): Likewise.
15515         (dwarf2_rnglists_process): Likewise.
15516         (dwarf2_ranges_process): Likewise.
15517         (dwarf2_ranges_read): Likewise.
15518         (dwarf2_record_block_ranges): Likewise.
15519         (dwarf2_add_field): Likewise.
15520         (dwarf2_add_member_fn): Likewise.
15521         (read_structure_type): Likewise.
15522         (process_structure_scope): Likewise.
15523         (read_enumeration_type): Likewise.
15524         (read_array_type): Likewise.
15525         (read_common_block): Likewise.
15526         (read_namespace_type): Likewise.
15527         (read_namespace): Likewise.
15528         (read_module_type): Likewise.
15529         (read_tag_pointer_type): Likewise.
15530         (read_tag_ptr_to_member_type): Likewise.
15531         (read_tag_string_type): Likewise.
15532         (read_subroutine_type): Likewise.
15533         (read_typedef): Likewise.
15534         (read_base_type): Likewise.
15535         (attr_to_dynamic_prop): Likewise.
15536         (read_subrange_type): Likewise.
15537         (read_unspecified_type): Likewise.
15538         (load_partial_dies): Likewise.
15539         (read_partial_die): Likewise.
15540         (find_partial_die): Likewise.
15541         (guess_partial_die_structure_name): Likewise.
15542         (fixup_partial_die): Likewise.
15543         (read_attribute_value): Likewise.
15544         (read_addr_index_from_leb128): Likewise.
15545         (dwarf2_read_addr_index): Likewise.
15546         (dwarf2_string_attr): Likewise.
15547         (lnp_state_machine::check_line_address): Likewise.
15548         (dwarf_decode_lines_1): Likewise.
15549         (dwarf_decode_lines): Likewise.
15550         (dwarf2_start_symtab): Likewise.
15551         (var_decode_location): Likewise.
15552         (new_symbol_full): Likewise.
15553         (dwarf2_const_value_data): Likewise.
15554         (dwarf2_const_value_attr): Likewise.
15555         (dwarf2_const_value): Likewise.
15556         (die_type): Likewise.
15557         (die_containing_type): Likewise.
15558         (lookup_die_type): Likewise.
15559         (guess_full_die_structure_name): Likewise.
15560         (anonymous_struct_prefix): Likewise.
15561         (dwarf2_name): Likewise.
15562         (follow_die_ref_or_sig): Likewise.
15563         (follow_die_offset): Likewise.
15564         (follow_die_ref): Likewise.
15565         (dwarf2_fetch_die_loc_sect_off): Likewise.
15566         (dwarf2_fetch_constant_bytes): Likewise.
15567         (dwarf2_fetch_die_type_sect_off): Likewise.
15568         (dwarf2_get_die_type): Likewise.
15569         (follow_die_sig): Likewise.
15570         (decode_locdesc): Likewise.
15571         (dwarf2_per_cu_objfile): Likewise.
15572         (dwarf2_per_cu_text_offset): Likewise.
15573         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15574         objfile.
15575         (set_die_type): Access objfile through
15576         dwarf2_per_objfile.
15577
15578 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15579
15580         * valprint.c (converted_character_d): Remove typedef.
15581         (DEF_VEC_O (converted_character_d)): Remove.
15582         (count_next_character): Use std::vector.
15583         (print_converted_chars_to_obstack): Likewise.
15584         (generic_printstr): Likewise.
15585
15586 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15587
15588         * xml-support.h (struct gdb_xml_value): Add constructor.
15589         <value>: Change type to unique_xmalloc_ptr.
15590         (gdb_xml_value_s): Remove typedef.
15591         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15592         (gdb_xml_element_start_handler): Change parameter type to
15593         std::vector.
15594         (xml_find_attribute): Likewise.
15595         * xml-support.c (xml_find_attribute): Change parameter type to
15596         std::vector and adjust.
15597         (gdb_xml_values_cleanup): Remove.
15598         (gdb_xml_parser::start_element): Adjust to std::vector.
15599         (xinclude_start_include): Change paraeter type to std::vector
15600         and adjust.
15601         * btrace.c (check_xml_btrace_version): Likewise.
15602         (parse_xml_btrace_block): Likewise.
15603         (parse_xml_btrace_pt_config_cpu): Likewise.
15604         (parse_xml_btrace_pt): Likewise.
15605         (parse_xml_btrace_conf_bts): Likewise.
15606         (parse_xml_btrace_conf_pt): Likewise.
15607         * memory-map.c (memory_map_start_memory): Likewise.
15608         (memory_map_start_property): Likewise.
15609         * osdata.c (osdata_start_osdata): Likewise.
15610         (osdata_start_item): Likewise.
15611         (osdata_start_column): Likewise.
15612         * remote.c (start_thread): Likewise.
15613         * solib-aix.c (library_list_start_library): Likewise.
15614         (library_list_start_list): Likewise.
15615         * solib-svr4.c (library_list_start_library): Likewise.
15616         (svr4_library_list_start_list): Likewise.
15617         * solib-target.c (library_list_start_segment): Likewise.
15618         (library_list_start_section): Likewise.
15619         (library_list_start_library): Likewise.
15620         (library_list_start_list): Likewise.
15621         * tracepoint.c (traceframe_info_start_memory): Likewise.
15622         (traceframe_info_start_tvar): Likewise.
15623         * xml-syscall.c (syscall_start_syscall): Likewise.
15624         * xml-tdesc.c (tdesc_start_target): Likewise.
15625         (tdesc_start_feature): Likewise.
15626         (tdesc_start_reg): Likewise.
15627         (tdesc_start_union): Likewise.
15628         (tdesc_start_struct): Likewise.
15629         (tdesc_start_flags): Likewise.
15630         (tdesc_start_enum): Likewise.
15631         (tdesc_start_field): Likewise.
15632         (tdesc_start_enum_value): Likewise.
15633         (tdesc_start_vector): Likewise.
15634
15635 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15636
15637         * extension.h (struct xmethod_worker) <clone>: Remove.
15638         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15639         Remove.
15640         (python_xmethod_worker::clone): Remove.
15641         * valops.c (find_overload_match): Use std::move instead of
15642         clone.
15643
15644 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15645
15646         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15647         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15648         <free_xmethod_worker_data>: Remove.
15649         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15650         <get_xmethod_arg_types>: Remove.
15651         <get_xmethod_result_type>: Remove.
15652         <invoke_xmethod>: Remove.
15653         * extension.c (new_xmethod_worker): Remove.
15654         (clone_xmethod_worker): Remove.
15655         (get_matching_xmethod_workers): Return void, pass std::vector by
15656         pointer.
15657         (get_xmethod_arg_types): Rename to...
15658         (xmethod_worker::get_arg_types): ... this, and adjust.
15659         (get_xmethod_result_type): Rename to...
15660         (xmethod_worker::get_result_type): ... this, and adjust.
15661         (invoke_xmethod): Remove.
15662         (free_xmethod_worker): Remove.
15663         (free_xmethod_worker_vec): Remove.
15664         * extension.h (enum ext_lang_rc): Move here from
15665         extension-priv.h.
15666         (struct xmethod_worker): Add constructor and destructor.
15667         <data>: Remove.
15668         <value>: Remove.
15669         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15670         virtual pure methods.
15671         <get_arg_types, get_result_type>: New methods.
15672         (xmethod_worker_ptr): Remove typedef.
15673         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15674         (xmethod_worker_vec): Remove typedef.
15675         (xmethod_worker_up): New typedef.
15676         (invoke_xmethod): Remove.
15677         (clone_xmethod_worker): Remove.
15678         (free_xmethod_worker): Remove.
15679         (free_xmethod_worker_vec): Remove.
15680         (get_xmethod_arg_types): Remove.
15681         (get_xmethod_result_type): Remove.
15682         * valops.c (find_method_list): Use std::vector, don't use
15683         intermediate vector.
15684         (value_find_oload_method_list): Use std::vector.
15685         (find_overload_match): Use std::vector.
15686         (find_oload_champ): Use std::vector.
15687         * value.c (value_free): Use operator delete.
15688         (value_of_xmethod): Rename to...
15689         (value_from_xmethod): ... this.  Don't assign
15690         xmethod_worker::value, take rvalue-reference.
15691         (result_type_of_xmethod): Adjust.
15692         (call_xmethod): Adjust.
15693         * value.h: Include extension.h.
15694         (struct xmethod_worker): Don't forward-declare.
15695         (value_of_xmethod): Rename to...
15696         (value_from_xmethod): ... this, take rvalue-reference.
15697         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15698         (struct python_xmethod_worker): ... this, add constructor and
15699         destructor.
15700         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15701         (gdbpy_free_xmethod_worker_data): Rename to...
15702         (python_xmethod_worker::~python_xmethod_worker): ... this and
15703         adjust.
15704         (gdbpy_clone_xmethod_worker_data): Rename to...
15705         (python_xmethod_worker::clone): ... this and adjust.
15706         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15707         temporary vector.
15708         (gdbpy_get_xmethod_arg_types): Rename to...
15709         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15710         (gdbpy_get_xmethod_result_type): Rename to...
15711         (python_xmethod_worker::do_get_result_type): ... this and
15712         adjust.
15713         (gdbpy_invoke_xmethod): Rename to...
15714         (python_xmethod_worker::invoke): ... this and adjust.
15715         (new_python_xmethod_worker): Rename to...
15716         (python_xmethod_worker::python_xmethod_worker): ... this and
15717         adjust.
15718         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15719         Remove.
15720         (gdbpy_free_xmethod_worker_data): Remove.
15721         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15722         (gdbpy_get_xmethod_arg_types): Remove.
15723         (gdbpy_get_xmethod_result_type): Remove.
15724         (gdbpy_invoke_xmethod): Remove.
15725         * python/python.c (python_extension_ops): Remove obsolete
15726         callbacks.
15727
15728 2018-01-05  Pedro Alves  <palves@redhat.com>
15729
15730         PR gdb/18653
15731         * common/signals-state-save-restore.c
15732         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15733         find a custom handler preinstalled, instead of internal erroring.
15734         But only warn if !quiet.
15735         * common/signals-state-save-restore.h
15736         (save_original_signals_state): New parameter 'quiet'.
15737         * main.c (captured_main_1): Move save_original_signals_state call
15738         after option handling, and pass QUIET.
15739
15740 2018-01-05  Pedro Alves  <palves@redhat.com>
15741
15742         * spu-tdep.c (spu_catch_start): Pass
15743         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15744
15745 2018-01-05  Pedro Alves  <palves@redhat.com>
15746
15747         PR gdb/22670
15748         * ada-lang.c (literal_symbol_name_matcher): New function.
15749         (ada_get_symbol_name_matcher): Use it for
15750         symbol_name_match_type::SEARCH_NAME.
15751         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15752         it down instead of assuming symbol_name_match_type::FULL.
15753         * block.h (block_lookup_symbol): New parameter 'match_type'.
15754         * c-valprint.c (print_unpacked_pointer): Use
15755         lookup_symbol_search_name instead of lookup_symbol.
15756         * compile/compile-object-load.c (get_out_value_type): Pass down
15757         symbol_name_match_type::SEARCH_NAME.
15758         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15759         symbol_name_match_type::FULL.
15760         * cp-support.c (cp_get_symbol_name_matcher): Handle
15761         symbol_name_match_type::SEARCH_NAME.
15762         * infrun.c (insert_exception_resume_breakpoint): Use
15763         lookup_symbol_search_name.
15764         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15765         * psymtab.c (maintenance_check_psymtabs): Use
15766         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15767         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15768         SYMBOL_SEARCH_NAME.
15769         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15770         if symbol_name_match_type::SEARCH_NAME.
15771         (lookup_symbol_in_language): Pass down
15772         symbol_name_match_type::FULL.
15773         (lookup_symbol_search_name): New.
15774         (lookup_language_this): Pass down
15775         symbol_name_match_type::SEARCH_NAME.
15776         (lookup_symbol_aux, lookup_local_symbol): New parameter
15777         'match_type'.  Pass it down.
15778         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15779         (lookup_symbol_search_name): New declaration.
15780         (lookup_symbol_in_block): New 'match_type' parameter.
15781
15782 2018-01-05  Pedro Alves  <palves@redhat.com>
15783
15784         PR gdb/22670
15785         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15786         ada_lookup_symbol.
15787         (ada_lookup_symbol): Reimplement in terms of
15788         ada_lookup_symbol_list, bits factored out from
15789         ada_lookup_encoded_symbol.
15790
15791 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15792
15793         * ada-exp.y (write_object_renaming): When subscripting an array
15794         using a symbol as the index, pass the block in call to
15795         ada_lookup_encoded_symbol when looking that symbol up.
15796
15797 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15798
15799         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15800         TYPE_INDEX_TYPE.
15801
15802 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15803
15804         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15805         the case where VALUE_LVAL (val0) is not lval_memory.
15806
15807 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15808
15809         * ada-valprint.c (print_optional_low_bound): Handle
15810         character-indexed array printing like boolean-indexed array
15811         printing.
15812
15813 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15814
15815         * NEWS: Create a new section for the next release branch.
15816         Rename the section of the current branch, now that it has
15817         been cut.
15818
15819 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15820
15821         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15822         * version.in: Bump version to 8.1.50.DATE-git.
15823
15824 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15825
15826         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15827         Add field.
15828         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15829         Add field.
15830         (default_exception_support_info) <catch_handlers_sym>: Add field.
15831         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15832         (ada_exception_name_addr_1): Add "catch handlers" handling.
15833         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15834         Update all callers.
15835         (create_excep_cond_exprs) <ex>: Add parameter.
15836         (re_set_exception): Update create_excep_cond_exprs call.
15837         (print_it_exception, print_one_exception, print_mention_exception)
15838         (print_recreate_exception): Add "catch handler" handling.
15839         (allocate_location_catch_handlers, re_set_catch_handlers)
15840         (check_status_catch_handlers, print_it_catch_handlers)
15841         (print_one_catch_handlers, print_mention_catch_handlers)
15842         (print_recreate_catch_handlers): New function.
15843         (catch_handlers_breakpoint_ops): New variable.
15844         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15845         Add parameter.  Add "catch handler" handling.
15846         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15847         Add "catch handler" handling.
15848         (ada_exception_catchpoint_cond_string): Add "catch handler"
15849         handling.
15850         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15851         call.
15852         (catch_ada_handlers_command): New function.
15853         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15854         operations structure.
15855         (_initialize_ada_language): Add "catch handlers" command entry.
15856         * NEWS: Document "catch handlers" feature.
15857
15858 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15859
15860         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15861         account when creating the array type of the slice.
15862         (ada_value_slice): Likewise.
15863
15864 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15865
15866         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15867         New enum value.
15868         (create_array_type_with_stride): Add byte_stride_prop parameter.
15869         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15870         New parameter.  Update all callers in this file.
15871         (array_type_has_dynamic_stride): New function.
15872         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15873         of arrays with dynamic byte strides.
15874         * dwarf2read.c (read_array_type): Add support for dynamic
15875         DW_AT_byte_stride attributes.
15876
15877 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15878
15879         * dwarf2read.c (read_unspecified_type): Treat
15880         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15881
15882 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15883
15884         Update copyright year range in all GDB files.
15885
15886 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15887
15888         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15889         and gdb/testsuite/gdb.base/step-line.c.
15890
15891 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15892
15893         * copyright.py (main): Dump the contents of
15894         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15895         even if BY_HAND is empty.
15896
15897 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15898
15899         * top.c (print_gdb_version): Update Copyright year in version
15900         message.
15901
15902 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15903
15904         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15905
15906 For older changes see ChangeLog-2017.
15907 \f
15908 Local Variables:
15909 mode: change-log
15910 left-margin: 8
15911 fill-column: 74
15912 version-control: never
15913 coding: utf-8
15914 End: