Avoid "Invalid parameter passed to C runtime function" warning
[external/binutils.git] / gdb / ChangeLog
1 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
2
3         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
4         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
5         to MinGW fixed by Gnulib.
6
7 2018-11-19  John Darrington <john@darrington.wattle.id.au>
8
9         *s12z-tdep.c (s12z_frame_cache): Add an assertion.
10
11 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
12
13         * infrun.c (displaced_step_inferior_state) <next>: Remove.
14
15 2018-11-19  Tom Tromey  <tom@tromey.com>
16
17         * source.c (get_filename_and_charpos): Return void.
18
19 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
20
21         * skip.c (_initialize_step_skip): Fix "info skip" help.
22
23 2018-11-16  Tom Tromey  <tom@tromey.com>
24
25         PR rust/23625:
26         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
27
28 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
29
30         * infrun.c (displaced_step_inferior_states): Change type to
31         std::forward_list.
32         (get_displaced_stepping_state): Adjust.
33         (displaced_step_in_progress_any_inferior): Adjust.
34         (add_displaced_stepping_state): Adjust.
35         (remove_displaced_stepping_state): Adjust.
36
37 2018-11-18  Tom Tromey  <tom@tromey.com>
38
39         PR build/23814:
40         * target-delegates.c: Rebuild.
41         * ia64-linux-nat.c (class ia64_linux_nat_target)
42         <have_steppable_watchpoint>: Use override.  Return true, not 1.
43         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
44         "self" argument.
45         (ia64_linux_nat_target::low_new_thread): Rename.
46         (class ia64_linux_nat_target) <read_description>: Don't declare.
47         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
48         bool.
49
50 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
51
52         PR gdb/22736:
53         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
54         lang_struct_return code.
55
56 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
57
58         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
59         return_method.
60         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
61         * amd64-tdep.c (amd64_push_arguments): Likewise.
62         (amd64_push_dummy_call): Likewise.
63         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
64         * arc-tdep.c (arc_push_dummy_call): Likewise.
65         * arm-tdep.c (arm_push_dummy_call): Likewise.
66         * avr-tdep.c (avr_push_dummy_call): Likewise.
67         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
68         * cris-tdep.c (cris_push_dummy_call): Likewise.
69         * csky-tdep.c (csky_push_dummy_call): Likewise.
70         * frv-tdep.c (frv_push_dummy_call): Likewise.
71         * gdbarch.c: Regenerate.
72         * gdbarch.h: Regenerate.
73         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
74         return_method.
75         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
76         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
77         (hppa64_push_dummy_call): Likewise.
78         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
79         * i386-tdep.c (i386_push_dummy_call): Likewise.
80         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
81         * infcall.c (call_function_by_hand_dummy): Likewise.
82         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
83         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
84         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
85         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
86         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
87         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
88         * mep-tdep.c (mep_push_dummy_call): Likewise.
89         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
90         (mips_n32n64_push_dummy_call): Likewise.
91         (mips_o32_push_dummy_call): Likewise.
92         (mips_o64_push_dummy_call): Likewise.
93         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
94         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
95         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
96         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
97         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
98         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
99         (ppc64_sysv_abi_push_dummy_call): Likewise.
100         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
101         (ppc64_sysv_abi_push_dummy_call): Likewise.
102         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
103         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
104         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
105         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
106         * rx-tdep.c (rx_push_dummy_call): Likewise.
107         * s390-tdep.c (s390_push_dummy_call): Likewise.
108         * score-tdep.c (score_push_dummy_call): Likewise.
109         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
110         (sh_push_dummy_call_nofpu): Likewise.
111         * sparc-tdep.c (sparc32_store_arguments): Likewise.
112         (sparc32_push_dummy_call): Likewise.
113         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
114         (sparc64_push_dummy_call): Likewise.
115         * spu-tdep.c (spu_push_dummy_call): Likewise.
116         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
117         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
118         * v850-tdep.c (v850_push_dummy_call): Likewise.
119         * vax-tdep.c (vax_push_dummy_call): Likewise.
120         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
121         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
122
123 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
124
125         * gdbarch.sh (enum function_call_return_method): Add enum.
126         * gdbarch.h: Regenerate.
127         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
128
129 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
130
131         * unittests/copy_bitwise-selftests.c: New file.
132         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
133         (selftests::copy_bitwise_tests): Delete, moving this code to
134         unittests/copy_bitwise-selftests.c instead.
135         (_initialize_utils): Do not register copy_bitwise tests.
136         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
137         unittests/copy_bitwise-selftests.c.
138
139 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
140
141         * ada-lang.c (move_bits): Delete. Update all callers to use
142         copy_bitwise instead.
143         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
144         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
145         Move from here to utils.c.
146         (_initialize_dwarf2loc): Remove call to register copy_bitwise
147         selftests.
148         * utils.h (copy_bitwise): Add declaration.
149         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
150         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
151         Moved here from dwarf2loc.c.
152         (_initialize_utils): Register copy_bitwise selftests.
153
154 2018-11-14  Jim Wilson  <jimw@sifive.com>
155
156         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
157         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
158         then increment next_regnum if odd.
159         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
160         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
161         function type.  Pass new arg to riscv_arg_location based on function
162         type.
163         (riscv_return_value): Pass new arg to riscv_arg_location.
164
165         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
166         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
167         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
168
169         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
170         setting len.  New local align, set to max of arg align and xlen,
171         and pass to first riscv_assign_stack_location call.
172
173 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
174
175         * skip.c (complete_skip_number): New function.
176         (_initialize_step_skip): Add completers to some skip commands.
177
178 2018-11-09  Tom Tromey  <tom@tromey.com>
179
180         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
181         (struct remote_g_packet_data): Derive from allocate_on_obstack.
182         <guesses>: Now a std::vector.
183         (remote_g_packet_data_init, register_remote_g_packet_guess):
184         Update.
185         (remote_read_description_p): Update.  Return bool.
186         (remote_target::read_description): Update.
187         (struct remote_g_packet_guess): Add constructor.
188
189 2018-11-09  Tom Tromey  <tom@tromey.com>
190
191         * common/scoped_fd.h (class scoped_fd): Add move constructor and
192         move assignment operator.
193         * psymtab.c (psymtab_to_fullname): Update.
194         * source.h (open_source_file): Return scoped_fd.
195         (find_and_open_source): Likewise.
196         * source.c (open_source_file): Return scoped_fd.
197         (get_filename_and_charpos): Update.
198         (print_source_lines_base): Update.  Use scoped_fd::to_file.
199         (forward_search_command): Likewise.
200         (reverse_search_command): Likewise.
201         (find_and_open_source): Return scoped_fd.
202         * tui/tui-source.c (tui_set_source_content): Update.  Use
203         gdb_file_up.
204
205 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
206
207         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
208         overflow.
209
210 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
211
212         * configure: Regenerate.
213
214 2018-11-09  Tom de Vries  <tdevries@suse.de>
215
216         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
217         unconditionally, to set the language of the symbol.  Manage freeing
218         returned pointer using gdb::unique_xmalloc_ptr.
219
220 2018-11-08  Tom Tromey  <tom@tromey.com>
221
222         * record.c (require_record_target): Upper-case "<TAB>".
223
224 2018-11-08  Tom Tromey  <tom@tromey.com>
225
226         * python/lib/gdb/command/pretty_printers.py
227         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
228
229 2018-11-08  Tom Tromey  <tom@tromey.com>
230
231         PR gdb/23555:
232         PR gdb/23838:
233         * target.h (target_supports_terminal_ours): Return bool.
234         * target.c (target_supports_terminal_ours): Handle case where
235         current_top_target returns nullptr.  Return bool.
236
237 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
238
239         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
240         return the correct count for potential HFAs.
241
242 2018-11-08  Jan Beulich  <jbeulich@suse.com>
243
244         * i387-tdep.c (i387_supply_xsave): Split handling of
245         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
246         (i387_collect_xsave): Likewise.
247
248 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
249
250         * riscv-tdep.c (riscv_insn::decode): Update header comment.
251         (riscv_frame_this_id): Catch errors thrown while building the
252         frame cache, leave the frame id as the default, which is the outer
253         frame id.
254
255 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
256
257         * ada-lang.c (read_atcb): Only set task_info->called_task if
258         task_info->state == Entry_Caller_Sleep.
259         (print_ada_task_info): Do not check task_info->state before
260         checking task_info->called_task.
261         (info_task): Likewise.
262
263 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
264
265         * ada-tasks.c (read_atcb): Clear task_info before computing
266         the value of each of its fields.
267
268 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
269
270         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
271         NULL before dereferencing it.
272
273 2018-11-06  Tom de Vries  <tdevries@suse.de>
274
275         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
276         program headers.
277
278 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
279
280         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
281         so that it applies to uclinux as well.
282
283 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
284
285         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
286         when on AAPCS.
287
288 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
289
290         * riscv-fbsd-nat.c (getregs_supplies): Return true for
291         RISCV_CSR_SSTATUS_REGNUM.
292
293 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
294
295         * source.c (open_source_file): Fix leak by transferring the
296         current s->fullname to the unique_xmalloc_ptr fullname given
297         to find_and_open_source.
298
299 2018-11-04  Tom Tromey  <tom@tromey.com>
300
301         * varobj.c (install_default_visualizer): Update.
302         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
303         Return gdbpy_ref.
304         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
305         (find_pretty_printer_from_progspace)
306         (find_pretty_printer_from_gdb, find_pretty_printer)
307         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
308         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
309         Update.
310
311 2018-11-04  Tom Tromey  <tom@tromey.com>
312
313         * python/python.c (gdbpy_parameter_value): Update.
314         * python/python-internal.h (python_string_to_unicode)
315         (python_string_to_target_python_string)
316         (host_string_to_python_string): Return gdbpy_ref.
317         * python/py-utils.c (python_string_to_unicode)
318         (unicode_to_encoded_python_string)
319         (unicode_to_target_python_string)
320         (python_string_to_target_string)
321         (python_string_to_target_python_string): Return gdbpy_ref.
322         (python_string_to_host_string): Update.
323         (host_string_to_python_string): Return gdbpy_ref.
324         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
325         (stpy_fullname): Update.
326         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
327         Update.
328         * python/py-prettyprint.c (print_string_repr): Update.
329         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
330         (objfpy_get_build_id): Update.
331         * python/py-breakpoint.c (bppy_get_location)
332         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
333         Update.
334
335 2018-11-04  Tom Tromey  <tom@tromey.com>
336
337         * python/python-internal.h (gdb_py_object_from_longest)
338         (gdb_py_object_from_ulongest): Return gdbpy_ref.
339         * python/py-value.c (valpy_int): Update.
340         * python/py-utils.c (gdb_py_object_from_longest): Return
341         gdbpy_ref.
342         (gdb_py_object_from_ulongest): Likewise.
343         * python/py-type.c (typy_get_alignof): Update.
344         * python/py-linetable.c (ltpy_get_all_source_lines)
345         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
346         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
347
348 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
349
350         * ada-lang.c (_initialize_ada_language): Fix typo.
351
352 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
353
354         * language.c (type): Remove.
355         (_initialize_language): Remove assignment to type.
356
357 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
358
359         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
360         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
361         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
362         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
363         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
364         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
365         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
366         and aarch64-ravenscar-thread.o.
367         * NEWS: Add entry documenting Ravenscar tasking support
368         on AArch64 ELF.
369
370 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
371
372         * symtab.c (info_functions_command): Initialize quiet flag.
373         * stack.c (info_args_command): Likewise.
374
375 2018-11-01  Jim Wilson  <jimw@sifive.com>
376
377         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
378         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
379         debugging messages.
380
381 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
382
383         * ada-lang.c (ada_watch_location_expression): New function.
384         (ada_language_defn): Set la_watch_location_expression to
385         ada_watch_location_expression.
386
387 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
388
389         * print-utils.c (int_string): Remove unnecessary trailing spaces.
390
391 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
392
393         * rs6000-tdep.c (skip_prologue): Fix potential negative left
394         shifting.
395
396 2018-11-01  Jerome Guitton  <guitton@adacore.com>
397             Joel Brobecker  <brobecker@adacore.com>
398
399         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
400         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
401         * arm-pikeos-tdep.c: New file.
402         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
403         embedded system.
404         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
405
406 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
407
408         * common/pathstuff.c (get_standard_temp_dir): New.
409         * common/pathstuff.h (get_standard_temp_dir): New.
410         * config.in: Re-generate.
411         * configure: Re-generate.
412         * configure.ac: Don't check for mkdtemp.
413         * gnulib/aclocal-m4-deps.mk: Re-generate.
414         * gnulib/aclocal.m4: Re-generate.
415         * gnulib/config.in: Re-generate.
416         * gnulib/configure: Re-generate.
417         * gnulib/import/Makefile.am: Re-generate.
418         * gnulib/import/Makefile.in: Re-generate.
419         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
420         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
421         * gnulib/import/m4/mkdtemp.m4: New file.
422         * gnulib/import/mkdtemp.c: New file.
423         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
424         Add mkdtemp module.
425         * unittests/mkdir-recursive-selftests.c (test): Use
426         get_standard_temp_dir.
427         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
428         ifdef.
429         * compile/compile.c (get_compile_file_tempdir): Likewise.
430
431 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
432
433         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
434         (SIG_FRAME_LR_OFFSET64): New define.
435         (SIG_FRAME_FP_OFFSET64): New define.
436         (aix_sighandle_frame_cache): New Function.
437         (aix_sighandle_frame_this_id): New Function.
438         (aix_sighandle_frame_prev_register): New Function.
439         (aix_sighandle_frame_sniffer): New Function.
440         (aix_sighandle_frame_unwind): New global variable.
441         (rs6000_aix_init_osabi): Install new frame unwinder.
442
443 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
444
445         PR gdb/23835
446         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
447         already defined.
448
449 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
450
451         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
452
453 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
454
455         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
456         (producer_is_icc): New function.
457         (check_producer): Set producer_is_icc field on dwarf2_cu.
458         (dwarf2_init_integer_type): New function.
459         (read_base_type): Call dwarf2_init_integer_type instead of
460         init_integer_type in all cases.
461         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
462         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
463         LEN is greater than 0.
464
465 2018-10-30  Tom Tromey  <tom@tromey.com>
466
467         * main.c (captured_main_1): Check return value of bfd_init.
468
469 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
470
471         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
472         Adjust comments.
473
474 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
475
476         * procfs.c: Include common/pathstuff.h.
477
478 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
479
480         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
481         Add missing braces.  No functional change.
482
483 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
484
485         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
486         to report a bad option and fix indentation.
487         * demangle.c (demangle_command): Use report_unrecognized_option_error
488         to report a bad option and correctly report the bad option.
489
490 2018-10-27  Tom Tromey  <tom@tromey.com>
491
492         PR cli/23364:
493         * darwin-nat.c (copied_shell): New global.
494         (may_have_sip): Rename from should_disable_startup_with_shell.
495         (copy_shell_to_cache, maybe_cache_shell): New functions.
496         (darwin_nat_target::create_inferior): Update.  Use
497         copied_shell.
498
499 2018-10-27  Tom Tromey  <tom@tromey.com>
500
501         * unittests/scoped_fd-selftests.c (test_to_file): New function.
502         (run_tests): Call test_to_file.
503         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
504         temporary files.
505         * common/scoped_fd.h (scoped_fd::to_file): New method.
506
507 2018-10-27  Tom Tromey  <tom@tromey.com>
508
509         * unittests/scoped_mmap-selftests.c (test_normal): Use
510         gdb_mkostemp_cloexec.
511         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
512         Use gdb_mkostemp_cloexec.
513         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
514         gnulib/config.in, gnulib/configure,
515         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
516         gnulib/import/m4/gnulib-cache.m4,
517         gnulib/import/m4/gnulib-comp.m4: Update.
518         * gnulib/import/m4/mkostemp.m4: New file.
519         * gnulib/import/m4/mkstemp.m4: Remove.
520         * gnulib/import/mkostemp.c: New file.
521         * gnulib/import/mkstemp.m4: Remove.
522         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
523         mkstemp, add mkostemp.  Apply new patch.
524         * gnulib/import/stdlib.in.h: Apply patch.
525         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
526         New file.
527         * dwarf-index-write.c (write_psymtabs_to_index): Use
528         gdb_mkostemp_cloexec.
529         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
530
531 2018-10-27  Tom Tromey  <tom@tromey.com>
532
533         * unittests/mkdir-recursive-selftests.c: New file.
534         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
535         unittests/mkdir-recursive-selftests.c.
536         * dwarf-index-cache.c (mkdir_recursive): Move to
537         common/filestuff.c.
538         (index_cache::store): Check return value of mkdir_recursive.
539         (create_dir_and_check, test_mkdir_recursive): Move to new file.
540         (_initialize_index_cache): Don't register test.
541         * common/filestuff.h (mkdir_recursive): Declare.
542         * common/filestuff.c (mkdir_recursive): Move from
543         dwarf-index-cache.c.  Return bool.
544
545 2018-10-27  Tom Tromey  <tom@tromey.com>
546
547         * dwarf-index-write.c (write_psymtabs_to_index): Move
548         make_temp_filename to common/pathstuff.c.
549         * common/pathstuff.h (make_temp_filename): Declare.
550         * common/pathstuff.c (make_temp_filename): New function, moved
551         from dwarf-index-write.c.
552
553 2018-10-27  Tom Tromey  <tom@tromey.com>
554
555         * procfs.c (procfs_target::create_inferior): Use get_shell.
556         * cli/cli-cmds.c (shell_escape): Use get_shell.
557         * windows-nat.c (windows_nat_target::create_inferior): Use
558         get_shell.
559         * common/pathstuff.c (get_shell): New function.
560         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
561         (fork_inferior): Use get_shell.
562         * common/pathstuff.h (get_shell): Declare.
563
564 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
565
566         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
567
568 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
569
570         * stack.c (print_variable_and_value_data): Add preg and treg.
571         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
572         and update callers.
573         (print_frame_arg_vars): Likewise.
574         (prepare_reg): New function.
575         (info_locals_command): Extract info print args and use them.
576         (info_args_command): Likewise.
577         (_initialize_stack): Modify on-line help.
578         * symtab.c (treg_matches_sym_type_name): New function.
579         (search_symbols): New arg t_regexp.
580         (symtab_symbol_info): New args quiet, regexp, t_regexp.
581         (info_variables_command): Extract info print args and use them.
582         (info_functions_command): Likewise.
583         (info_types_command): Update call to symtab_symbol_info.
584         (_initialize_symtab): Modify on-line help.
585         * symtab.h (treg_matches_sym_type_name): New function.
586         (search_symbols): New t_regexp arg.
587
588 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
589
590         * cli-utils.c (extract_arg_maybe_quoted): New function.
591         (extract_info_print_args): New function.
592         (info_print_args_help): New function.
593         (report_unrecognized_option_error): New function.
594         * cli-utils.h (extract_arg_maybe_quoted): New function.
595         (extract_info_print_args): New function.
596         (info_print_args_help): New function.
597         (report_unrecognized_option_error): New function.
598
599 2018-10-26  Tom Tromey  <tom@tromey.com>
600
601         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
602         (compute_compunit_symtab_includes): Update.
603         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
604         (compunit_symtab_ptr): Likewise.
605
606 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
607
608         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
609         default_print_auxv_entry for specific tag values.
610
611 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
612
613         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
614
615 2018-10-26  Jim Wilson  <jimw@sifive.com>
616
617         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
618         (riscv_linux_sigframe_init): Declare.
619         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
620         (riscv_linux_sigframe): New.
621         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
622         (riscv_linux_sigframe_init): Define.
623         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
624
625         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
626         (riscv_isa_flen): Likewise.  Drop static.
627         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
628         (riscv_isa_flen): Likewise.  Declare.
629
630 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
631             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
632
633         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
634         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
635         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
636         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
637         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
638         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
639         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
640         Define.
641         (struct ppc_linux_features) <htm>: New field.
642         (ppc_linux_no_features): Add initializer for htm field.
643         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
644         new tdescs.
645         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
646         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
647         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
648         Define if not already defined.
649         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
650         and rs6000/powerpc-isa207-htm-vsx64l.
651         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
652         rs6000/powerpc-isa207-htm-vsx64l.xml.
653         * features/rs6000/power-htm-spr.xml: New file.
654         * features/rs6000/power-htm-core.xml: New file.
655         * features/rs6000/power64-htm-core.xml: New file.
656         * features/rs6000/power-htm-fpu.xml: New file.
657         * features/rs6000/power-htm-altivec.xml: New file.
658         * features/rs6000/power-htm-vsx.xml: New file.
659         * features/rs6000/power-htm-ppr.xml: New file.
660         * features/rs6000/power-htm-dscr.xml: New file.
661         * features/rs6000/power-htm-tar.xml: New file.
662         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
663         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
664         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
665         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
666         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
667         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
668         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
669         fetch_regset with HTM regsets.
670         (store_register, store_ppc_registers): Call store_regset with HTM
671         regsets.
672         (ppc_linux_nat_target::read_description): Set htm field in the
673         features struct if needed.
674         * ppc-linux-tdep.c: Include
675         features/rs6000/powerpc-isa207-htm-vsx32l.c and
676         features/rs6000/powerpc-isa207-htm-vsx64l.c.
677         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
678         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
679         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
680         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
681         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
682         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
683         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
684         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
685         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
686         (ppc32_linux_ctarregset): New globals.
687         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
688         (ppc_linux_collect_core_cpgrregset): New function.
689         (ppc_linux_iterate_over_regset_sections): Call back with the htm
690         regsets.
691         (ppc_linux_core_read_description): Check if the tm spr section is
692         present and set htm in the features struct.
693         (_initialize_ppc_linux_tdep): Call
694         initialize_tdesc_powerpc_isa207_htm_vsx32l and
695         initialize_tdesc_powerpc_isa207_htm_vsx64l.
696         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
697         Declare.
698         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
699         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
700         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
701         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
702         New fields.
703         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
704         Likewise.
705         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
706         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
707         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
708         New enum fields.
709         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
710         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
711         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
712         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
713         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
714         <PPC_CTAR_REGNUM>: Likewise.
715         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
716         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
717         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
718         (IS_CEFP_PSEUDOREG): Define.
719         (rs6000_register_name): Hide the upper halves of checkpointed VSX
720         registers.  Return names for the checkpointed DFP, VSX, and EFP
721         pseudo registers.
722         (rs6000_pseudo_register_type): Remove initial assert and raise an
723         internal error in the else clause instead.  Return types for the
724         checkpointed DFP, VSX, and EFP pseudo registers.
725         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
726         checkpointed DFP pseudo registers.
727         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
728         checkpointed VSX pseudo registers.
729         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
730         from efpr_pseudo_register_read and
731         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
732         registers.
733         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
734         Handle checkpointed DFP, VSX, and EFP registers.
735         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
736         (efp_ax_pseudo_register_collect): New functions.
737         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
738         register logic to new functions.  Handle checkpointed DFP, VSX,
739         and EFP pseudo registers.
740         (rs6000_gdbarch_init): Look for and validate the htm features.
741         Include checkpointed DFP, VSX and EFP pseudo-registers.
742         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
743         HTM registers.
744
745 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
746
747         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
748         without altivec or fpu.
749
750 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
751             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
752
753         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
754         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
755         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
756         Define if not already defined.
757         * features/rs6000/power-ebb.xml: New file.
758         * features/rs6000/power-linux-pmu.xml: New file.
759         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
760         features.
761         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
762         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
763         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
764         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
765         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
766         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
767         fetch_regset with ebb and pmu regsets.
768         (store_register, store_ppc_registers): Call store_regset with ebb
769         and pmu regsets.
770         (ppc_linux_nat_target::read_description): Set isa207 field in the
771         features struct if ebb and pmu are avaiable.
772         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
773         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
774         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
775         and pmu regsets.
776         (ppc_linux_core_read_description): Check if the pmu section is
777         present and set isa207 in the features struct.
778         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
779         (ppc32_linux_pmuregset): Declare.
780         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
781         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
782         <ppc_sier_regnum>: New field.
783         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
784         New enum values.
785         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
786         values.
787         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
788         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
789         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
790         ebb and pmu features.
791
792 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
793             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
794
795         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
796         (tdesc_powerpc_isa207_vsx64l): Declare.
797         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
798         (struct ppc_linux_features) <isa207>: New field.
799         (ppc_linux_no_features): Add initializer for isa207 field.
800         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
801         new tdescs.
802         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
803         (NT_PPC_TAR): Define if not already defined.
804         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
805         rs6000/powerpc-isa207-vsx64l.
806         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
807         rs6000/powerpc-isa207-vsx64l.xml.
808         * features/rs6000/power-tar.xml: New file.
809         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
810         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
811         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
812         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
813         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
814         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
815         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
816         fetch_regset with the TAR regset.
817         (store_register, store_ppc_registers): Call store_regset with the
818         TAR regset.
819         (ppc_linux_nat_target::read_description): Set isa207 field in the
820         features struct if needed.
821         * ppc-linux-tdep.c: Include
822         features/rs6000/powerpc-isa207-vsx32l.c and
823         features/rs6000/powerpc-isa207-vsx64l.c.
824         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
825         (ppc_linux_iterate_over_regset_sections): Call back with the tar
826         regset.
827         (ppc_linux_core_read_description): Check if the tar section is
828         present and set isa207 in the features struct.
829         (_initialize_ppc_linux_tdep): Call
830         initialize_tdesc_powerpc_isa207_vsx32l and
831         initialize_tdesc_powerpc_isa207_vsx64l.
832         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
833         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
834         (enum) <PPC_TAR_REGNUM>: New enum value.
835         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
836         feature.
837         (ppc_process_record_op31): Record changes to TAR.
838
839 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
840             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
841
842         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
843         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
844         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
845         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
846         (struct ppc_linux_features) <ppr_dscr>: New field.
847         (ppc_linux_no_features): Add initializer for ppr_dscr field.
848         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
849         new tdescs.
850         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
851         Define if not already defined.
852         * features/Makefile (WHICH): Add
853         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
854         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
855         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
856         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
857         * features/rs6000/power-dscr.xml: New file.
858         * features/rs6000/power-ppr.xml: New file.
859         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
860         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
861         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
862         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
863         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
864         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
865         * ppc-linux-nat.c: Include <sys/uio.h>.
866         (fetch_regset, store_regset, check_regset): New functions.
867         (fetch_register, fetch_ppc_registers): Call fetch_regset with
868         DSCR and PPR regsets.
869         (store_register, store_ppc_registers): Call store_regset with
870         DSCR and PPR regsets.
871         (ppc_linux_get_hwcap2): New function.
872         (ppc_linux_nat_target::read_description): Call
873         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
874         features struct if needed.
875         * ppc-linux-tdep.c: Include
876         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
877         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
878         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
879         (ppc32_linux_dscrregset): New globals.
880         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
881         and dscr regsets.
882         (ppc_linux_core_read_description): Check if the ppr and dscr
883         sections are present and set ppr_dscr in the features struct.
884         (_initialize_ppc_linux_tdep): Call
885         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
886         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
887         * ppc-linux-tdep.h (ppc32_linux_pprregset)
888         (ppc32_linux_dscrregset): Declare.
889         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
890         <ppc_dscr_regnum>: New field.
891         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
892         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
893         and dscr features.
894         (ppc_process_record_op31): Record changes to PPR and DSCR.
895
896 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
897
898         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
899         second initializer line for the have_* variables.  Initialize
900         have_fpu to 0 instead of 1.
901
902 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
903
904         * arch/ppc-linux-common.c (ppc_linux_match_description):
905         Parenthesize tdesc assignements and indent them properly.
906
907 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
908
909         * ppc-linux-nat.c (fetch_register): Change if statement to else
910         if.
911         (store_register): Likewise.
912
913 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
914
915         * rs6000-tdep.c: Remove reggroups.h include.
916         (rs6000_pseudo_register_reggroup_p): Remove.
917         (rs6000_gdbarch_init): Remove call to
918         set_tdesc_pseudo_register_reggroup_p.
919
920 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
921
922         * reggroups.c (default_register_reggroup_p): Return true for
923         decfloat registers and float_reggroup.
924
925 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
926
927         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
928         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
929         ppc_linux_collect_vrregset by regcache_collect_regset.
930
931 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
932
933         * linux-tdep.c (linux_collect_regset_section_cb): Use
934         std::vector<gdb_byte> instead of char * and malloc for buf.
935         Remove xfree.
936
937 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
938
939         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
940         symtab_start instead of always using language_unknown.
941
942 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
943
944         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
945         READ_P parameter, catch and ignore register access errors from
946         either the old or new MISA location.
947         (riscv_has_feature): Update call to riscv_read_misa_reg.
948
949 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
950
951         * python/py-function.c (convert_values_to_python): Return
952         gdbpy_ref<>.  Add header comment.
953         (fnpy_call): Adjust.
954
955 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
956
957         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
958         (cmdpy_completer_handle_brkchars): Adjust.
959         (cmdpy_completer): Adjust.
960
961 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
962
963         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
964         Pass correct regnum to raw_supply_zeroed.
965
966 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
967
968         * regcache.c (cooked_read_test): Add CSKY to the list of
969         architectures with a save_reggroup
970
971 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
972
973         PR gdb/23368
974         * infrun.c (follow_exec): In the follow_exec_mode_new case,
975         transfer terminal state from old new new inferior.
976         * terminal.h (swap_terminal_info): New function.
977         * inflow.c (swap_terminal_info): New function.
978
979 2018-10-23  Tom Tromey  <tom@tromey.com>
980
981         * record-btrace.c (get_thread_current_frame_id): Rename from
982         get_thread_current_frame.  Return a frame_id.
983         (record_btrace_start_replaying): Update.
984
985 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
986
987         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
988         for CSRs.
989
990 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
991
992         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
993         have_nonsteppable_watchpoint attribute to 1.
994
995 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
996
997         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
998         register names.
999         (struct register_alias): Rename to...
1000         (struct riscv_register_alias): ...this, and update comment.
1001         (riscv_register_aliases): Update type, and alias names.  Remove
1002         CSR names from this list.
1003         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1004         register names.  Add an extra assertion.
1005         (riscv_is_regnum_a_named_csr): New function.
1006         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1007
1008 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1009
1010         * configure.tgt: Add configuration for s12z.
1011         * s12z-tdep.c:  New file.
1012         * NEWS: Mention new target.
1013
1014 2018-10-22  Jim Wilson  <jimw@sifive.com>
1015
1016         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1017         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1018
1019         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1020         (riscv_register_type): Use them.
1021         (riscv_print_one_register_info): Handle union of floats same as float.
1022         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1023         riscv_fpreg_q_type fields.
1024
1025 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1026
1027         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1028         * gdbarch.h: Re-generate.
1029         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1030         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1031         * eval.c (evaluate_subexp_standard): Likewise.
1032         * findvar.c (value_of_register): Likewise.
1033         (value_of_register_lazy): Likewise.
1034         (address_from_register): Likewise.
1035         * frame.c (get_frame_register_bytes): Likewise.
1036         * gdbarch-selftests.c (register_to_value_test): Likewise.
1037         * h8300-tdep.c (h8300_register_type): Likewise.
1038         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1039         (i386_svr4_reg_to_regnum): Likewise.
1040         * infcmd.c (default_print_registers_info): Likewise.
1041         (registers_info): Likewise.
1042         (print_vector_info): Likewise.
1043         (default_print_float_info): Likewise.
1044         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1045         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1046         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1047         (mi_cmd_data_list_changed_registers): Likewise.
1048         (mi_cmd_data_list_register_values): Likewise.
1049         (mi_cmd_data_write_register_values): Likewise.
1050         (mi_cmd_trace_frame_collected): Likewise.
1051         * mips-tdep.c (print_gp_register_row): Likewise.
1052         (mips_print_registers_info): Likewise.
1053         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1054         * regcache.c (init_regcache_descr): Likewise.
1055         (register_size): Likewise.
1056         (register_dump::dump): Likewise.
1057         (cooked_read_test): Likewise.
1058         (cooked_write_test): Likewise.
1059         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1060         (rs6000_gdbarch_init): Likewise.
1061         * stabsread.c (stab_reg_to_regnum): Likewise.
1062         * stack.c (info_frame_command): Likewise.
1063         * target-descriptions.c (tdesc_register_name): Likewise.
1064         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1065         * tui/tui-regs.c (tui_show_register_group): Likewise.
1066         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1067         (user_reg_map_regnum_to_name): Likewise.
1068         (value_of_user_reg): Likewise.
1069         (maintenance_print_user_registers): Likewise.
1070         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1071         (xtensa_register_name): Likewise.
1072         (xtensa_register_type): Likewise.
1073         (xtensa_reg_to_regnum): Likewise.
1074         (xtensa_pseudo_register_read): Likewise.
1075         (xtensa_pseudo_register_write): Likewise.
1076
1077 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1078
1079         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1080         correctly-sized buffer with raw_read.
1081         (amd64_pseudo_register_write): Use correctly-sized buffer for
1082         raw_read/raw_write.
1083
1084 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1085
1086         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1087         in add_prefix_cmd of set print type.
1088
1089 2018-10-19  Tom Tromey  <tom@tromey.com>
1090
1091         PR tui/18388:
1092         * NEWS: Mention tabset deprecation.
1093         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1094         (update_tab_width): New function.
1095         (tui_set_tab_width, tui_show_tab_width): New functions.
1096         (tui_set_tab_width_command): Use update_tab_width.
1097         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1098         Add new "set tui tab-width" command.
1099         * tui/tui-source.c (tui_set_source_content): Update.
1100         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1101         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1102         Don't declare.
1103         (tui_tab_width): Declare.
1104         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1105         (tui_set_default_tab_len): Remove.
1106
1107 2018-10-19  Tom Tromey  <tom@tromey.com>
1108
1109         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1110         (key_is_backspace, tui_getc): Don't declare.
1111         * tui/tui-io.c (key_is_start_sequence): Now static.
1112         (key_is_end_sequence, key_is_backspace): Remove.
1113         (tui_getc): Now static.
1114
1115 2018-10-19  Tom Tromey  <tom@tromey.com>
1116
1117         * symfile.c (reread_symbols): Clear "static_links".
1118
1119 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1120
1121         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1122         define.
1123         (aarch64_linux_sigframe_init): Extra boundary checks.
1124
1125 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1126
1127         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1128         the possibly non-existent tdesc type 'vec128', but the type of raw
1129         register v16 instead.
1130
1131 2018-10-19  Gary Benson <gbenson@redhat.com>
1132
1133         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1134
1135 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1136
1137         PR cli/23785
1138         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1139         NULL.
1140
1141 2018-10-17  Paul Koning  <paul_koning@dell.com>
1142
1143         * charset.c (convert_between_encodings): Fix unsigned overflow.
1144
1145 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1146
1147         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1148         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1149         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1150         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1151         New functions.
1152         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1153         and fbsd_info_proc_mappings_header.
1154         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1155         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1156         New.
1157
1158 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1159
1160         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1161         Solaris Maintainer.
1162
1163 2018-10-15  Tom Tromey  <tom@tromey.com>
1164
1165         * tui/tui.c (strcat_to_buf): Remove casts.
1166         * tui/tui-winsource.c (tui_show_source_line)
1167         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1168         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1169         * tui/tui-windata.c (tui_first_data_item_displayed)
1170         (tui_delete_data_content_windows, tui_erase_data_content)
1171         (tui_display_all_data, tui_display_data_from)
1172         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1173         * tui/tui-win.c (tui_set_win_height)
1174         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1175         casts.
1176         * tui/tui-win.c (tui_resize_all): Remove casts.
1177         (tui_scroll_backward_command, tui_set_focus)
1178         (tui_set_tab_width_command): Likewise.
1179         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1180         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1181         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1182         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1183         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1184         Remove casts.
1185
1186 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1187
1188         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1189         AArch64/ARM maintainer.
1190
1191 2018-10-11  Gary Benson <gbenson@redhat.com>
1192
1193         * interps.h (interp::m_name): Make private and mutable.
1194         * interps.c (interp::~interp): Free m_name.
1195
1196 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1197             Simon Marchi <simark@simark.ca>
1198
1199         * README (`configure' options): Add documentation for new
1200         "--enable-unit-tests" option.
1201         * acinclude.m4: Include "selftest.m4".
1202         * configure: Regenerate.
1203         * configure.ac: Use "GDB_AC_SELFTEST".
1204         * maint.c (maintenance_selftest): Update message informing
1205         that selftests have been disabled.
1206         (maintenance_info_selftests): Likewise.
1207         * selftest.m4: New file.
1208
1209 2018-10-10  Gary Benson <gbenson@redhat.com>
1210
1211         * remote.c (remote_target::remote_send_printf): Add
1212         missing va_end found by Coverity.
1213
1214 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1215
1216         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1217
1218 2018-10-09  Tom Tromey  <tom@tromey.com>
1219
1220         * configure: Rebuild.
1221         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1222         * NEWS: Update --enable-ubsan documentation.
1223
1224 2018-10-09  Gary Benson <gbenson@redhat.com>
1225
1226         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1227         found by Coverity.
1228
1229 2018-10-08  Tom Tromey  <tom@tromey.com>
1230
1231         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1232         variable.
1233         (riscv_fbsd_init_abi): Likewise.
1234
1235 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1236         * valops.c (value_struct_elt_for_reference): Rename local variable
1237         to work around the shadowing a previous local warning.
1238
1239 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1240
1241         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1242         * NEWS: Mention new FreeBSD/riscv native configuration.
1243         * configure.host: Add riscv*-*-freebsd*.
1244         * configure.nat: Likewise.
1245         * riscv-fbsd-nat.c: New file.
1246
1247 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1248
1249         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1250         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1251         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1252         * NEWS: Mention new FreeBSD/riscv target.
1253         * configure.tgt: Add riscv*-*-freebsd*.
1254         * riscv-fbsd-tdep.c: New file.
1255         * riscv-fbsd-tdep.h: New file.
1256
1257 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1258
1259         * regcache.h (struct regcache_map_entry): Note that this type can
1260         be used with traditional frame caches.
1261         * trad-frame.c (trad_frame_set_reg_regmap): New.
1262         * trad-frame.h (trad_frame_set_reg_regmap): New.
1263
1264 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1265
1266         PR c++/16841
1267         * valops.c (get_virtual_base_offset): New function.
1268         (value_struct_elt_for_reference): Use it to get virtual base offset
1269         and add it in calculating class member address.
1270
1271 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1272
1273     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1274       (check_producer): Check if the producer is codewarrior.
1275       (producer_is_codewarrior): New function.
1276       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1277        produced by codewarrior.
1278       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1279
1280 2018-10-06  Tom Tromey  <tom@tromey.com>
1281
1282         PR python/19399:
1283         * python/py-inferior.c: Add "architecture" entry.
1284         (infpy_architecture): New function.
1285
1286 2018-10-06  Tom Tromey  <tom@tromey.com>
1287
1288         PR python/21765:
1289         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1290         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1291         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1292         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1293
1294 2018-10-06  Tom Tromey  <tom@tromey.com>
1295
1296         PR build/17077:
1297         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1298         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1299         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1300         #include.
1301
1302 2018-10-06  Tom Tromey  <tom@tromey.com>
1303
1304         * python/py-breakpoint.c (bppy_get_location): Handle a
1305         bp_breakpoint without a location.
1306
1307 2018-10-06  Tom Tromey  <tom@tromey.com>
1308
1309         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1310         (_RegEx): Reformat help text.
1311         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1312         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1313         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1314         text.
1315         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1316         (EnableXMethod, DisableXMethod): Remove help indentation.
1317         Capitalize meta-syntactic variables.
1318         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1319         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1320         Capitalize meta-syntactic variables.
1321         * python/lib/gdb/command/explore.py (ExploreCommand)
1322         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1323         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1324         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1325         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1326         Remove help indentation.
1327         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1328         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1329         (DisableFrameFilter, SetFrameFilterPriority)
1330         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1331
1332 2018-10-06  Tom Tromey  <tom@tromey.com>
1333
1334         PR tui/28819:
1335         * tui/tui-io.c (gdb_wgetch): New function.
1336         (tui_mld_getc, tui_getc): Use it.
1337
1338 2018-10-05  Tom Tromey  <tom@tromey.com>
1339
1340         * sol-thread.c (sol_thread_target::wait): Rename inner
1341         "save_ptid".
1342
1343 2018-10-04  Tom Tromey  <tom@tromey.com>
1344
1345         * configure: Rebuild.
1346         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1347
1348 2018-10-04  Tom Tromey  <tom@tromey.com>
1349
1350         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1351         declaration of "block".
1352
1353 2018-10-04  Tom Tromey  <tom@tromey.com>
1354
1355         * common/filestuff.c (fdwalk): Remove inner declaration of
1356         "result".
1357
1358 2018-10-04  Tom Tromey  <tom@tromey.com>
1359
1360         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1361         "structs_addr" and hoist declaration.
1362
1363 2018-10-04  Tom Tromey  <tom@tromey.com>
1364
1365         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1366         variable "size".
1367
1368 2018-10-04  Tom Tromey  <tom@tromey.com>
1369
1370         * mdebugread.c (parse_partial_symbols): Use std::string.
1371
1372 2018-10-04  Tom Tromey  <tom@tromey.com>
1373
1374         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1375         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1376         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1377         header.
1378         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1379         more inner scope.
1380         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1381         * varobj.c (varobj_update): Rename inner "newobj",
1382         "type_changed".
1383         * valprint.c (generic_emit_char): Rename inner "buf".
1384         * valops.c (find_overload_match): Rename inner "temp".
1385         (value_struct_elt_for_reference): Declare "v" in more inner
1386         scope.
1387         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1388         * unittests/array-view-selftests.c (run_tests): Rename inner
1389         "vec".
1390         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1391         header.
1392         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1393         "tsv" in more inner scope.
1394         (print_one_static_tracepoint_marker): Rename inner
1395         "tuple_emitter".
1396         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1397         (tic6x_push_dummy_call): Don't redeclare "addr".
1398         * target-float.c: Declare "dto" lower.
1399         * symtab.c (lookup_local_symbol): Rename inner "sym".
1400         (find_pc_sect_line): Rename inner "pc".
1401         * stack.c (print_frame): Don't redeclare "gdbarch".
1402         (return_command): Rename inner "gdbarch".
1403         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1404         "sp".
1405         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1406         header.
1407         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1408         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1409         scope.
1410         * remote.c (remote_target::update_thread_list): Don't redeclare
1411         "tp".
1412         (remote_target::process_initial_stop_replies): Rename inner
1413         "thread".
1414         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1415         (remote_target::wait_as): Don't redeclare "stop_reply".
1416         (remote_target::get_thread_local_address): Rename inner
1417         "result".
1418         (remote_target::get_tib_address): Likewise.
1419
1420         * regcache.c (cooked_read_test): Rename "regnum".
1421         * record-btrace.c (cmd_record_btrace_start): Rename inner
1422         "exception".
1423         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1424         loop header.
1425         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1426         header.
1427         (ppu2spu_sniffer): Rename inner "buf".
1428         * parse.c (operator_check_standard): Rename inner "type",
1429         "objfile".
1430         * p-valprint.c (pascal_val_print): Introduce new scope for
1431         "low_bound", "high_bound".
1432         * p-exp.y (yylex): Declare "i" in loop header.
1433         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1434         Lower declaration of "s".
1435         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1436         header.
1437         (nios2_push_dummy_call): Rename "len".
1438         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1439         "buf".
1440         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1441         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1442         (linux_xfer_osdata_modules): Likewise.
1443         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1444         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1445         (mips_o64_push_dummy_call): Likewise.
1446         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1447         "op".
1448         * mi/mi-main.c (list_available_thread_groups): Rename inner
1449         "tuple_emitter".
1450         (mi_cmd_data_read_memory): Rename inner "opts".
1451         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1452         "tuple_emitter".
1453         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1454         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1455         more inner scope.
1456         (parse_partial_symbols): Rename inner "pst", "p", "name"
1457         * main.c (captured_main_1): Rename inner "i"s.
1458         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1459         "oso2".
1460         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1461         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1462         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1463         (handle_signal_stop): Rename inner "gdbarch".
1464         (handle_command): Declare "signum" in loop header.
1465         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1466         "status".
1467         (examine_prologue): Rename inner "sol" and "sof".
1468         (ia64_extract_return_value): Rename inner "val".  Declare another
1469         "val" in a more inner scope.
1470         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1471         inner scope.
1472         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1473         "except".
1474         * findvar.c (default_read_var_value): Don't redeclare "addr".
1475         * f-exp.y (yylex): Declare "i" in loop header.
1476         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1477         Rename inner "type", "expect_type".
1478         (evaluate_subexp_for_sizeof): Rename inner "pc".
1479         * elfread.c (elf_symfile_read): Rename inner "abfd".
1480         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1481         "bytes_read".
1482         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1483         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1484         (dwarf_decode_line_header): Rename inner "lh".
1485         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1486         "offset".  Declare "i" in loop header.
1487         (disassemble_dwarf_expression): Rename inner "addr_size".
1488         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1489         inner "result".
1490         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1491         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1492         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1493         "inner_list_emitter".
1494         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1495         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1496         declaration in a block.
1497         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1498         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1499         "obstack_final_size".
1500         * cp-support.c (inspect_type): Declare "i" in loop header.
1501         * compile/compile.c (compile_instance::insert_symbol_error):
1502         Rename inner "e".
1503         * common/agent.c (agent_run_command): Remove inner "ret"
1504         declaration.
1505         * coffread.c (coff_symfile_read): Rename inner "name".
1506         (coff_symfile_read): Rename inner "abfd".
1507         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1508         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1509         "high".
1510         * c-exp.y (lex_one_token): Move "len" declaration lower.
1511         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1512         "gdbarch".
1513         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1514         "b".
1515         (watch_command_1): Declare "mark" later.
1516         (clear_command): Don't shadow "a" or "b".
1517         (delete_command): Rename inner "b".
1518         (delete_trace_command): Likewise.
1519         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1520         "op".
1521         (arm_gdbarch_init): Remove inner "e_flags".
1522         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1523         "offset" in inner blocks.
1524
1525 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1526
1527         * dwarf-index-write.c (file_write): Don't write if the vector is
1528         empty.
1529
1530 2018-10-05  Tom de Vries  <tdevries@suse.de>
1531
1532         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1533         PyArg_ParseTuple call.
1534
1535 2018-10-05  Tom de Vries  <tdevries@suse.de>
1536
1537         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1538         PyArg_ParseTuple call.
1539
1540 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1541
1542         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1543         to avoid exceeding 80 characters per line limit.
1544
1545 2018-10-04  Tom Tromey  <tom@tromey.com>
1546
1547         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1548         (reread_symbols): Update.
1549         * complaints.h (clear_complaints): Remove argument.
1550         * complaints.c (enum complaint_series): Remove.
1551         (series): Remove global.
1552         (complaint_internal): Update.
1553         (clear_complaints): Remove argument.
1554
1555 2018-10-04  Tom Tromey  <tom@tromey.com>
1556
1557         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1558         debugging symbols" message if there is a separate debug objfile.
1559
1560 2018-10-04  Tom Tromey  <tom@tromey.com>
1561
1562         PR cli/19551:
1563         * symfile.c (symbol_file_add_with_addrs): Update output.
1564         * psymtab.c (require_partial_symbols): Update output.
1565
1566 2018-10-04  Tom Tromey  <tom@tromey.com>
1567
1568         PR cli/22234:
1569         * complaints.c: Emit \n.
1570
1571 2018-10-04  Tom Tromey  <tom@tromey.com>
1572
1573         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1574         (separate_debug_file_exists, find_separate_debug_file)
1575         (add_symbol_file_command, reread_symbols, allocate_symtab)
1576         (allocate_compunit_symtab): Use filtered printing, not
1577         unfiltered.
1578         * psymtab.c (require_partial_symbols, dump_psymtab)
1579         (allocate_psymtab): Use filtered printing, not unfiltered.
1580
1581 2018-10-04  Tom Tromey  <tom@tromey.com>
1582
1583         * complaints.c (complaint_internal): Correctly check complaint
1584         count.
1585
1586 2018-10-04  Tom Tromey  <tom@tromey.com>
1587
1588         * complaints.h (struct complaints): Remove declaration.
1589         * complaints.c (clear_complaints): Remove an unused variable.
1590
1591 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1592
1593         * MAINTAINERS (Write After Approval): Add self.
1594
1595 2018-10-03  Tom Tromey  <tom@tromey.com>
1596
1597         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1598         "buffer_contents".
1599         * coffread.c (coff_symtab_read): Initialize "newobj".
1600
1601 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1602
1603         * dwarf2read.c (read_func_scope): Remove struct keyword in
1604         range-based for.
1605
1606 2018-10-03  Tom Tromey  <tom@tromey.com>
1607
1608         * README: Mention --enable-ubsan.
1609         * NEWS: Mention --enable-ubsan.
1610         * acinclude.m4: Include sanitize.m4.
1611         * configure: Rebuild.
1612         * configure.ac: Call AM_GDB_UBSAN.
1613         * sanitize.m4: New file.
1614
1615 2018-10-03  Tom Tromey  <tom@tromey.com>
1616
1617         * expression.h (enum exp_opcode): Use uint8_t as base type.
1618         * expprint.c (op_name): Handle invalid opcodes.
1619
1620 2018-10-03  Tom Tromey  <tom@tromey.com>
1621
1622         * parse.c (prefixify_expression): Add assert.
1623         (parse_exp_in_context_1): Throw exception if the expression is
1624         empty.
1625
1626 2018-10-03  Tom Tromey  <tom@tromey.com>
1627
1628         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1629
1630 2018-10-03  Tom Tromey  <tom@tromey.com>
1631
1632         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1633
1634 2018-10-03  Tom Tromey  <tom@tromey.com>
1635
1636         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1637         unsigned.
1638
1639 2018-10-03  Tom Tromey  <tom@tromey.com>
1640
1641         * findvar.c (extract_integer): Do work in an unsigned type.
1642
1643 2018-10-03  Tom Tromey  <tom@tromey.com>
1644
1645         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1646         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1647         base type.
1648         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1649         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1650         type.
1651         * c-lang.h (enum c_string_type_values): Use unsigned as base
1652         type.
1653         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1654
1655 2018-10-03  Tom Tromey  <tom@tromey.com>
1656
1657         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1658         <~dwarf2_frame_state_reg_info>: Update.
1659         <dwarf2_frame_state_reg_info>: Update.
1660         <alloc_regs>: Add assertion.  Update.
1661         <reg>: Now a std::vector.
1662         <num_regs>: Remove.
1663         <swap>: Update.
1664         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1665         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1666
1667 2018-10-03  Tom Tromey  <tom@tromey.com>
1668
1669         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1670
1671 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1672
1673         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1674
1675 2018-10-02  Tom Tromey  <tom@tromey.com>
1676
1677         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1678
1679 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1680
1681         * NEWS: Mention changed commands.
1682         * ser-uds.c: New file.
1683         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1684         * configure: Regenerate.
1685         * Makefile.in: Add new file.
1686         * serial.c (serial_open): Check if filename is a socket
1687           and lookup the appropriate interface accordingly.
1688
1689 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1690
1691         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1692         define.
1693         (AARCH64_EXTRA_MAGIC): Likewise.
1694         (AARCH64_FPSIMD_MAGIC): Likewise.
1695         (AARCH64_SVE_MAGIC): Likewise.
1696         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1697         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1698         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1699         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1700         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1701         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1702         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1703         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1704         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1705         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1706         (read_aarch64_ctx): Add function.
1707         (aarch64_linux_sigframe_init): Detect FP registers.
1708
1709 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1710
1711         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1712         (AARCH64_D0_REGNUM): Likewise.
1713         (AARCH64_S0_REGNUM): Likewise.
1714         (AARCH64_H0_REGNUM): Likewise.
1715         (AARCH64_B0_REGNUM): Likewise.
1716         (AARCH64_SVE_V0_REGNUM): Likewise.
1717         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1718         (AARCH64_D0_REGNUM): Likewise.
1719         (AARCH64_S0_REGNUM): Likewise.
1720         (AARCH64_H0_REGNUM): Likewise.
1721         (AARCH64_B0_REGNUM): Likewise.
1722         (AARCH64_SVE_V0_REGNUM): Likewise.
1723
1724 2018-10-01  Gary Benson <gbenson@redhat.com>
1725
1726         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1727         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1728         prfpregset_t instead of gdb_prfpregset_t.
1729         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1730         * configure, config.in: Rebuild.
1731
1732 2018-10-01  Gary Benson <gbenson@redhat.com>
1733
1734         * common/gdb_proc_service.h: New file, factored out from...
1735         * gdb_proc_service.h: Moved common code to the above file.
1736         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1737
1738 2018-10-01  Gary Benson <gbenson@redhat.com>
1739
1740         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1741         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1742
1743 2018-10-01  Gary Benson <gbenson@redhat.com>
1744
1745         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1746         (AC_CHECK_HEADERS): Check for linux/elf.h.
1747         * configure, config.in: Rebuild.
1748         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1749         doesn't define elf_fpregset_t.
1750
1751 2018-10-01  Gary Benson <gbenson@redhat.com>
1752
1753         * gdb_proc_service.h: Whitespace change.
1754
1755 2018-10-01  Tom Tromey  <tom@tromey.com>
1756
1757         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1758         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1759         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1760
1761 2018-10-01  Tom Tromey  <tom@tromey.com>
1762
1763         * README: Minor change.
1764
1765 2018-09-30  Pedro Alves  <palves@redhat.com>
1766
1767         * darwin-nat-info.c (darwin_debug_regions_recurse)
1768         (info_mach_exceptions_command): Remove unused local variables.
1769         * darwin-nat.c (darwin_decode_notify_message)
1770         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1771         (darwin_stop_inferior, darwin_setup_exceptions)
1772         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1773         (darwin_nat_target::attach, darwin_nat_target::detach)
1774         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1775         local variables.
1776         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1777         variables.
1778
1779 2018-09-29  Tom Tromey  <tom@tromey.com>
1780
1781         * README: Remove some leftover text.
1782
1783 2018-09-29  Tom Tromey  <tom@tromey.com>
1784
1785         * PROBLEMS: Rewrite.
1786         * README: Update.
1787
1788 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1789
1790         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1791         case with explicit breakpoint kind.
1792         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1793         'additional_info' and related logic.
1794         (riscv_debug_breakpoints): New variable.
1795         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1796         instruction to determine the breakpoint kind.
1797         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1798         flag.  Update description of 'set/show riscv
1799         use-compressed-breakpoints' flag.
1800
1801 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1802
1803         (NEWS): Mention changes to frame related commands.
1804         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1805         (add_prefix_cmd_suppress_notification): New function.
1806         (add_com_suppress_notification): Call
1807         add_cmd_suppress_notification.
1808         * command.h (add_cmd_suppress_notification): Declare.
1809         (add_prefix_cmd_suppress_notification): Declare.
1810         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1811         (parse_frame_specification): Moved from stack.c, with
1812         simplification to handle a single argument.
1813         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1814         switch to the selected frame.  Add a header comment.
1815         * stack.c: Remove 'safe-ctype.h' include.
1816         (find_frame_for_function): Add declaration.
1817         (find_frame_for_address): New function.
1818         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1819         (frame_selection_by_function_completer): New function.
1820         (info_frame_command): Rename to...
1821         (info_frame_command_core): ...this, and update parameter types.
1822         (select_frame_command): Rename to...
1823         (select_frame_command_core): ...this, and update parameter types.
1824         (frame_command): Rename to...
1825         (frame_command_core): ...this, and update parameter types.
1826         (class frame_command_helper): New class to wrap implementations of
1827         frame related sub-commands.
1828         (frame_apply_cmd_list): New static global.
1829         (frame_cmd_list): Make static.
1830         (select_frame_cmd_list): New global for sub-commands.
1831         (info_frame_cmd_list): New global for sub-commands.
1832         (_initialize_stack): Register sub-commands for 'frame',
1833         'select-frame', and 'info frame'.  Update 'frame apply' commands
1834         to use frame_apply_cmd_list.  Move function local static
1835         frame_apply_list to file static frame_apply_cmd_list for
1836         consistency.
1837         * stack.h (select_frame_command): Delete declarationn.
1838         (select_frame_for_mi): Declare new function.
1839
1840 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1841
1842         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1843         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1844         and NOP.
1845
1846 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1847
1848         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1849
1850 2018-09-26  Tom Tromey  <tom@tromey.com>
1851
1852         * valops.c (auto_abandon): Remove dead code.
1853
1854 2018-09-26  Tom Tromey  <tom@tromey.com>
1855
1856         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1857
1858 2018-09-24  Tom Tromey  <tom@tromey.com>
1859
1860         * common/pathstuff.c (get_standard_cache_dir): Make
1861         "xdg_cache_home" and "home" const.
1862         * top.c (init_history): Make "tmpenv" const.
1863         * main.c (get_init_files): Make "homedir" const.
1864
1865 2018-09-23  Tom Tromey  <tom@tromey.com>
1866
1867         PR python/18852:
1868         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1869
1870 2018-09-23  Tom Tromey  <tom@tromey.com>
1871
1872         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1873         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1874         * python/python-internal.h (gdbpy_handle_exception): Declare.
1875         * python/py-utils.c (gdbpy_handle_exception): New function.
1876
1877 2018-09-23  Tom Tromey  <tom@tromey.com>
1878
1879         PR python/17284:
1880         * python/py-type.c (typy_template_argument): Check for negative
1881         argument number.
1882
1883 2018-09-23  Tom Tromey  <tom@tromey.com>
1884
1885         PR python/14062:
1886         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1887
1888 2018-09-23  Tom Tromey  <tom@tromey.com>
1889
1890         PR python/18170:
1891         * python/py-value.c (valpy_int): Allow conversion from pointer
1892         type.
1893
1894 2018-09-23  Tom Tromey  <tom@tromey.com>
1895
1896         PR python/20126:
1897         * python/py-value.c (valpy_int): Respect type sign.
1898
1899 2018-09-23  Tom Tromey  <tom@tromey.com>
1900
1901         PR python/18352;
1902         * python/py-value.c (valpy_float): Allow conversions from int or
1903         char.
1904         (valpy_int, valpy_long): Allow conversions from float.
1905
1906 2018-09-23  Tom Tromey  <tom@tromey.com>
1907
1908         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1909         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1910
1911 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1912
1913         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1914         __sighndlr.
1915         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1916
1917 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1918
1919         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1920         target_terminal::ours().
1921
1922 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1923
1924         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1925         of vl to ULONGEST.
1926
1927 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1928
1929         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1930         redundant condition.
1931
1932 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1933
1934         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1935
1936         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1937         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1938         * sol-thread.c (ps_pdmodel): Don't guard definition.
1939
1940         * procfs.c: Fix formatting.
1941
1942         * procfs.c (sysset_t_alloc): Remove.
1943         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1944         (procfs_debug_inferior): Likewise.
1945         (procfs_set_exec_trap): Likewise.
1946         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1947         (proc_set_traced_sysexit): Likewise.
1948
1949         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1950         (dead_procinfo): Likewise.
1951         (proc_warn): Likewise.
1952         (proc_error): Likewise.
1953         (proc_get_LDT_entry): Likewise.
1954         (do_attach): Likewise.
1955         (procfs_target::pid_to_str): Likewise.
1956         (iterate_over_mappings): Likewise.
1957
1958         * procfs.c (create_procinfo): Fix ARI warning.
1959         (proc_get_status): Likewise.
1960         (proc_stop_process): Likewise.
1961         (proc_run_process): Likewise.
1962         (proc_kill): Likewise.
1963         (proc_get_LDT_entry): Likewise.
1964         (procfs_find_LDT_entry): Likewise.
1965         (proc_update_threads): Likewise.
1966         (proc_iterate_over_threads): Likewise.
1967         (do_attach): Likewise.
1968         (procfs_xfer_memory): Likewise.
1969         (invalidate_cache): Likewise.
1970         (procfs_target::resume): Likewise.
1971         (procfs_init_inferior): Likewise.
1972         (procfs_set_exec_trap): Likewise.
1973         (procfs_target::thread_alive): Likewise.
1974         (procfs_target::pid_to_exec_file): Likewise.
1975         (iterate_over_mappings): Likewise.
1976         (procfs_target::make_corefile_notes): Likewise.
1977         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1978
1979         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1980         (procfs_find_LDT_entry): Likewise.
1981         * sol-thread.c (ps_lgetLDT): Likewise.
1982
1983 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1984
1985         PR tdep/17903
1986         * procfs.c (procfs_target): Declare pid_to_exec_file.
1987         (procfs_target::pid_to_exec_file): New.
1988
1989 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1990
1991         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1992         renaming.
1993         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1994         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1995
1996 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1997
1998         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1999         (supply_fpregset, fill_fpregset): Move ...
2000         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2001         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2002         Remove references to ioctl-based procfs.
2003         Include <sys/reg.h>.
2004         Remove PR_MODEL_NATIVE guards.
2005         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2006         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2007
2008 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2009
2010         PR gdb/20981:
2011         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2012         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2013         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2014
2015 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2016
2017         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2018         (fbsd_print_sockaddr_in6): Likewise.
2019
2020 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2021             Chris January  <chris.january@arm.com>
2022
2023         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2024         (evaluate_subexp_standard): Return a dummy type when
2025         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2026         OP_F77_UNDETERMINED_ARGLIST case.
2027         * expression.h (enum noside): Update comment.
2028
2029 2018-09-19  George Vasick <george.vasick@oracle.com>
2030
2031         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2032
2033 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2034             April Chin <april.chin@oracle.com>
2035             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2036
2037         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2038         uint_t lwpid_t.
2039         (create_procinfo): Print pids in /proc without leading zeros.
2040
2041 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2042
2043         * nios2-tdep.c (nios2_gcc_target_options): New.
2044         (nios2_gdb_arch_init): Install new hook.
2045
2046 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2047
2048         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2049         New file.
2050         * update-gnulib.sh: Apply patch.
2051         * configure: Re-generate.
2052
2053 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2054
2055         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2056         description.  Make "info proc" command descriptions more
2057         consistent.
2058
2059 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2060
2061         * NEWS: Mention 'info proc files' command.
2062
2063 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2064
2065         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2066         descriptors for IP_FILES and IP_ALL.
2067
2068 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2069
2070         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2071         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2072         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2073         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2074         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2075         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2076         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2077         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2078         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2079         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2080         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2081         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2082         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2083         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2084         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2085         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2086         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2087         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2088         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2089         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2090         (struct fbsd_sockaddr_un): New types.
2091         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2092         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2093         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2094         (fbsd_core_info_proc_files): New functions.
2095         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2096         IP_ALL.
2097         * fbsd-tdep.h (fbsd_info_proc_files_header)
2098         (fbsd_info_proc_files_entry): New.
2099
2100 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2101
2102         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2103         * infcmd.c (info_proc_cmd_files): New function.
2104         (_initialize_infcmd): Register 'info proc files' command.
2105
2106 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2107
2108         * gnulib/aclocal-m4-deps.mk: Re-generate.
2109         * gnulib/aclocal.m4: Re-generate.
2110         * gnulib/config.in: Re-generate.
2111         * gnulib/configure: Re-generate.
2112         * gnulib/import/Makefile.am: Re-generate.
2113         * gnulib/import/Makefile.in: Re-generate.
2114         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2115         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2116         * gnulib/import/arpa_inet.in.h: New file.
2117         * gnulib/import/inet_ntop.c: New file.
2118         * gnulib/import/m4/arpa_inet_h.m4: New file.
2119         * gnulib/import/m4/inet_ntop.m4: New file.
2120         * gnulib/import/m4/netinet_in_h.m4: New file.
2121         * gnulib/import/m4/socklen.m4: New file.
2122         * gnulib/import/m4/sockpfaf.m4: New file.
2123         * gnulib/import/m4/stdalign.m4: New file.
2124         * gnulib/import/m4/sys_uio_h.m4: New file.
2125         * gnulib/import/netinet_in.in.h: New file.
2126         * gnulib/import/stdalign.in.h: New file.
2127         * gnulib/import/sys_socket.c: New file.
2128         * gnulib/import/sys_socket.in.h: New file.
2129         * gnulib/import/sys_uio.in.h: New file.
2130         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2131         module.
2132
2133 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2134
2135         * gnulib/aclocal-m4-deps.mk: New file.
2136         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2137         deterministically.
2138
2139 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2140
2141         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2142         KVE_PATH.
2143
2144 2018-09-18  Tom Tromey  <tom@tromey.com>
2145
2146         * compile/compile-object-load.c (struct
2147         link_hash_table_cleanup_data): Add constructor and destructor.
2148         Use DISABLE_COPY_AND_ASSIGN.
2149         (~link_hash_table_cleanup_data): Rename from
2150         link_hash_table_free.  Now a destructor.
2151         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2152
2153 2018-09-18  Tom Tromey  <tom@tromey.com>
2154
2155         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2156         * compile/compile-object-load.c (struct munmap_list): Move to
2157         header file.
2158         (munmap_list::add): Rename from munmap_list_add; rewrite.
2159         (munmap_list::~munmap_list): Rename from munmap_list_free.
2160         (munmap_listp_free_cleanup): Remove.
2161         (compile_object_load): Update.
2162         * compile/compile-object-load.h (struct munmap_list): Move from
2163         compile-object-load.c.  Rewrite.
2164
2165 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2166
2167         * aarch64-tdep.c (pass_in_v): Use register size.
2168         (aarch64_extract_return_value): Likewise.
2169         (aarch64_store_return_value): Likewise.
2170
2171 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2172
2173         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2174         rlim_t.
2175
2176 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2177
2178         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2179         Fix short help line.
2180
2181 2018-09-17  Tom Tromey  <tom@tromey.com>
2182
2183         PR python/20445:
2184         * configure: Rebuild.
2185         * configure.ac: Conditionally use -DNDEBUG for Python.
2186
2187 2018-09-17  Tom Tromey  <tom@tromey.com>
2188
2189         * configure: Rebuild.
2190         * configure.ac: Use gmp as a library dependency when checking for
2191         mpfr.
2192
2193 2018-09-17  Pedro Alves  <palves@redhat.com>
2194
2195         * python/py-inferior.c (find_inferior_object): Delete.
2196
2197 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2198
2199         * compile/compile-cplus-types.c
2200         (compile_cplus_instance::enter_scope): Don't use new_scope after
2201         std::move.
2202
2203 2018-09-17  Tom Tromey  <tom@tromey.com>
2204
2205         * common/pathstuff.c (get_standard_cache_dir): Use
2206         ~/Library/Caches on macOS.
2207         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2208
2209 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2210
2211         PR python/23669
2212         * breakpoint.c (commands_cmd_element): New.
2213         (_initialize_breakpoint): Assign commands_cmd_element.
2214         * breakpoint.h (commands_cmd_element): New.
2215         * cli/cli-script.c (while_cmd_element, if_command,
2216         define_cmd_element): New.
2217         (command_name_equals): Remove.
2218         (process_next_line): Compare commands by pointer, not by name.
2219         (_initialize_cli_script): Assign the various cmd_list_element
2220         variables.
2221         * compile/compile.c (compile_cmd_element): New.
2222         (_initialize_compile): Assign compile_cmd_element.
2223         * compile/compile.h (compile_cmd_element): New.
2224         * guile/guile.c (guile_cmd_element): New.
2225         (install_gdb_commands): Assign guile_cmd_element.
2226         * guile/guile.h (guile_cmd_element): New.
2227         * python/python.c (python_cmd_element): New.
2228         (_initialize_python): Assign python_cmd_element.
2229         * python/python.h (python_cmd_element): New.
2230         * tracepoint.c (while_stepping_cmd_element): New.
2231         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2232         * tracepoint.h (while_stepping_cmd_element): New.
2233
2234 2018-09-17  Tom Tromey  <tom@tromey.com>
2235
2236         * infrun.c (save_infcall_suspend_state): Return
2237         infcall_suspend_state_up.
2238         (save_infcall_control_state): Return infcall_control_state_up.
2239         * inferior.h (save_infcall_suspend_state)
2240         (save_infcall_control_state): Declare later.  Return unique
2241         pointers.
2242
2243 2018-09-17  Tom Tromey  <tom@tromey.com>
2244
2245         * infrun.c (struct stop_context): Declare constructor,
2246         destructor, "changed" method.
2247         (stop_context::stop_context): Rename from save_stop_context.
2248         (stop_context::~stop_context): Rename from
2249         release_stop_context_cleanup.
2250         (normal_stop): Update.
2251         (stop_context::changed): Rename from stop_context_changed.  Return
2252         bool.
2253
2254 2018-09-17  Tom Tromey  <tom@tromey.com>
2255
2256         * inferior.h (struct infcall_suspend_state_deleter): New.
2257         (infcall_suspend_state_up): New typedef.
2258         (struct infcall_control_state_deleter): New.
2259         (infcall_control_state_up): New typedef.
2260         (make_cleanup_restore_infcall_suspend_state)
2261         (make_cleanup_restore_infcall_control_state): Don't declare.
2262         * infcall.c (call_function_by_hand_dummy): Update.
2263         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2264         (make_cleanup_restore_infcall_suspend_state): Remove.
2265         (do_restore_infcall_control_state_cleanup)
2266         (make_cleanup_restore_infcall_control_state): Remove.
2267
2268 2018-09-17  Tom Tromey  <tom@tromey.com>
2269
2270         * gdbthread.h (struct thread_control_state): Add initializer.
2271         (class thread_info) <control>: Remove initializer.
2272         * inferior.h (struct inferior_control_state): Add initializer.
2273         (class inferior) <control>: Remove initializer.
2274         (exit_inferior_1): Update.
2275         * infrun.c (struct infcall_control_state): Add constructors.
2276         (save_infcall_control_state): Use new.
2277         (restore_infcall_control_state, discard_infcall_control_state):
2278         Use delete.
2279
2280 2018-09-17  Tom Tromey  <tom@tromey.com>
2281
2282         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2283         unique_ptr.
2284         <siginfo_data>: Now a unique_xmalloc_ptr.
2285         (save_infcall_suspend_state, restore_infcall_suspend_state)
2286         (discard_infcall_suspend_state)
2287         (get_infcall_suspend_state_regcache): Update.
2288
2289 2018-09-17  Tom Tromey  <tom@tromey.com>
2290
2291         * gdbthread.h (struct thread_suspend_state): Add initializers.
2292         (class thread_info) <suspend>: Remove initializer.
2293         * infrun.c (struct infcall_suspend_state): Add initializers.
2294         (save_infcall_suspend_state): Use new.
2295         (discard_infcall_suspend_state): Use delete.
2296
2297 2018-09-16  Tom Tromey  <tom@tromey.com>
2298
2299         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2300         Remove.
2301         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2302         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2303         (py_varobj_iter_new): Likewise.
2304         (py_varobj_get_iterator): Use gdbpy_ref.
2305
2306 2018-09-16  Tom Tromey  <tom@tromey.com>
2307
2308         * python/py-threadevent.c (py_get_event_thread): Simplify.
2309         * python/py-inferior.c (infpy_thread_from_thread_handle):
2310         Return immediately after calling thread_to_thread_object.  Use
2311         Py_RETURN_NONE.
2312         (thread_to_thread_object): Set the exception on a NULL return.
2313
2314 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2315
2316         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2317
2318 2018-09-16  Tom Tromey  <tom@tromey.com>
2319
2320         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2321         Remove.
2322
2323 2018-09-16  Tom Tromey  <tom@tromey.com>
2324
2325         * python/python-internal.h (thread_to_thread_object): Change
2326         return type.
2327         * python/py-inferior.c (thread_to_thread_object): Return a new
2328         reference.
2329         (infpy_thread_from_thread_handle): Update.
2330         * python/py-infthread.c (gdbpy_selected_thread): Update.
2331         * python/py-stopevent.c (create_stop_event_object): Update.
2332         * python/py-threadevent.c (py_get_event_thread): Return a new
2333         reference.
2334         (py_get_event_thread): Update.
2335         * python/py-event.h (py_get_event_thread): Change return type.
2336         * python/py-continueevent.c (create_continue_event_object):
2337         Update.
2338
2339 2018-09-16  Tom Tromey  <tom@tromey.com>
2340
2341         * python/py-progspace.c (pspy_get_objfiles): Update.
2342         * python/python-internal.h (objfile_to_objfile_object): Change
2343         return type.
2344         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2345         Update.
2346         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2347         Update.
2348         * python/python.c (gdbpy_get_current_objfile): Update.
2349         (gdbpy_objfiles): Update.
2350         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2351         Update.
2352         (objfile_to_objfile_object): Return a new reference.
2353         * python/py-symtab.c (stpy_get_objfile): Update.
2354         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2355         Update.
2356
2357 2018-09-16  Tom Tromey  <tom@tromey.com>
2358
2359         * python/py-inferior.c (infpy_get_progspace): Update.
2360         * python/python-internal.h (pspace_to_pspace_object): Change
2361         return type.
2362         * python/py-newobjfileevent.c
2363         (create_clear_objfiles_event_object): Update.
2364         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2365         Update.
2366         * python/python.c (gdbpy_get_current_progspace): Update.
2367         (gdbpy_progspaces): Update.
2368         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2369         reference.
2370         * python/py-objfile.c (objfpy_get_progspace): Update.
2371         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2372         Update.
2373
2374 2018-09-16  Tom Tromey  <tom@tromey.com>
2375
2376         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2377         (solib_name, block_for_pc, find_pc_line): New functions.
2378         (execute_unwinders): Update.
2379         * python/py-block.c (gdbpy_block_for_pc): Remove.
2380         * python/py-inferior.c (infpy_get_progspace): New function.
2381         (inferior_object_getset) <progspace>: Add.
2382         * python/py-progspace.c (pspy_objfiles): Rewrite.
2383         (pspy_solib_name, pspy_block_for_pc)
2384         (pspy_find_pc_line, pspy_is_valid): New functions.
2385         (progspace_object_methods): Add entries for solib_name,
2386         block_for_pc, find_pc_line, is_valid.
2387         * python/python-internal.h (gdbpy_block_for_pc)
2388         (build_objfiles_list): Don't declare.
2389         * python/python.c: Don't include solib.h.
2390         (gdbpy_solib_name, gdbpy_find_pc_line)
2391         (gdbpy_get_current_progspace, build_objfiles_list)
2392         (gdbpy_objfiles): Remove.
2393         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2394         solib_name, find_pc_line>: Remove entries.
2395
2396 2018-09-16  Tom Tromey  <tom@tromey.com>
2397
2398         * top.c (new_ui_command): Use GNU style for metasyntactic
2399         variables.
2400         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2401         variables.
2402         * maint.c (maintenance_translate_address): Remove "<>" around
2403         text.
2404         * interps.c (interpreter_exec_cmd): Use GNU style for
2405         metasyntactic variables.
2406         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2407         metasyntactic variables.
2408         * tracepoint.c (tfind_range_command): Use GNU style for
2409         metasyntactic variables.
2410         (tfind_outside_command): Likewise.
2411         (_initialize_tracepoint): Likewise.
2412         * remote.c (extended_remote_target::create_inferior): Use GNU
2413         style for metasyntactic variables.
2414         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2415         metasyntactic variables.
2416         (adi_assign_command): Likewise.
2417
2418 2018-09-16  Tom Tromey  <tom@tromey.com>
2419
2420         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2421         metasyntactic variables.  Print message if no disassembler options
2422         are available.
2423
2424 2018-09-15  Tom Tromey  <tom@tromey.com>
2425
2426         * infcmd.c (get_inferior_args): Return const char *.
2427         * inferior.h (get_inferior_args): Return type now const.
2428         * linux-tdep.c (linux_fill_prpsinfo): Update.
2429         * procfs.c (procfs_target::make_corefile_notes): Update.
2430
2431 2018-09-07  Tom Tromey  <tom@tromey.com>
2432
2433         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2434         inside the TRY.
2435
2436 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2437
2438         * nios2-tdep.c (nios2_type_align): New.
2439         (nios2_gdb_arch_init): Install type_align hook.
2440
2441 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2442
2443         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2444         type that is neither object file owned, nor gdbarch owned.
2445         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2446         gdbarch is non-NULL.
2447         (alloc_type_instance): Allocate non-objfile owned types on the
2448         gdbarch obstack.
2449         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2450         using TYPE_ALLOC to ensure memory is allocated on the correct
2451         obstack.
2452         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2453         obstack, or the gdbarch obstack.
2454         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2455
2456 2018-09-14  Tom Tromey  <tom@tromey.com>
2457
2458         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2459         block.
2460
2461 2018-09-14  Tom Tromey  <tom@tromey.com>
2462
2463         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2464
2465 2018-09-13  Tom Tromey  <tom@tromey.com>
2466
2467         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2468         static.
2469
2470 2018-09-13  Tom Tromey  <tom@tromey.com>
2471
2472         * exec.c (try_open_exec_file): Use std::string.
2473
2474 2018-09-13  Tom Tromey  <tom@tromey.com>
2475
2476         * utils.h (gdb_bfd_errmsg): Return std::string.
2477         * exec.c (exec_file_attach): Update.
2478         * compile/compile-object-load.c (compile_object_load): Update.
2479         * utils.c (gdb_bfd_errmsg): Return std::string.
2480
2481 2018-09-13  Tom Tromey  <tom@tromey.com>
2482
2483         * procfs.c (struct procinfo_deleter): New.
2484         (procinfo_up): New typedef.
2485         (do_destroy_procinfo_cleanup): Remove.
2486         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2487
2488 2018-09-13  Tom Tromey  <tom@tromey.com>
2489
2490         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2491
2492 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2493 2018-09-13  Tom Tromey  <tom@tromey.com>
2494
2495         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2496         (pspy_get_objfiles): New function.
2497         (progspace_object_methods): New.
2498         (pspace_object_type): Add tp_methods callback.
2499         * python/python-internal.h (build_objfiles_list): New
2500         declaration.
2501         * python/python.c (build_objfiles_list): New function.
2502         (gdbpy_objfiles): Implement using build_objfiles_list.
2503         * NEWS: Mention the Progspace.objfiles method.
2504
2505 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2506
2507         * python/py-inferior.c (infpy_get_progspace): New function.
2508         (inferior_object_getset): Add progspace property.
2509         * NEWS: Mention the new property.
2510
2511 2018-09-13  Tom Tromey  <tom@tromey.com>
2512
2513         PR rust/23650:
2514         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2515
2516 2018-09-13  Tom Tromey  <tom@tromey.com>
2517
2518         PR rust/23626:
2519         * rust-lang.c (rust_enum_variant): Now static.
2520         (rust_empty_enum_p): New function.
2521         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2522         Handle empty enum.
2523
2524 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2525
2526         * python/py-inferior.c (infpy_repr): New.
2527         (inferior_object_type): Register infpy_repr.
2528         * python/py-objfile.c (objfpy_repr): New.
2529         (objfile_object_type): Register objfpy_repr.
2530
2531 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2532
2533         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2534
2535 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2536
2537         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2538         typo.
2539
2540 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2541
2542         * common/common-utils.c: Don't include '<sys/stat.h>'.
2543         (is_regular_file): Move to...
2544         * common/filestuff.c (is_regular_file): ... here.
2545         * common/common-utils.h (is_regular_file): Move to...
2546         * common/filestuff.h (is_regular_file): ... here.
2547
2548 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2549
2550         * skip.c (debug_skip): New variable.
2551         (skiplist_entry::do_skip_file_p): Add debug output.
2552         (skiplist_entry::do_skip_gfile_p): Likewise.
2553         (skiplist_entry::skip_function_p): Likewise.
2554         (_initialize_step_skip): Create debug command.
2555         * NEWS: Mention set/show debug skip.
2556
2557 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2558
2559         * darwin-nat.c (should_disable_startup_with_shell):
2560         New function.
2561         (darwin_nat_target::create_inferior): Add call.
2562
2563 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2564
2565         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2566         inf_port, msg_state>: Initialize.
2567         (struct darwin_thread_info) <signaled, single_step>: Change
2568         type and initialize.
2569         (struct darwin_thread_info) <event>: Initialize.
2570
2571 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2572
2573         PR gdb/23555
2574         PR gdb/23558
2575         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2576         guesses.
2577
2578 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2579
2580         Revert:
2581         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2582
2583         PR gdb/23555
2584         PR gdb/23558
2585         * gnulib/aclocal.m4: Regenerate.
2586         * gnulib/config.in: Regenerate.
2587         * gnulib/configure: Regenerate.
2588         * gnulib/import/Makefile.am: Update.
2589         * gnulib/import/Makefile.in: Update.
2590         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2591         * gnulib/import/_Noreturn.h: ... this.
2592         * gnulib/import/alloca.in.h: Update.
2593         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2594         * gnulib/import/arg-nonnull.h: ... this.
2595         * gnulib/import/assure.h: Update.
2596         * gnulib/import/at-func.c: Update.
2597         * gnulib/import/basename-lgpl.c: Update.
2598         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2599         * gnulib/import/c++defs.h: ... this.
2600         * gnulib/import/canonicalize-lgpl.c: Update.
2601         * gnulib/import/cdefs.h: Update.
2602         * gnulib/import/chdir-long.c: Update.
2603         * gnulib/import/chdir-long.h: Update.
2604         * gnulib/import/cloexec.c: Update.
2605         * gnulib/import/cloexec.h: Update.
2606         * gnulib/import/close.c: Update.
2607         * gnulib/import/closedir.c: Update.
2608         * gnulib/import/config.charset: Update.
2609         * gnulib/import/dirent-private.h: Update.
2610         * gnulib/import/dirent.in.h: Update.
2611         * gnulib/import/dirfd.c: Update.
2612         * gnulib/import/dirname-lgpl.c: Update.
2613         * gnulib/import/dirname.h: Update.
2614         * gnulib/import/dosname.h: Update.
2615         * gnulib/import/dup-safer-flag.c: Update.
2616         * gnulib/import/dup-safer.c: Update.
2617         * gnulib/import/dup.c: Update.
2618         * gnulib/import/dup2.c: Update.
2619         * gnulib/import/errno.in.h: Update.
2620         * gnulib/import/error.c: Update.
2621         * gnulib/import/error.h: Update.
2622         * gnulib/import/exitfail.c: Update.
2623         * gnulib/import/exitfail.h: Update.
2624         * gnulib/import/extra/update-copyright: Update.
2625         * gnulib/import/fchdir.c: Update.
2626         * gnulib/import/fcntl.c: Update.
2627         * gnulib/import/fcntl.in.h: Update.
2628         * gnulib/import/fd-hook.c: Update.
2629         * gnulib/import/fd-hook.h: Update.
2630         * gnulib/import/fd-safer-flag.c: Update.
2631         * gnulib/import/fd-safer.c: Update.
2632         * gnulib/import/fdopendir.c: Update.
2633         * gnulib/import/filename.h: Update.
2634         * gnulib/import/filenamecat-lgpl.c: Update.
2635         * gnulib/import/filenamecat.h: Update.
2636         * gnulib/import/flexmember.h: Update.
2637         * gnulib/import/float+.h: Update.
2638         * gnulib/import/float.c: Update.
2639         * gnulib/import/float.in.h: Update.
2640         * gnulib/import/fnmatch.c: Update.
2641         * gnulib/import/fnmatch.in.h: Update.
2642         * gnulib/import/fnmatch_loop.c: Update.
2643         * gnulib/import/fpucw.h: Update.
2644         * gnulib/import/frexp.c: Update.
2645         * gnulib/import/frexpl.c: Update.
2646         * gnulib/import/fstat.c: Update.
2647         * gnulib/import/fstatat.c: Update.
2648         * gnulib/import/getcwd-lgpl.c: Update.
2649         * gnulib/import/getcwd.c: Update.
2650         * gnulib/import/getdtablesize.c: Update.
2651         * gnulib/import/getlogin_r.c: Update.
2652         * gnulib/import/getprogname.c: Update.
2653         * gnulib/import/getprogname.h: Update.
2654         * gnulib/import/gettext.h: Update.
2655         * gnulib/import/gettimeofday.c: Update.
2656         * gnulib/import/glob-libc.h: Update.
2657         * gnulib/import/glob.c: Update.
2658         * gnulib/import/glob.in.h: Update.
2659         * gnulib/import/glob_internal.h: Update.
2660         * gnulib/import/glob_pattern_p.c: Update.
2661         * gnulib/import/globfree.c: Update.
2662         * gnulib/import/hard-locale.c: Update.
2663         * gnulib/import/hard-locale.h: Update.
2664         * gnulib/import/intprops.h: Update.
2665         * gnulib/import/inttypes.in.h: Update.
2666         * gnulib/import/isnan.c: Update.
2667         * gnulib/import/isnand-nolibm.h: Update.
2668         * gnulib/import/isnand.c: Update.
2669         * gnulib/import/isnanl-nolibm.h: Update.
2670         * gnulib/import/isnanl.c: Update.
2671         * gnulib/import/itold.c: Update.
2672         * gnulib/import/libc-config.h: Update.
2673         * gnulib/import/limits.in.h: Update.
2674         * gnulib/import/localcharset.c: Update.
2675         * gnulib/import/localcharset.h: Update.
2676         * gnulib/import/localtime-buffer.c: Update.
2677         * gnulib/import/localtime-buffer.h: Update.
2678         * gnulib/import/lstat.c: Update.
2679         * gnulib/import/m4/00gnulib.m4: Update.
2680         * gnulib/import/m4/__inline.m4: Update.
2681         * gnulib/import/m4/absolute-header.m4: Update.
2682         * gnulib/import/m4/alloca.m4: Update.
2683         * gnulib/import/m4/builtin-expect.m4: Update.
2684         * gnulib/import/m4/canonicalize.m4: Update.
2685         * gnulib/import/m4/chdir-long.m4: Update.
2686         * gnulib/import/m4/close.m4: Update.
2687         * gnulib/import/m4/closedir.m4: Update.
2688         * gnulib/import/m4/configmake.m4: Update.
2689         * gnulib/import/m4/d-ino.m4: Update.
2690         * gnulib/import/m4/d-type.m4: Update.
2691         * gnulib/import/m4/dirent_h.m4: Update.
2692         * gnulib/import/m4/dirfd.m4: Update.
2693         * gnulib/import/m4/dirname.m4: Update.
2694         * gnulib/import/m4/double-slash-root.m4: Update.
2695         * gnulib/import/m4/dup.m4: Update.
2696         * gnulib/import/m4/dup2.m4: Update.
2697         * gnulib/import/m4/eealloc.m4: Update.
2698         * gnulib/import/m4/environ.m4: Update.
2699         * gnulib/import/m4/errno_h.m4: Update.
2700         * gnulib/import/m4/error.m4: Update.
2701         * gnulib/import/m4/exponentd.m4: Update.
2702         * gnulib/import/m4/exponentl.m4: Update.
2703         * gnulib/import/m4/extensions.m4: Update.
2704         * gnulib/import/m4/extern-inline.m4: Update.
2705         * gnulib/import/m4/fchdir.m4: Update.
2706         * gnulib/import/m4/fcntl-o.m4: Update.
2707         * gnulib/import/m4/fcntl.m4: Update.
2708         * gnulib/import/m4/fcntl_h.m4: Update.
2709         * gnulib/import/m4/fdopendir.m4: Update.
2710         * gnulib/import/m4/filenamecat.m4: Update.
2711         * gnulib/import/m4/flexmember.m4: Update.
2712         * gnulib/import/m4/float_h.m4: Update.
2713         * gnulib/import/m4/fnmatch.m4: Update.
2714         * gnulib/import/m4/fnmatch_h.m4: Update.
2715         * gnulib/import/m4/fpieee.m4: Update.
2716         * gnulib/import/m4/frexp.m4: Update.
2717         * gnulib/import/m4/frexpl.m4: Update.
2718         * gnulib/import/m4/fstat.m4: Update.
2719         * gnulib/import/m4/fstatat.m4: Update.
2720         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2721         * gnulib/import/m4/getcwd-path-max.m4: Update.
2722         * gnulib/import/m4/getcwd.m4: Update.
2723         * gnulib/import/m4/getdtablesize.m4: Update.
2724         * gnulib/import/m4/getlogin.m4: Update.
2725         * gnulib/import/m4/getlogin_r.m4: Update.
2726         * gnulib/import/m4/getpagesize.m4: Update.
2727         * gnulib/import/m4/getprogname.m4: Update.
2728         * gnulib/import/m4/gettimeofday.m4: Update.
2729         * gnulib/import/m4/glibc21.m4: Update.
2730         * gnulib/import/m4/glob.m4: Update.
2731         * gnulib/import/m4/glob_h.m4: Update.
2732         * gnulib/import/m4/gnulib-cache.m4: Update.
2733         * gnulib/import/m4/gnulib-common.m4: Update.
2734         * gnulib/import/m4/gnulib-comp.m4: Update.
2735         * gnulib/import/m4/gnulib-tool.m4: Update.
2736         * gnulib/import/m4/hard-locale.m4: Update.
2737         * gnulib/import/m4/include_next.m4: Update.
2738         * gnulib/import/m4/inttypes-pri.m4: Update.
2739         * gnulib/import/m4/inttypes.m4: Update.
2740         * gnulib/import/m4/isnand.m4: Update.
2741         * gnulib/import/m4/isnanl.m4: Update.
2742         * gnulib/import/m4/largefile.m4: Update.
2743         * gnulib/import/m4/limits-h.m4: Update.
2744         * gnulib/import/m4/localcharset.m4: Update.
2745         * gnulib/import/m4/locale-fr.m4: Update.
2746         * gnulib/import/m4/locale-ja.m4: Update.
2747         * gnulib/import/m4/locale-zh.m4: Update.
2748         * gnulib/import/m4/localtime-buffer.m4: Update.
2749         * gnulib/import/m4/longlong.m4: Update.
2750         * gnulib/import/m4/lstat.m4: Update.
2751         * gnulib/import/m4/malloc.m4: Update.
2752         * gnulib/import/m4/malloca.m4: Update.
2753         * gnulib/import/m4/math_h.m4: Update.
2754         * gnulib/import/m4/mbrtowc.m4: Update.
2755         * gnulib/import/m4/mbsinit.m4: Update.
2756         * gnulib/import/m4/mbsrtowcs.m4: Update.
2757         * gnulib/import/m4/mbstate_t.m4: Update.
2758         * gnulib/import/m4/memchr.m4: Update.
2759         * gnulib/import/m4/memmem.m4: Update.
2760         * gnulib/import/m4/mempcpy.m4: Update.
2761         * gnulib/import/m4/memrchr.m4: Update.
2762         * gnulib/import/m4/mkdir.m4: Update.
2763         * gnulib/import/m4/mkstemp.m4: Update.
2764         * gnulib/import/m4/mmap-anon.m4: Update.
2765         * gnulib/import/m4/mode_t.m4: Update.
2766         * gnulib/import/m4/msvc-inval.m4: Update.
2767         * gnulib/import/m4/msvc-nothrow.m4: Update.
2768         * gnulib/import/m4/multiarch.m4: Update.
2769         * gnulib/import/m4/nocrash.m4: Update.
2770         * gnulib/import/m4/off_t.m4: Update.
2771         * gnulib/import/m4/onceonly.m4: Update.
2772         * gnulib/import/m4/open-cloexec.m4: Update.
2773         * gnulib/import/m4/open.m4: Update.
2774         * gnulib/import/m4/openat.m4: Update.
2775         * gnulib/import/m4/opendir.m4: Update.
2776         * gnulib/import/m4/pathmax.m4: Update.
2777         * gnulib/import/m4/rawmemchr.m4: Update.
2778         * gnulib/import/m4/readdir.m4: Update.
2779         * gnulib/import/m4/readlink.m4: Update.
2780         * gnulib/import/m4/realloc.m4: Update.
2781         * gnulib/import/m4/rename.m4: Update.
2782         * gnulib/import/m4/rewinddir.m4: Update.
2783         * gnulib/import/m4/rmdir.m4: Update.
2784         * gnulib/import/m4/save-cwd.m4: Update.
2785         * gnulib/import/m4/secure_getenv.m4: Update.
2786         * gnulib/import/m4/setenv.m4: Update.
2787         * gnulib/import/m4/signal_h.m4: Update.
2788         * gnulib/import/m4/ssize_t.m4: Update.
2789         * gnulib/import/m4/stat-time.m4: Update.
2790         * gnulib/import/m4/stat.m4: Update.
2791         * gnulib/import/m4/std-gnu11.m4: Update.
2792         * gnulib/import/m4/stdbool.m4: Update.
2793         * gnulib/import/m4/stddef_h.m4: Update.
2794         * gnulib/import/m4/stdint.m4: Update.
2795         * gnulib/import/m4/stdio_h.m4: Update.
2796         * gnulib/import/m4/stdlib_h.m4: Update.
2797         * gnulib/import/m4/strchrnul.m4: Update.
2798         * gnulib/import/m4/strdup.m4: Update.
2799         * gnulib/import/m4/strerror.m4: Update.
2800         * gnulib/import/m4/string_h.m4: Update.
2801         * gnulib/import/m4/strstr.m4: Update.
2802         * gnulib/import/m4/strtok_r.m4: Update.
2803         * gnulib/import/m4/sys_socket_h.m4: Update.
2804         * gnulib/import/m4/sys_stat_h.m4: Update.
2805         * gnulib/import/m4/sys_time_h.m4: Update.
2806         * gnulib/import/m4/sys_types_h.m4: Update.
2807         * gnulib/import/m4/tempname.m4: Update.
2808         * gnulib/import/m4/time_h.m4: Update.
2809         * gnulib/import/m4/unistd-safer.m4: Update.
2810         * gnulib/import/m4/unistd_h.m4: Update.
2811         * gnulib/import/m4/warn-on-use.m4: Update.
2812         * gnulib/import/m4/wchar_h.m4: Update.
2813         * gnulib/import/m4/wchar_t.m4: Update.
2814         * gnulib/import/m4/wctype_h.m4: Update.
2815         * gnulib/import/m4/wint_t.m4: Update.
2816         * gnulib/import/malloc.c: Update.
2817         * gnulib/import/malloc/scratch_buffer.h: Update.
2818         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2819         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2820         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2821         * gnulib/import/malloca.c: Update.
2822         * gnulib/import/malloca.h: Update.
2823         * gnulib/import/malloca.valgrind: Update.
2824         * gnulib/import/math.in.h: Update.
2825         * gnulib/import/mbrtowc.c: Update.
2826         * gnulib/import/mbsinit.c: Update.
2827         * gnulib/import/mbsrtowcs-impl.h: Update.
2828         * gnulib/import/mbsrtowcs-state.c: Update.
2829         * gnulib/import/mbsrtowcs.c: Update.
2830         * gnulib/import/memchr.c: Update.
2831         * gnulib/import/memmem.c: Update.
2832         * gnulib/import/mempcpy.c: Update.
2833         * gnulib/import/memrchr.c: Update.
2834         * gnulib/import/mkdir.c: Update.
2835         * gnulib/import/mkstemp.c: Update.
2836         * gnulib/import/msvc-inval.c: Update.
2837         * gnulib/import/msvc-inval.h: Update.
2838         * gnulib/import/msvc-nothrow.c: Update.
2839         * gnulib/import/msvc-nothrow.h: Update.
2840         * gnulib/import/open.c: Update.
2841         * gnulib/import/openat-die.c: Update.
2842         * gnulib/import/openat-priv.h: Update.
2843         * gnulib/import/openat-proc.c: Update.
2844         * gnulib/import/openat.c: Update.
2845         * gnulib/import/openat.h: Update.
2846         * gnulib/import/opendir.c: Update.
2847         * gnulib/import/pathmax.h: Update.
2848         * gnulib/import/pipe-safer.c: Update.
2849         * gnulib/import/rawmemchr.c: Update.
2850         * gnulib/import/readdir.c: Update.
2851         * gnulib/import/readlink.c: Update.
2852         * gnulib/import/realloc.c: Update.
2853         * gnulib/import/ref-add.sin: Update.
2854         * gnulib/import/ref-del.sin: Update.
2855         * gnulib/import/rename.c: Update.
2856         * gnulib/import/rewinddir.c: Update.
2857         * gnulib/import/rmdir.c: Update.
2858         * gnulib/import/same-inode.h: Update.
2859         * gnulib/import/save-cwd.c: Update.
2860         * gnulib/import/save-cwd.h: Update.
2861         * gnulib/import/scratch_buffer.h: Update.
2862         * gnulib/import/secure_getenv.c: Update.
2863         * gnulib/import/setenv.c: Update.
2864         * gnulib/import/signal.in.h: Update.
2865         * gnulib/import/stat-time.c: Update.
2866         * gnulib/import/stat-time.h: Update.
2867         * gnulib/import/stat-w32.c: Update.
2868         * gnulib/import/stat-w32.h: Update.
2869         * gnulib/import/stat.c: Update.
2870         * gnulib/import/stdbool.in.h: Update.
2871         * gnulib/import/stddef.in.h: Update.
2872         * gnulib/import/stdint.in.h: Update.
2873         * gnulib/import/stdio.in.h: Update.
2874         * gnulib/import/stdlib.in.h: Update.
2875         * gnulib/import/str-two-way.h: Update.
2876         * gnulib/import/strchrnul.c: Update.
2877         * gnulib/import/strdup.c: Update.
2878         * gnulib/import/streq.h: Update.
2879         * gnulib/import/strerror-override.c: Update.
2880         * gnulib/import/strerror-override.h: Update.
2881         * gnulib/import/strerror.c: Update.
2882         * gnulib/import/string.in.h: Update.
2883         * gnulib/import/stripslash.c: Update.
2884         * gnulib/import/strnlen1.c: Update.
2885         * gnulib/import/strnlen1.h: Update.
2886         * gnulib/import/strstr.c: Update.
2887         * gnulib/import/strtok_r.c: Update.
2888         * gnulib/import/sys_stat.in.h: Update.
2889         * gnulib/import/sys_time.in.h: Update.
2890         * gnulib/import/sys_types.in.h: Update.
2891         * gnulib/import/tempname.c: Update.
2892         * gnulib/import/tempname.h: Update.
2893         * gnulib/import/time.in.h: Update.
2894         * gnulib/import/unistd--.h: Update.
2895         * gnulib/import/unistd-safer.h: Update.
2896         * gnulib/import/unistd.in.h: Update.
2897         * gnulib/import/unsetenv.c: Update.
2898         * gnulib/import/verify.h: Update.
2899         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2900         * gnulib/import/wchar.in.h: Update.
2901         * gnulib/import/wctype.in.h: Update.
2902         * gnulib/import/xalloc-oversized.h: Update.
2903         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2904         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2905
2906 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2907
2908         * record-btrace.c (get_thread_current_frame): Remove
2909         old_inferior_ptid.
2910
2911 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2912
2913         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2914         with check_tag to 1 if and only if the type is tagged and the
2915         component being searched cannot been found in the current
2916         view. Otherwise, always call ada_to_fixed_type with
2917         check_tag to 0.
2918
2919 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2920
2921         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2922         declaration.
2923         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2924         * ada-varobj.c (ada_varobj_get_number_of_children,
2925         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2926
2927 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2928
2929         * ada-valprint.c (ada_value_print): Use type instead of
2930         enclosing type.
2931
2932 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2933
2934         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2935         an array of access to unconstrained array.
2936
2937 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2938
2939         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2940         (ada_check_typedef): Use it.
2941
2942 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2943
2944         * ada-varobj.c (ada_varobj_describe_struct_child)
2945         (ada_varobj_describe_child): Handle union case like struct one.
2946
2947 2018-09-10  Tom Tromey  <tom@tromey.com>
2948
2949         PR python/18380:
2950         * python/python.c (_initialize_python): Make example in "python"
2951         help work in Python 3.
2952
2953 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2954
2955         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2956         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2957         $(EXEEXT) to the script, as it is not a program.
2958
2959 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2960
2961         * python/py-prettyprint.c (pretty_print_one_value): Return
2962         gdbpy_ref<>.
2963         (print_string_repr): Adjust.
2964         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2965         * python/python-internal.h (apply_varobj_pretty_printer): Return
2966         gdbpy_ref<>.
2967         * varobj.c (varobj_value_get_print_value): Adjust.
2968
2969 2018-09-08  Tom Tromey  <tom@tromey.com>
2970
2971         PR python/16047:
2972         * python/py-prettyprint.c (pretty_print_one_value): Check for
2973         to_string method.
2974
2975 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2976
2977         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2978         replace_operator_with_call.
2979
2980 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2981
2982         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2983
2984 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2985
2986         * ada-typeprint.c (print_range): Print the bounds using TYPE
2987         rather than its TYPE_TARGET_TYPE.
2988
2989 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2990
2991         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2992         call to ada_to_fixed_value_create.
2993
2994 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2995
2996         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2997
2998 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2999
3000         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3001         by calls to error.
3002
3003 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3004
3005         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3006         Move update of loop variable "fi".
3007
3008 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3009
3010         * ada-lang.c (value_assign_to_component): In the case of
3011         big-endian targets, extract the bits of the given VAL
3012         using an src_offset of zero if container is not a scalar.
3013
3014 2018-09-06  Simon Ser  <contact@emersion.fr>
3015
3016         PR gdb/23105
3017         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3018         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3019         * fbsd-tdep.c (fbsd_make_note_desc): New.
3020         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3021         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3022         * target.h (enum target_object) Add FreeBSD-specific
3023         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3024
3025 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3026
3027         * compile/compile-c.h (generate_c_for_variable_locations):
3028         Change reference to pointer.
3029         * compile/compile-c-support.c (compile_program) <compute>:
3030         Likewise.
3031         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3032         (generate_c_for_for_one_variable): Likewise
3033         (generate_c_for_variable_locations): Likewise
3034         * compile/compile-c-types.c (compile_c_instance::convert_type):
3035         Likewise
3036         * compile/compile-cplus-symbols.c (convert_one_symbol):
3037         std::move the scope passed to enter_scope.
3038         * compile/compile-cplus-types.c
3039         (compile_cplus_instance::enter_scope): Make parameter
3040         rvalue-reference.
3041         (compile_cplus_instance::new_scope): Change reference to
3042         pointer.
3043         (compile_cplus_instance::convert_type): Likewise
3044         (compile_cplus_convert_typedef): std::move the scope passed to
3045         enter_scope.
3046         (compile_cplus_convert_struct_or_union): Likewise.
3047         (compile_cplus_convert_enum): Likewise.
3048         (compile_cplus_convert_namespace): Likewise.
3049         * compile/compile-cplus.h (compile_cplus_instance)
3050         <enter_scope>: Make parameter rvalue-reference.
3051         * compile/compile-internal.h (compile_instance)
3052         <get_cached_type>: Likewise
3053         * compile/compile-loc2c.c (push): Likewise
3054         (pushf): Likewise
3055         (unary): Likewise
3056         (binary): Likewise
3057         (print_label): Likewise
3058         (pushf_register_address): Likewise
3059         (pushf_register): Likewise
3060         (do_compile_dwarf_expr_to_c): Likewise
3061         (compile_dwarf_expr_to_c): Likewise
3062         (compile_dwarf_bounds_to_c): Likewise
3063         * compile/compile.c (compile_instance::get_cached_type):
3064         Likewise
3065         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3066         (compile_dwarf_bounds_to_c): Likewise
3067         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3068         (dwarf2_compile_property_to_c): Likewise
3069         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3070         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3071         Likewise
3072
3073 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3074
3075         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3076         * tui/tui-data.c (init_content_element): Don't initialize it.
3077
3078 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3079
3080         * tui/tui-data.h (struct tui_win_info)
3081         <detail::opaque>: Remove.
3082         * tui/tui-data.c (init_win_info): Remove assignment.
3083
3084 2018-09-05  Tom Tromey  <tom@tromey.com>
3085
3086         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3087         -Wformat-nonliteral.
3088         * target-float.c (host_float_ops<T>::to_string)
3089         (host_float_ops<T>::from_string): Use
3090         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3091         * configure: Rebuild.
3092
3093 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3094
3095         * printcmd.c (printf_c_string): Use
3096         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3097         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3098
3099 2018-09-05  Tom Tromey  <tom@tromey.com>
3100
3101         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3102
3103 2018-09-05  Tom de Vries  <tdevries@suse.de>
3104
3105         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3106         with resolve_abstract_p == true.
3107         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3108         defaulting to false. Propagate resolve_abstract_p to
3109         dwarf2_fetch_die_loc_sect_off.
3110         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3111         parameter, defaulting to false.
3112         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3113         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3114         parameter.
3115         * dwarf2read.h (struct die_info): Forward-declare.
3116         (die_info_ptr): New typedef.
3117         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3118
3119 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3120
3121         GDB 8.2 released.
3122
3123 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3124             Pedro Alves  <palves@redhat.com>
3125
3126         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3127         "aclocal-m4-deps.mk".  Include file here.
3128         $(srcdir)/aclocal.m4: Add "configure.ac".
3129         * gnulib/aclocal-m4-deps.mk: New file.
3130         * gnulib/update-gnulib.sh: Automatically update
3131         "aclocal-m4-deps.mk".
3132
3133 2018-09-04  Tom Tromey  <tom@tromey.com>
3134
3135         * configure: Rebuild.
3136         * configure.ac: Remove multi-ice code.
3137
3138 2018-09-04  Tom Tromey  <tom@tromey.com>
3139
3140         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3141         (ada-exp.o): Update.
3142
3143 2018-09-04  Tom Tromey  <tom@tromey.com>
3144
3145         * Makefile.in (printcmd.o, target-float.o): Remove.
3146         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3147
3148 2018-09-04  Tom Tromey  <tom@tromey.com>
3149
3150         * gnulib/Makefile.in: Remove obsolete comment.
3151         * Makefile.in: Remove obsolete comment.
3152
3153 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3154
3155         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3156         line with '+'.
3157
3158 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3159
3160         * riscv-tdep.c: Add 'prologue-value.h' include.
3161         (struct riscv_unwind_cache): New struct.
3162         (riscv_debug_unwinder): New global.
3163         (riscv_scan_prologue): Update arguments, capture register details
3164         from prologue scan.
3165         (riscv_skip_prologue): Reformat arguments line, move end of
3166         prologue calculation into riscv_scan_prologue.
3167         (riscv_frame_cache): Update return type, create
3168         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3169         details.
3170         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3171         (riscv_frame_prev_register): Use the trad_frame within the
3172         riscv_unwind_cache.
3173         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3174         flag.
3175
3176 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3177
3178         * trad-frame.h (trad_frame_set_realreg): Declare.
3179         (trad_frame_set_addr): Declare.
3180         * trad-frame.c (trad_frame_set_realreg): Define new function.
3181         (trad_frame_set_addr): Define new function.
3182         (trad_frame_set_reg_realreg): Use new function.
3183         (trad_frame_set_reg_addr): Use new function.
3184
3185 2018-09-01  Keith Seitz  <keiths@redhat.com>
3186
3187         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3188         pulongest instead of "%lld".
3189         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3190         ATTRIBUTE_UNUSED.
3191
3192 2018-08-31  Tom Tromey  <tom@tromey.com>
3193
3194         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3195         variant part type.
3196
3197 2018-08-31  Pedro Alves  <palves@redhat.com>
3198
3199         * gdbarch.h: Regenerate.
3200
3201 2018-08-31  Pedro Alves  <palves@redhat.com>
3202
3203         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3204         * target.h (Hardware watchpoint interfaces): Describe
3205         continuable/steppable/non-steppable watchpoints.
3206         * gdbarch.h, gdbarch.c: Regenerate.
3207
3208 2018-08-31  Pedro Alves  <palves@redhat.com>
3209
3210         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3211         Delete.
3212         * s390-linux-nat.c
3213         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3214         * target.h (target_ops::have_continuable_watchpoint): Delete.
3215         (target_have_continuable_watchpoint): Delete.
3216         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3217         * target-delegates.c: Regenerate.
3218
3219 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3220
3221         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3222         the files present in "gnulib/import/m4/".
3223
3224 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3225
3226         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3227         c.sw, c.swsp, and c.sdsp.
3228
3229 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3230
3231         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3232         (riscv_read_misa_reg): Don't cache value read into inferior data.
3233         (riscv_new_inferior_data): Delete.
3234         (riscv_inferior_data_cleanup): Delete.
3235         (riscv_inferior_data): Delete.
3236         (riscv_invalidate_inferior_data): Delete.
3237         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3238
3239 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3240
3241         * compile/compile-cplus-types.c
3242         (compile_cplus_instance::leave_scope): Take the address of scope
3243         object.
3244         (compile_cplus_instance::convert_qualified_base): Compare quals
3245         to 0.
3246
3247 2018-08-30  Keith Seitz  <keiths@redhat.com>
3248
3249         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3250         Use "%s" and host_address_to_string instead of "%p" in printf.
3251
3252 2018-08-29  Keith Seitz  <keiths@redhat.com>
3253
3254         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3255         and compile-cplus-types.c.
3256         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3257         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3258         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3259         Declare.
3260         * compile/compile-c-support.c: Include compile-cplus.h.
3261         (load_libcompile): Templatize.
3262         (get_compile_context): "New" function.
3263         (c_get_compile_context): Use get_compile_context.
3264         (cplus_get_compile_context): New function.
3265         (cplus_push_user_expression, cplus_pop_user_expression)
3266         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3267         (cplus_compute_program): Define new structs/functions.
3268         * compile/compile-cplus-symmbols.c: New file.
3269         * compile/compile-cplus-types.c: New file.
3270         * compile/compile-cplus.h: New file.
3271         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3272         Declare.
3273         * compile/compile-object-load.c (get_out_value_type): Use
3274         strncmp_iw when comparing symbol names.
3275         (compile_object_load): Add mst_bss and mst_data.
3276         * compile/compile.c (_initialize_compile): Remove
3277         -Wno-implicit-function-declaration from `compile_args'.
3278         * compile/gcc-cp-plugin.h: New file.
3279         * NEWS: Mention C++ compile support and new debug options.
3280
3281 2018-08-29  Keith Seitz  <keiths@redhat.com>
3282
3283         * linespec.c (collect_info::add_symbol): Make virtual.
3284         (struct symbol_searcher_collect_info): New struct.
3285         (symbol_searcher::find_all_symbols): New method.
3286         * symtab.h (class symbol_searcher): New class.
3287
3288 2018-08-29  Keith Seitz  <keiths@redhat.com>
3289
3290         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3291         Change to vector of block_symbol.  Update all users.
3292         (struct collect_info) <symbols>: Likewise.
3293         (collect_info::add_symbol): Take block_symbol as argument.
3294         Update all callers.
3295         (decode_compound_collector) <m_symbols>: Change type to vector
3296         of block_symbol.  Update all users.
3297         (decode_compound_collector::operator ()): Change parameter type
3298         to block_symbol.
3299         (find_method, find_function_symbols, find_linespec_symbols)
3300         (find_label_symbols_in_block, find_label_symbols): Change symbol
3301         vectors to block_symbol vectors.
3302         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3303         block_symbol.
3304
3305 2018-08-29  Keith Seitz  <keiths@redhat.com>
3306
3307         * linespec.c (symbolp): Remove typedef and VEC definitions.
3308         (bound_minimal_symbol_d): Likewise.
3309
3310 2018-08-29  Keith Seitz  <keiths@redhat.com>
3311
3312         * linespec.c (decode_compound_collector::decode_compound_collector):
3313         Remove initialization for `m_symtabs'.
3314         (decode_compound_collector::release_symbols): Change return type
3315         to std::vector.  Update all callers.
3316         (class decode_compound_collector) <m_symbols>: Change type to
3317         std::vector.
3318         (lookup_prefix_sym): Change return type to std::vector.  Update all
3319         callers.
3320         (compare_symbols): Remove.
3321         (std_compare_symbols): Rename to `compare_symbols'.
3322         (find_method): Change `sym_classes' parameter to std::vector.
3323         Update all callers.  Use std::sort to sort sym_classes.
3324         (find_linespec_symbols): Remove cleanup.
3325
3326 2018-08-29  Keith Seitz  <keiths@redhat.com>
3327
3328         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3329         std::vector.  Update all users.
3330         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3331         (struct collect_info) <minimal_symbols>: Likewise.
3332         (compare_msymbols): Return bool.  Change parameters to const
3333         bound_minimal_symbol references.
3334         (find_method, find_function_symbols, find_linespec_symbols): Change
3335         `minsyms' parameter to std::vector.  Update all callers.
3336
3337 2018-08-29  Keith Seitz  <keiths@redhat.com>
3338
3339         * linespec.c (struct linespec) <label_symbols>: Change type to
3340         std::vector.  Update all users.
3341         (find_label_symbols_in_block): Change `result' parameter to
3342         std::vector.  Update all callers.
3343         (find_label_symbols): Return std::vector.  Update all callers.
3344
3345 2018-08-29  Keith Seitz  <keiths@redhat.com>
3346
3347         * linespec.c (struct linespec) <function_symbols>: Change type to
3348         std::vector.  Update all users.
3349         (struct collect_info) <function_symbols>: Likewise.
3350         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3351         (std_compare_symbols): New function.
3352         (find_method, find_function_symbols, find_linespec_symbols)
3353         (find_label_symbols_in_block): Change `symbols' parameter to
3354         std::vector.  Update all callers.
3355         (find_label_symbols): Likewise for `function_symbols' and
3356         `label_funcs_ret'.
3357
3358 2018-08-29  Keith Seitz  <keiths@redhat.com>
3359
3360         * linespec.c (symtab_vector_up): Define.
3361         (struct linespec) <file_symtabs>: Change type to std::vector *.
3362         Update all uses.
3363         (struct collect_info) <file_symtabs>: Likewise.
3364         (collect_symtabs_from_filename): Return symtab_vector_up.
3365         Update all callers.
3366         (decode_objc): Remove cleanup.
3367         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3368         (symtab_collector::release_symtabs): Return symtab_vector_up.
3369         Update all callers.
3370         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3371         Update all users.
3372         (collect_symtabs_from_filename, symtabs_from_filename): Return
3373         symtab_vector_up.  Update all callers.
3374
3375 2018-08-29  Tom Tromey  <tom@tromey.com>
3376
3377         * csky-tdep.c (csky_analyze_prologue): Use
3378         core_addr_to_string_nz.
3379
3380 2018-08-29  Tom Tromey  <tom@tromey.com>
3381
3382         * windows-nat.c (struct xlate_exception) <them>: Change type to
3383         DWORD.
3384         (xlate): Fix formatting.  Remove last entry.
3385         (struct xlate_exception, xlate): Comment out.
3386         (windows_nat_target::resume): Use ranged for.
3387
3388 2018-08-29  Jim Wilson  <jimw@sifive.com>
3389
3390         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3391         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3392         of NT_PRFPREG.
3393         (riscv_linux_nat_target::store_registers): Likewise.
3394
3395 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3396
3397         PR gdb/23555
3398         PR gdb/23558
3399         * gnulib/aclocal.m4: Regenerate.
3400         * gnulib/config.in: Regenerate.
3401         * gnulib/configure: Regenerate.
3402         * gnulib/import/Makefile.am: Update.
3403         * gnulib/import/Makefile.in: Update.
3404         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3405         * gnulib/import/_Noreturn.h: ... this.
3406         * gnulib/import/alloca.in.h: Update.
3407         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3408         * gnulib/import/arg-nonnull.h: ... this.
3409         * gnulib/import/assure.h: Update.
3410         * gnulib/import/at-func.c: Update.
3411         * gnulib/import/basename-lgpl.c: Update.
3412         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3413         * gnulib/import/c++defs.h: ... this.
3414         * gnulib/import/canonicalize-lgpl.c: Update.
3415         * gnulib/import/cdefs.h: Update.
3416         * gnulib/import/chdir-long.c: Update.
3417         * gnulib/import/chdir-long.h: Update.
3418         * gnulib/import/cloexec.c: Update.
3419         * gnulib/import/cloexec.h: Update.
3420         * gnulib/import/close.c: Update.
3421         * gnulib/import/closedir.c: Update.
3422         * gnulib/import/config.charset: Update.
3423         * gnulib/import/dirent-private.h: Update.
3424         * gnulib/import/dirent.in.h: Update.
3425         * gnulib/import/dirfd.c: Update.
3426         * gnulib/import/dirname-lgpl.c: Update.
3427         * gnulib/import/dirname.h: Update.
3428         * gnulib/import/dosname.h: Update.
3429         * gnulib/import/dup-safer-flag.c: Update.
3430         * gnulib/import/dup-safer.c: Update.
3431         * gnulib/import/dup.c: Update.
3432         * gnulib/import/dup2.c: Update.
3433         * gnulib/import/errno.in.h: Update.
3434         * gnulib/import/error.c: Update.
3435         * gnulib/import/error.h: Update.
3436         * gnulib/import/exitfail.c: Update.
3437         * gnulib/import/exitfail.h: Update.
3438         * gnulib/import/extra/update-copyright: Update.
3439         * gnulib/import/fchdir.c: Update.
3440         * gnulib/import/fcntl.c: Update.
3441         * gnulib/import/fcntl.in.h: Update.
3442         * gnulib/import/fd-hook.c: Update.
3443         * gnulib/import/fd-hook.h: Update.
3444         * gnulib/import/fd-safer-flag.c: Update.
3445         * gnulib/import/fd-safer.c: Update.
3446         * gnulib/import/fdopendir.c: Update.
3447         * gnulib/import/filename.h: Update.
3448         * gnulib/import/filenamecat-lgpl.c: Update.
3449         * gnulib/import/filenamecat.h: Update.
3450         * gnulib/import/flexmember.h: Update.
3451         * gnulib/import/float+.h: Update.
3452         * gnulib/import/float.c: Update.
3453         * gnulib/import/float.in.h: Update.
3454         * gnulib/import/fnmatch.c: Update.
3455         * gnulib/import/fnmatch.in.h: Update.
3456         * gnulib/import/fnmatch_loop.c: Update.
3457         * gnulib/import/fpucw.h: Update.
3458         * gnulib/import/frexp.c: Update.
3459         * gnulib/import/frexpl.c: Update.
3460         * gnulib/import/fstat.c: Update.
3461         * gnulib/import/fstatat.c: Update.
3462         * gnulib/import/getcwd-lgpl.c: Update.
3463         * gnulib/import/getcwd.c: Update.
3464         * gnulib/import/getdtablesize.c: Update.
3465         * gnulib/import/getlogin_r.c: Update.
3466         * gnulib/import/getprogname.c: Update.
3467         * gnulib/import/getprogname.h: Update.
3468         * gnulib/import/gettext.h: Update.
3469         * gnulib/import/gettimeofday.c: Update.
3470         * gnulib/import/glob-libc.h: Update.
3471         * gnulib/import/glob.c: Update.
3472         * gnulib/import/glob.in.h: Update.
3473         * gnulib/import/glob_internal.h: Update.
3474         * gnulib/import/glob_pattern_p.c: Update.
3475         * gnulib/import/globfree.c: Update.
3476         * gnulib/import/hard-locale.c: Update.
3477         * gnulib/import/hard-locale.h: Update.
3478         * gnulib/import/intprops.h: Update.
3479         * gnulib/import/inttypes.in.h: Update.
3480         * gnulib/import/isnan.c: Update.
3481         * gnulib/import/isnand-nolibm.h: Update.
3482         * gnulib/import/isnand.c: Update.
3483         * gnulib/import/isnanl-nolibm.h: Update.
3484         * gnulib/import/isnanl.c: Update.
3485         * gnulib/import/itold.c: Update.
3486         * gnulib/import/libc-config.h: Update.
3487         * gnulib/import/limits.in.h: Update.
3488         * gnulib/import/localcharset.c: Update.
3489         * gnulib/import/localcharset.h: Update.
3490         * gnulib/import/localtime-buffer.c: Update.
3491         * gnulib/import/localtime-buffer.h: Update.
3492         * gnulib/import/lstat.c: Update.
3493         * gnulib/import/m4/00gnulib.m4: Update.
3494         * gnulib/import/m4/__inline.m4: Update.
3495         * gnulib/import/m4/absolute-header.m4: Update.
3496         * gnulib/import/m4/alloca.m4: Update.
3497         * gnulib/import/m4/builtin-expect.m4: Update.
3498         * gnulib/import/m4/canonicalize.m4: Update.
3499         * gnulib/import/m4/chdir-long.m4: Update.
3500         * gnulib/import/m4/close.m4: Update.
3501         * gnulib/import/m4/closedir.m4: Update.
3502         * gnulib/import/m4/configmake.m4: Update.
3503         * gnulib/import/m4/d-ino.m4: Update.
3504         * gnulib/import/m4/d-type.m4: Update.
3505         * gnulib/import/m4/dirent_h.m4: Update.
3506         * gnulib/import/m4/dirfd.m4: Update.
3507         * gnulib/import/m4/dirname.m4: Update.
3508         * gnulib/import/m4/double-slash-root.m4: Update.
3509         * gnulib/import/m4/dup.m4: Update.
3510         * gnulib/import/m4/dup2.m4: Update.
3511         * gnulib/import/m4/eealloc.m4: Update.
3512         * gnulib/import/m4/environ.m4: Update.
3513         * gnulib/import/m4/errno_h.m4: Update.
3514         * gnulib/import/m4/error.m4: Update.
3515         * gnulib/import/m4/exponentd.m4: Update.
3516         * gnulib/import/m4/exponentl.m4: Update.
3517         * gnulib/import/m4/extensions.m4: Update.
3518         * gnulib/import/m4/extern-inline.m4: Update.
3519         * gnulib/import/m4/fchdir.m4: Update.
3520         * gnulib/import/m4/fcntl-o.m4: Update.
3521         * gnulib/import/m4/fcntl.m4: Update.
3522         * gnulib/import/m4/fcntl_h.m4: Update.
3523         * gnulib/import/m4/fdopendir.m4: Update.
3524         * gnulib/import/m4/filenamecat.m4: Update.
3525         * gnulib/import/m4/flexmember.m4: Update.
3526         * gnulib/import/m4/float_h.m4: Update.
3527         * gnulib/import/m4/fnmatch.m4: Update.
3528         * gnulib/import/m4/fnmatch_h.m4: Update.
3529         * gnulib/import/m4/fpieee.m4: Update.
3530         * gnulib/import/m4/frexp.m4: Update.
3531         * gnulib/import/m4/frexpl.m4: Update.
3532         * gnulib/import/m4/fstat.m4: Update.
3533         * gnulib/import/m4/fstatat.m4: Update.
3534         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3535         * gnulib/import/m4/getcwd-path-max.m4: Update.
3536         * gnulib/import/m4/getcwd.m4: Update.
3537         * gnulib/import/m4/getdtablesize.m4: Update.
3538         * gnulib/import/m4/getlogin.m4: Update.
3539         * gnulib/import/m4/getlogin_r.m4: Update.
3540         * gnulib/import/m4/getpagesize.m4: Update.
3541         * gnulib/import/m4/getprogname.m4: Update.
3542         * gnulib/import/m4/gettimeofday.m4: Update.
3543         * gnulib/import/m4/glibc21.m4: Update.
3544         * gnulib/import/m4/glob.m4: Update.
3545         * gnulib/import/m4/glob_h.m4: Update.
3546         * gnulib/import/m4/gnulib-cache.m4: Update.
3547         * gnulib/import/m4/gnulib-common.m4: Update.
3548         * gnulib/import/m4/gnulib-comp.m4: Update.
3549         * gnulib/import/m4/gnulib-tool.m4: Update.
3550         * gnulib/import/m4/hard-locale.m4: Update.
3551         * gnulib/import/m4/include_next.m4: Update.
3552         * gnulib/import/m4/inttypes-pri.m4: Update.
3553         * gnulib/import/m4/inttypes.m4: Update.
3554         * gnulib/import/m4/isnand.m4: Update.
3555         * gnulib/import/m4/isnanl.m4: Update.
3556         * gnulib/import/m4/largefile.m4: Update.
3557         * gnulib/import/m4/limits-h.m4: Update.
3558         * gnulib/import/m4/localcharset.m4: Update.
3559         * gnulib/import/m4/locale-fr.m4: Update.
3560         * gnulib/import/m4/locale-ja.m4: Update.
3561         * gnulib/import/m4/locale-zh.m4: Update.
3562         * gnulib/import/m4/localtime-buffer.m4: Update.
3563         * gnulib/import/m4/longlong.m4: Update.
3564         * gnulib/import/m4/lstat.m4: Update.
3565         * gnulib/import/m4/malloc.m4: Update.
3566         * gnulib/import/m4/malloca.m4: Update.
3567         * gnulib/import/m4/math_h.m4: Update.
3568         * gnulib/import/m4/mbrtowc.m4: Update.
3569         * gnulib/import/m4/mbsinit.m4: Update.
3570         * gnulib/import/m4/mbsrtowcs.m4: Update.
3571         * gnulib/import/m4/mbstate_t.m4: Update.
3572         * gnulib/import/m4/memchr.m4: Update.
3573         * gnulib/import/m4/memmem.m4: Update.
3574         * gnulib/import/m4/mempcpy.m4: Update.
3575         * gnulib/import/m4/memrchr.m4: Update.
3576         * gnulib/import/m4/mkdir.m4: Update.
3577         * gnulib/import/m4/mkstemp.m4: Update.
3578         * gnulib/import/m4/mmap-anon.m4: Update.
3579         * gnulib/import/m4/mode_t.m4: Update.
3580         * gnulib/import/m4/msvc-inval.m4: Update.
3581         * gnulib/import/m4/msvc-nothrow.m4: Update.
3582         * gnulib/import/m4/multiarch.m4: Update.
3583         * gnulib/import/m4/nocrash.m4: Update.
3584         * gnulib/import/m4/off_t.m4: Update.
3585         * gnulib/import/m4/onceonly.m4: Update.
3586         * gnulib/import/m4/open-cloexec.m4: Update.
3587         * gnulib/import/m4/open.m4: Update.
3588         * gnulib/import/m4/openat.m4: Update.
3589         * gnulib/import/m4/opendir.m4: Update.
3590         * gnulib/import/m4/pathmax.m4: Update.
3591         * gnulib/import/m4/rawmemchr.m4: Update.
3592         * gnulib/import/m4/readdir.m4: Update.
3593         * gnulib/import/m4/readlink.m4: Update.
3594         * gnulib/import/m4/realloc.m4: Update.
3595         * gnulib/import/m4/rename.m4: Update.
3596         * gnulib/import/m4/rewinddir.m4: Update.
3597         * gnulib/import/m4/rmdir.m4: Update.
3598         * gnulib/import/m4/save-cwd.m4: Update.
3599         * gnulib/import/m4/secure_getenv.m4: Update.
3600         * gnulib/import/m4/setenv.m4: Update.
3601         * gnulib/import/m4/signal_h.m4: Update.
3602         * gnulib/import/m4/ssize_t.m4: Update.
3603         * gnulib/import/m4/stat-time.m4: Update.
3604         * gnulib/import/m4/stat.m4: Update.
3605         * gnulib/import/m4/std-gnu11.m4: Update.
3606         * gnulib/import/m4/stdbool.m4: Update.
3607         * gnulib/import/m4/stddef_h.m4: Update.
3608         * gnulib/import/m4/stdint.m4: Update.
3609         * gnulib/import/m4/stdio_h.m4: Update.
3610         * gnulib/import/m4/stdlib_h.m4: Update.
3611         * gnulib/import/m4/strchrnul.m4: Update.
3612         * gnulib/import/m4/strdup.m4: Update.
3613         * gnulib/import/m4/strerror.m4: Update.
3614         * gnulib/import/m4/string_h.m4: Update.
3615         * gnulib/import/m4/strstr.m4: Update.
3616         * gnulib/import/m4/strtok_r.m4: Update.
3617         * gnulib/import/m4/sys_socket_h.m4: Update.
3618         * gnulib/import/m4/sys_stat_h.m4: Update.
3619         * gnulib/import/m4/sys_time_h.m4: Update.
3620         * gnulib/import/m4/sys_types_h.m4: Update.
3621         * gnulib/import/m4/tempname.m4: Update.
3622         * gnulib/import/m4/time_h.m4: Update.
3623         * gnulib/import/m4/unistd-safer.m4: Update.
3624         * gnulib/import/m4/unistd_h.m4: Update.
3625         * gnulib/import/m4/warn-on-use.m4: Update.
3626         * gnulib/import/m4/wchar_h.m4: Update.
3627         * gnulib/import/m4/wchar_t.m4: Update.
3628         * gnulib/import/m4/wctype_h.m4: Update.
3629         * gnulib/import/m4/wint_t.m4: Update.
3630         * gnulib/import/malloc.c: Update.
3631         * gnulib/import/malloc/scratch_buffer.h: Update.
3632         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3633         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3634         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3635         * gnulib/import/malloca.c: Update.
3636         * gnulib/import/malloca.h: Update.
3637         * gnulib/import/malloca.valgrind: Update.
3638         * gnulib/import/math.in.h: Update.
3639         * gnulib/import/mbrtowc.c: Update.
3640         * gnulib/import/mbsinit.c: Update.
3641         * gnulib/import/mbsrtowcs-impl.h: Update.
3642         * gnulib/import/mbsrtowcs-state.c: Update.
3643         * gnulib/import/mbsrtowcs.c: Update.
3644         * gnulib/import/memchr.c: Update.
3645         * gnulib/import/memmem.c: Update.
3646         * gnulib/import/mempcpy.c: Update.
3647         * gnulib/import/memrchr.c: Update.
3648         * gnulib/import/mkdir.c: Update.
3649         * gnulib/import/mkstemp.c: Update.
3650         * gnulib/import/msvc-inval.c: Update.
3651         * gnulib/import/msvc-inval.h: Update.
3652         * gnulib/import/msvc-nothrow.c: Update.
3653         * gnulib/import/msvc-nothrow.h: Update.
3654         * gnulib/import/open.c: Update.
3655         * gnulib/import/openat-die.c: Update.
3656         * gnulib/import/openat-priv.h: Update.
3657         * gnulib/import/openat-proc.c: Update.
3658         * gnulib/import/openat.c: Update.
3659         * gnulib/import/openat.h: Update.
3660         * gnulib/import/opendir.c: Update.
3661         * gnulib/import/pathmax.h: Update.
3662         * gnulib/import/pipe-safer.c: Update.
3663         * gnulib/import/rawmemchr.c: Update.
3664         * gnulib/import/readdir.c: Update.
3665         * gnulib/import/readlink.c: Update.
3666         * gnulib/import/realloc.c: Update.
3667         * gnulib/import/ref-add.sin: Update.
3668         * gnulib/import/ref-del.sin: Update.
3669         * gnulib/import/rename.c: Update.
3670         * gnulib/import/rewinddir.c: Update.
3671         * gnulib/import/rmdir.c: Update.
3672         * gnulib/import/same-inode.h: Update.
3673         * gnulib/import/save-cwd.c: Update.
3674         * gnulib/import/save-cwd.h: Update.
3675         * gnulib/import/scratch_buffer.h: Update.
3676         * gnulib/import/secure_getenv.c: Update.
3677         * gnulib/import/setenv.c: Update.
3678         * gnulib/import/signal.in.h: Update.
3679         * gnulib/import/stat-time.c: Update.
3680         * gnulib/import/stat-time.h: Update.
3681         * gnulib/import/stat-w32.c: Update.
3682         * gnulib/import/stat-w32.h: Update.
3683         * gnulib/import/stat.c: Update.
3684         * gnulib/import/stdbool.in.h: Update.
3685         * gnulib/import/stddef.in.h: Update.
3686         * gnulib/import/stdint.in.h: Update.
3687         * gnulib/import/stdio.in.h: Update.
3688         * gnulib/import/stdlib.in.h: Update.
3689         * gnulib/import/str-two-way.h: Update.
3690         * gnulib/import/strchrnul.c: Update.
3691         * gnulib/import/strdup.c: Update.
3692         * gnulib/import/streq.h: Update.
3693         * gnulib/import/strerror-override.c: Update.
3694         * gnulib/import/strerror-override.h: Update.
3695         * gnulib/import/strerror.c: Update.
3696         * gnulib/import/string.in.h: Update.
3697         * gnulib/import/stripslash.c: Update.
3698         * gnulib/import/strnlen1.c: Update.
3699         * gnulib/import/strnlen1.h: Update.
3700         * gnulib/import/strstr.c: Update.
3701         * gnulib/import/strtok_r.c: Update.
3702         * gnulib/import/sys_stat.in.h: Update.
3703         * gnulib/import/sys_time.in.h: Update.
3704         * gnulib/import/sys_types.in.h: Update.
3705         * gnulib/import/tempname.c: Update.
3706         * gnulib/import/tempname.h: Update.
3707         * gnulib/import/time.in.h: Update.
3708         * gnulib/import/unistd--.h: Update.
3709         * gnulib/import/unistd-safer.h: Update.
3710         * gnulib/import/unistd.in.h: Update.
3711         * gnulib/import/unsetenv.c: Update.
3712         * gnulib/import/verify.h: Update.
3713         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3714         * gnulib/import/wchar.in.h: Update.
3715         * gnulib/import/wctype.in.h: Update.
3716         * gnulib/import/xalloc-oversized.h: Update.
3717         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3718         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3719
3720 2018-08-16  Gary Benson <gbenson@redhat.com>
3721
3722         PR gdb/13000:
3723         * gdb/main.c (captured_main_1): Exit with nonzero status
3724         in batch mode if the last command to be executed failed.
3725         * NEWS: Mention the above.
3726
3727 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3728
3729         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3730         end of warning message.
3731
3732 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3733
3734         PR gdb/22943:
3735         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3736         (aarch64_extract_return_value): Use
3737         aapcs_is_vfp_call_or_return_candidate.
3738         (aarch64_return_in_memory): Likewise.
3739         (aarch64_store_return_value): Likewise.
3740
3741 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3742
3743         * aarch64-tdep.c
3744         (aapcs_is_vfp_call_or_return_candidate): Make static
3745         (pass_in_v_or_stack): Remove function.
3746         (pass_in_v_vfp_candidate): New function.
3747         (aarch64_push_dummy_call): Check for float register candidates.
3748
3749 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3750
3751         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3752         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3753         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3754
3755 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3756
3757         PR build/23399
3758         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3759         (struct ipa_sym_addresses): Rename to...
3760         (struct ipa_sym_addresses_common): ... this.
3761         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3762
3763 2018-08-28  Tom Tromey  <tom@tromey.com>
3764
3765         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3766         (token_fifo): Now a std::vector.
3767         (yylex, c_parse): Update.
3768         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3769         (token_fifo): Now a std::vector.
3770         (yylex, d_parse): Update.
3771         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3772         (token_fifo): Now a std::vector.
3773         (yylex, go_parse): Update.
3774
3775 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3776
3777         * parser-defs.h (struct type_stack) <elements>: Change type to
3778         std::vector<union type_stack_elt>.
3779         <depth, size>: Remove.
3780         * parse.c (parse_exp_in_context_1): Adjust.
3781         (type_stack_reserve): Remove.
3782         (check_type_stack_depth): Remove.
3783         (insert_into_type_stack): Adjust to std::vector.
3784         (insert_type): Likewise.
3785         (push_type): Likewise.
3786         (push_type_int): Likewise.
3787         (insert_type_address_space): Likewise.
3788         (pop_type): Likewise.
3789         (pop_type_int): Likewise.
3790         (pop_typelist): Likewise.
3791         (pop_type_stack): Likewise.
3792         (append_type_stack): Likewise.
3793         (push_type_stack): Likewise.
3794         (get_type_stack): Likewise.
3795         (type_stack_cleanup): Likewise.
3796         (push_typelist): Likewise.
3797         (follow_types): Likewise.
3798         (_initialize_parse): Likewise.
3799
3800 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3801
3802         * NEWS: Mention csky target.
3803
3804 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3805             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3806             Don Breazeal  <donb@codesourcery.com>
3807
3808         * csky-linux-tdep.c: New file.
3809         * csky-tdep.c: Likewise.
3810         * csky-tdep.h: Likewise.
3811         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3812         csky-tdep.o.
3813         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3814         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3815         * configure.tgt: Add csky support.
3816
3817 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3818
3819         * python/py-framefilter.c (py_print_frame): Print frame architecture
3820         when printing on an MI output.
3821
3822 2018-08-27  Tom Tromey  <tom@tromey.com>
3823
3824         PR build/23087:
3825         * configure: Rebuild.
3826         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3827
3828 2018-08-27  Tom Tromey  <tom@tromey.com>
3829
3830         * aarch64-linux-tdep.c
3831         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3832         casts to int.
3833
3834 2018-08-27  Tom Tromey  <tom@tromey.com>
3835
3836         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3837         unsigned.
3838         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3839         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3840         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3841         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3842         unsigned.
3843
3844 2018-08-27  Tom Tromey  <tom@tromey.com>
3845
3846         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3847         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3848
3849 2018-08-27  Tom Tromey  <tom@tromey.com>
3850
3851         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3852         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3853         ULONGEST_MAX.
3854         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3855         ULONGEST_MAX.
3856         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3857         ULONGEST_MAX.
3858         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3859         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3860         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3861         ULONGEST_MAX.
3862         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3863         (ppc64_linux_sigaction_tramp_frame)
3864         (ppc32_linux_sighandler_tramp_frame)
3865         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3866         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3867         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3868         * mn10300-linux-tdep.c (am33_linux_sigframe)
3869         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3870         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3871         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3872         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3873         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3874         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3875         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3876         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3877         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3878         * microblaze-linux-tdep.c
3879         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3880         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3881         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3882         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3883         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3884         * common/common-types.h (ULONGEST_MAX): New define.
3885         (CORE_ADDR_MAX): Fix formatting.
3886         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3887         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3888         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3889         (arm_linux_rt_sigreturn_tramp_frame)
3890         (arm_eabi_linux_sigreturn_tramp_frame)
3891         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3892         (thumb2_eabi_linux_sigreturn_tramp_frame)
3893         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3894         (arm_linux_restart_syscall_tramp_frame)
3895         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3896         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3897         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3898         ULONGEST_MAX.
3899         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3900
3901 2018-08-27  Tom Tromey  <tom@tromey.com>
3902
3903         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3904         CORE_ADDR_MAX.
3905         * mips-tdep.c (mips_deal_with_atomic_sequence)
3906         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3907         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3908         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3909         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3910         CORE_ADDR_MAX.
3911         * aarch64-tdep.c (aarch64_software_single_step): Use
3912         CORE_ADDR_MAX.
3913
3914 2018-08-27  Tom Tromey  <tom@tromey.com>
3915
3916         * linespec.c (complete_linespec_component): Add cast to "char".
3917         * completer.c (completion_tracker::build_completion_result): Add
3918         cast to "char".
3919
3920 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3921
3922         * solist.h (struct solist, struct target_so_ops): Fix
3923         indentation.
3924
3925 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3926
3927         * ada-tasks.c (ada_task_info_s): Remove typedef.
3928         (DEF_VEC_O(ada_task_info_s)): Remove.
3929         (struct ada_tasks_inferior_data): Initialize fields.
3930         <task_list>: Make an std::vector.
3931         (get_ada_tasks_inferior_data): Allocate with new.
3932         (ada_get_task_number): Adjust.
3933         (get_task_number_from_id): Likewise.
3934         (valid_task_id): Likewise.
3935         (ada_get_task_info_from_ptid): Likewise.
3936         (iterate_over_live_ada_tasks): Likewise.
3937         (add_ada_task): Likewise.
3938         (read_known_tasks): Likewise.
3939         (ada_build_task_list): Likewise.
3940         (print_ada_task_info): Likewise.
3941         (info_task): Likewise.
3942         (task_command_1): Likewise.
3943
3944 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3945
3946         * ada-lang.c (add_angle_brackets): Return std::string.
3947
3948 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3949
3950         * python/py-threadevent.c (py_get_event_thread): Initialize
3951         pythread.
3952
3953 2018-08-24  Pedro Alves  <palves@redhat.com>
3954
3955         * python/py-bpevent.c (create_breakpoint_event_object): Use
3956         copy-initialization.
3957         * python/py-continueevent.c (emit_continue_event): Use
3958         copy-initialization.
3959         * python/py-exitedevent.c (create_exited_event_object): Return a
3960         gdbpy_ref<>.
3961         (emit_exited_event): Use copy-initialization.
3962         * python/py-inferior.c (python_new_inferior)
3963         (python_inferior_deleted, add_thread_object): Use
3964         copy-initialization.
3965         * python/py-infevents.c (create_inferior_call_event_object)
3966         (create_register_changed_event_object)
3967         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3968         (emit_inferior_call_event, emit_memory_changed_event)
3969         (emit_register_changed_event): Use copy-initialization.
3970         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3971         Return a gdbpy_ref<>.
3972         (emit_new_objfile_event): Use copy-initialization.
3973         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3974         (emit_clear_objfiles_event): Use copy-initialization.
3975         * python/py-signalevent.c (create_signal_event_object): Use
3976         copy-initialization.
3977         * python/py-threadevent.c (create_thread_event_object): Use
3978         copy-initialization.
3979
3980 2018-08-24  Pedro Alves  <palves@redhat.com>
3981             Simon Marchi  <simon.marchi@ericsson.com>
3982
3983         PR gdb/23379
3984         * python/py-continueevent.c: Include "gdbthread.h".
3985         (create_continue_event_object): Add intro comment.  Add 'ptid'
3986         parameter.  Use it to find thread to pass to
3987         create_thread_event_object.
3988         (emit_continue_event): Pass PTID down to
3989         create_continue_event_object.
3990         * python/py-event.h (py_get_event_thread): Declare.
3991         (create_thread_event_object): Remove default from 'thread'
3992         parameter.
3993         * python/py-stopevent.c (create_stop_event_object): Use
3994         py_get_event_thread.
3995         * python/py-threadevent.c (get_event_thread): Rename to ...
3996         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3997         and use it to find the thread.
3998         (create_thread_event_object): Assert that THREAD isn't null.
3999         Don't find the event thread here.
4000
4001 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4002
4003         * block.h (blockrange, blockranges): New struct declarations.
4004         (struct block): Add new field named `ranges'.
4005         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4006         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4007         macros for accessing ranges in struct block.
4008         (make_blockranges): New declaration.
4009         block.c (make_blockranges): New function.
4010         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4011         for block.
4012         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4013         * blockframe.c (cache_pc_function_block): New static global.
4014         (clear_pc_function_cache): Clear cache_pc_function_block.
4015         (find_pc_partial_function): Move comment to symtab.h.  Add
4016         support for non-contiguous blocks.
4017         * cli/cli-cmds.c (block.h): Include.
4018         (print_disassembly): Handle printing of non-contiguous blocks.
4019         (disassemble_current_function): Likewise.
4020         (disassemble_command): Likewise.
4021
4022         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4023         BLOCK_START.
4024         * blockframe.c (get_pc_function_start): Likewise.
4025         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4026         (gcc_symbol_address): Likewise.
4027         * compile/compile-object-run.c (compile_object_run): Likewise.
4028         * compile/compile.c (get_expr_block_and_pc): Likewise.
4029         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4030         (func_addr_to_tail_call_list): Likewise.
4031         * findvar.c (default_read_var_value): Likewise.
4032         * inline-frame.c (inline_frame_this_id): Likewise.
4033         (skip-inline_frames): Likewise.
4034         * infcmd.c (until_next_command): Likewise.
4035         * linespec.c (convert_linespec_to_sals): Likewise.
4036         * parse.c (parse_exp_in_context_1): Likewise.
4037         * printcmd.c (build_address_symbolic): likewise.
4038         (info_address_command): Likewise.
4039         symtab.c (find_function_start_sal): Likewise.
4040         (skip_prologue_sal): Likewise.
4041         (find_function_alias_target): Likewise.
4042         (find_gnu_ifunc): Likewise.
4043         * stack.c (find_frame_funname): Likewise.
4044         * symtab.c (fixup_symbol_section): Likewise.
4045         (find_function_start_sal): Likewise.
4046         (skip_prologue_sal): Likewsie.
4047         (find_function_alias_target): Likewise.
4048         (find_gnu_ifunc): Likewise.
4049         * tracepoint.c (info_scope_command): Likewise.
4050         * value.c (value_fn_field): Likewise.
4051
4052         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4053         in place of find_pc_partial_function.
4054         * blockframe.c (find_function_entry_range_from_pc): New function.
4055         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4056         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4057         for each range in a block.
4058
4059
4060 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4061
4062         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4063         incrementation.
4064
4065 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4066
4067         * solib-svr4.c (read_program_headers_from_bfd): Return
4068         gdb::optional<gdb::byte_vector>.
4069         (svr4_exec_displacement): Adjust.
4070
4071 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4072
4073         * solib-svr4.c (read_program_header): Return
4074         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4075         (find_program_interpreter): Return
4076         gdb::optional<gdb::byte_vector>.
4077         (scan_dyntag_auxv): Adjust.
4078         (enable_break): Adjust.
4079         (svr4_exec_displacement): Adjust.
4080
4081 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4082
4083         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4084         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4085
4086 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4087
4088         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4089         string_vprintf.
4090         * guile/scm-utils.c (gdbscm_printf): Likewise.
4091         * serial.c (serial_printf): Likewise.
4092         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4093
4094 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4095
4096         * stack.c (print_frame): Print frame architecture when printing on
4097         an MI output.
4098         * NEWS: Mention new "arch" attribute in frame output.
4099
4100 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4101
4102         * arch/aarch64.h (aarch64_regnum): Update comment.
4103
4104 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4105
4106         * NEWS: Add SVE to 8.2 section.
4107
4108 2018-08-21  Pedro Alves  <palves@redhat.com>
4109
4110         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4111         out from gdbscm_parse_function_args.
4112         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4113         gdbscm_parse_function_args_1.
4114
4115 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4116
4117         PR gdb/17816
4118         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4119         operator.
4120
4121 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4122
4123         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4124
4125 2018-08-19  Michael Spang  <spang@google.com>
4126
4127         PR gdb/11786
4128         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4129         for PT_TLS segments.
4130
4131 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4132
4133         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4134         dwarf_variable_value.
4135         * dwarf2-frame.c (class dwarf_expr_executor):
4136         Add override for dwarf_variable_value.
4137         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4138         (class symbol_needs_eval_context): Likewise.
4139         (indirect_synthetic_pointer): Add forward declaration.
4140         (sect_variable_value): New function.
4141         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4142         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4143         for DW_OP_GNU_variable_value.
4144
4145 2018-08-16  Tom Tromey  <tom@tromey.com>
4146
4147         * top.c (read_command_file): Update.
4148         (command_line_input): Remove "repeat" argument.
4149         * ada-lang.c (get_selections): Update.
4150         * linespec.c (decode_line_2): Update.
4151         * defs.h (command_line_input): Remove argument.
4152         * cli/cli-script.c (read_next_line): Update.
4153         * python/py-gdb-readline.c: Update.
4154
4155 2018-08-17  Tom Tromey  <tom@tromey.com>
4156
4157         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4158         command_line_input.
4159
4160 2018-08-15  Tom Tromey  <tom@tromey.com>
4161
4162         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4163
4164 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4165
4166         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4167         If used, use find_pc_partial_function to find address range
4168         to disassemble.
4169         * mi/mi-main.c (mi_cmd_list_features): Report
4170         "data-disassemble-a-option" feature.
4171         * NEWS: Mention new -data-disassemble option -a.
4172
4173 2018-08-13  Tom Tromey  <tom@tromey.com>
4174
4175         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4176
4177 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4178
4179         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4180         (aarch64_linux_collect_sve_regset): Likewise.
4181         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4182         * regcache.h (regcache_map_entry_size): New function.
4183
4184 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4185
4186         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4187         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4188         (SVE_HEADER_VL_LENGTH): Likewise.
4189         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4190         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4191         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4192         (SVE_HEADER_SIZE_OFFSET): Likewise.
4193         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4194         (SVE_HEADER_VL_OFFSET): Likewise.
4195         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4196         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4197         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4198         (SVE_HEADER_SIZE): Likewise.
4199         (aarch64_linux_core_read_vq): Add function.
4200         (aarch64_linux_core_read_description): Check for SVE section.
4201
4202 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4203
4204         * aarch64-fbsd-tdep.c
4205         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4206         collect_size.
4207         * aarch64-linux-tdep.c
4208         (aarch64_linux_iterate_over_regset_sections): Likewise.
4209         * alpha-linux-tdep.c
4210         (alpha_linux_iterate_over_regset_sections):
4211         * alpha-nbsd-tdep.c
4212         (alphanbsd_iterate_over_regset_sections): Likewise.
4213         * amd64-fbsd-tdep.c
4214         (amd64fbsd_iterate_over_regset_sections): Likewise.
4215         * amd64-linux-tdep.c
4216         (amd64_linux_iterate_over_regset_sections): Likewise.
4217         * arm-bsd-tdep.c
4218         (armbsd_iterate_over_regset_sections): Likewise.
4219         * arm-fbsd-tdep.c
4220         (arm_fbsd_iterate_over_regset_sections): Likewise.
4221         * arm-linux-tdep.c
4222         (arm_linux_iterate_over_regset_sections): Likewise.
4223         * corelow.c (get_core_registers_cb): Likewise.
4224         (core_target::fetch_registers): Likewise.
4225         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4226         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4227         * gdbarch.h (void): Regenerate.
4228         * gdbarch.sh: Add supply_size and collect_size.
4229         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4230         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4231         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4232         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4233         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4234         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4235         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4236         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4237         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4238         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4239         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4240         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4241         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4242         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4243         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4244         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4245         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4246         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4247         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4248         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4249         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4250         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4251         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4252         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4253         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4254         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4255         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4256         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4257         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4258         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4259
4260 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4261
4262         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4263         with string_printf.
4264
4265 2018-08-10  Keith Seitz  <keiths@redhat.com>
4266
4267         * compile/compile-c-support.c (add_code_header, add_code_footer):
4268         Move into policy class.
4269         (c_push_user_expression, pop_user_expression_nop)
4270         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4271         (compile_program): New host class.
4272         (c_compile_program): New typedef.
4273         (c_compute_porgram): Use c_compile_program.
4274
4275 2018-08-10  Keith Seitz  <keiths@redhat.com>
4276
4277         * compile/compile-internal.h (compile_instance::~compile_instance):
4278         Remove calls to htab_delete.
4279         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4280         * compile.c (compile_instance::compile_instance): Initialize
4281         htab unique pointers.
4282         (compile_instance::get_cached_type, compile_instance::insert_type)
4283         (compile_instance::error_symbol_once): Update for unique_ptr.
4284
4285 2018-08-10  Keith Seitz  <keiths@redhat.com>
4286
4287         * compile/compile-c-symbols.c (struct symbol_error)
4288         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4289         (compile_instance::insert_symbol_error)
4290         (compile_instance::error_symbol_once): Move to ...
4291         * compile/compile.c: ... here.
4292
4293 2018-08-10  Keith Seitz  <keiths@redhat.com>
4294
4295         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4296         instead of `new_compile_instance'.
4297         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4298         Update description.
4299         If the symbol error map is not initialized, create it.
4300         (generate_c_for_for_one_symbol): Do not check/initialize
4301         the symbol error map.
4302         * compile/compile-c-types.c (compile_c_instance): Make a class.
4303         Update all callers.
4304         (compile_instance::compile_instance): Initialize the type cache.
4305         (get_cached_type): New function.
4306         (insert_type): Update description.
4307         (compile_c_instance::m_default_cflags): Define.
4308         (convert_type): Update description.  Use get_cached_type.
4309         (delete_instance): Moved to destructor.
4310         (new_compile_instance): Moved to constructor.
4311         * compile/compile-c.h (compile_c_instance): Make class inheriting
4312         from compile_instance.
4313         <base>: Remove field.
4314         <type_map, symbol_err_map>: Move to base class.
4315         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4316         * compile/compile-internal.h (compile_instance): Make class.
4317         <type_map_t, symbol_err_map_t>: Define.
4318         <fe>: Rename to `m_gcc_fe'.
4319         <scope, block, gcc_target_options>: Add `m_' prefix.
4320         <m_type_map, m_symbol_err_map>: New fields, moved from
4321         compile_c_instance.
4322         <destroy>: Remove.
4323         (convert_type, new_compile_instance): Remove.
4324         * compile/compile.c (cleanup_compile_instance): Remove.
4325         (compile_to_object): Use unique_ptr to eliminate cleanups.
4326         (compile_instance::set_print_callback, compile_instance::version)
4327         (compile_instance::set_verbose)
4328         (compile_instance::set_driver_filename)
4329         (compile_instance::set_triplet_regexp)
4330         (compile_instance::set_arguments)
4331         (compile_instance::set_source_file)
4332         (compile_instance::compile): Define.
4333
4334 2018-08-10  Keith Seitz  <keiths@redhat.com>
4335
4336         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4337         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4338         gcc-c-fe.def to define C plugin.
4339         (delete_instance): Delete `c_plugin'.
4340         (new_compile_instance): Initialize `c_plugin'.
4341         * compile/compile-c.h: Include gcc_c_plugin.h.
4342         (struct compile_c_instance) <c_plugin>: New member.
4343         * gcc-c-plugin.h: New file.
4344         Update all callers with API change.
4345
4346 2018-08-10  Keith Seitz  <keiths@redhat.com>
4347
4348         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4349         (HFILES_NO_SRCDIR): ... to here.
4350         Add compile-internal.h and compile-c.h.
4351         * compile/compile-c-support.c: Include compile-c.h.
4352         * compile/compile-c-symbols.c: Include compile-c.h.
4353         (generate_c_for_variable_locations): Update comment.
4354         * compile/compile-c-types.c: Include compile-c.h.
4355         * compile/compile-c.h: New file -- moved C language declarations
4356         from other files here.
4357         * compile/compile-internal.h: Do not include hashtab.h or
4358         common/enum-flags.h.
4359         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4360         (gcc_convert_symbol, gcc_symbol_address)
4361         (generate_c_for_variable_locations, c_get_mode_for_size)
4362         (c_get_range_decl_name): Definitions moved to compile-c.h.
4363         * compile/compile-loc2c.c: Include compile-c.h.
4364
4365 2018-08-10  Keith Seitz  <keiths@redhat.com>
4366
4367         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4368         (c_symbol_substitution_name): ... this.
4369         Update all callers.
4370
4371 2018-08-10  Keith Seitz  <keiths@redhat.com>
4372
4373         * compile/compile-c-support.c (c_compute_program): Use
4374         unique_xmalloc_ptr to eliminate cleanup.
4375         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4376         Return a unique_xmalloc_ptr and eliminate cleanup.
4377         * compile/compile-internal.h (generate_c_for_variable_locations):
4378         Return unique_xmalloc_ptr and update description.
4379
4380 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4381
4382         * corelow.c (core_target::get_core_register_section): Rename
4383         min_size to section_min_size.
4384
4385 2018-08-09  Jim Wilson  <jimw@sifive.com>
4386
4387         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4388         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4389         * NEWS: Mention new GNU/Linux RISC-V target.
4390         * configure.host: Add riscv*-*-linux*.
4391         * configure.nat: Add riscv*.
4392         * configure.tgt: Add riscv*-*-linux*.
4393         * riscv-linux-nat.c: New file.
4394         * riscv-linux-tdep.c: New file.
4395
4396 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4397
4398         * infrun.c (resume): Make static, add forward declaration.
4399         (proceed): Update header comment.
4400         * infrun.h (resume): Delete declaration.
4401
4402 2018-08-09  Tom Tromey  <tom@tromey.com>
4403
4404         * riscv-tdep.h: Minor formatting fixes.
4405
4406 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4407
4408         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4409         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4410         (test_mkdir_recursive): Likewise.
4411         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4412
4413 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4414
4415         * valarith.c (value_subscripted_rvalue): If an array is not in
4416         memory, and we don't know the upper bound, then we can't know that
4417         the requested element exists or not.
4418
4419 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4420
4421         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4422         (target_options_to_string): Add comment.
4423
4424 2018-08-08  Tom Tromey  <tom@tromey.com>
4425
4426         * unittests/scoped_mmap-selftests.c: Check result of "write".
4427
4428 2018-08-08  Jim Wilson  <jimw@sifive.com>
4429
4430         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4431         (decode_register_index_short): New.
4432         (decode_j_type_insn, decode_cj_type_insn): New.
4433         (decode_b_type_insn, decode_cb_type_insn): New.
4434         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4435         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4436         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4437         is_c_sw_insn instead of is_sw_insn.
4438         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4439         (riscv_software_single_step): New.
4440         * riscv-tdep.h (riscv_software_single_step): Declare.
4441
4442         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4443         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4444
4445 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4446
4447         PR gdb/18050:
4448         * target.c (dispose_inferior): Don't dispose of inferiors that are
4449         already killed.
4450
4451 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4452
4453         * remote.c (remote_target::download_tracepoint): Change char* to
4454         const char*.
4455
4456 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4457
4458         * target.h (target_options_to_string): Return an std::string.
4459         * target.c (str_comma_list_concat_elem): Return void, use
4460         std::string.
4461         (do_option): Likewise.
4462         (target_options_to_string): Return an std::string.
4463         * linux-nat.c (linux_nat_target::wait): Adjust.
4464         * target-debug.h (target_debug_print_options): Adjust.
4465
4466 2018-08-07  Tom Tromey  <tom@tromey.com>
4467
4468         * Makefile.in (CPPFLAGS): New variable.
4469         (INTERNAL_CPPFLAGS): Use it.
4470
4471 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4472
4473         * NEWS: Mention the index cache.
4474
4475 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4476
4477         * common/pathstuff.h (get_standard_cache_dir): New.
4478         * common/pathstuff.c (get_standard_cache_dir): New.
4479         * build-id.h (build_id_to_string): New.
4480         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4481         DEBUG_STR_SUFFIX): Move to here.
4482         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4483         DEBUG_STR_SUFFIX): Move from there.
4484         (write_psymtabs_to_index): Make non-static, add basename
4485         parameter.  Write to temporary files, rename when done.
4486         (save_gdb_index_command): Adjust call to
4487         write_psymtabs_to_index.
4488         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4489         field.
4490         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4491         (get_gdb_index_contents_from_cache): New.
4492         (get_gdb_index_contents_from_cache_dwz): New.
4493         (dwarf2_initialize_objfile): Read index from cache.
4494         (dwarf2_build_psymtabs): Save to index.
4495         * dwarf-index-cache.h: New file.
4496         * dwarf-index-cache.c: New file.
4497         * dwarf-index-write.h: New file.
4498
4499 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4500
4501         * gnulib/aclocal.m4: Re-generate.
4502         * gnulib/config.in: Re-generate.
4503         * gnulib/configure: Re-generate.
4504         * gnulib/import/Makefile.am: Re-generate.
4505         * gnulib/import/Makefile.in: Re-generate.
4506         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4507         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4508         * gnulib/import/m4/mkdir.m4: New file.
4509         * gnulib/import/mkdir.c: New file.
4510         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4511         module.
4512
4513 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4514
4515         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4516         * common/scoped_mmap.c: New file.
4517         * common/scoped_mmap.h (destroy): New method.
4518         (~scoped_mmap, reset): Use destroy.
4519         (scoped_mmap): New move constructor.
4520         (mmap_file): New declaration.
4521         * unittests/scoped_mmap-selftests.c (test_normal,
4522         test_invalid_filename, run_tests): New functions.
4523         (_initialize_scoped_mmap_selftests): Register selftest.
4524
4525 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4526
4527         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4528         (read_gdb_index_from_buffer): ... this.  Remove section
4529         parameter, add buffer parameter.
4530         (get_gdb_index_contents_ftype,
4531         get_gdb_index_contents_dwz_ftype): New typedefs.
4532         (dwarf2_read_gdb_index): Add callback parameters to get the
4533         index contents.
4534         (get_gdb_index_contents_from_section): New.
4535         (dwarf2_initialize_objfile): Update call to
4536         dwarf2_read_gdb_index.
4537
4538 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4539
4540         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4541         (gdb_open_cloexec): Likewise.
4542         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4543         (commandline_from_pid): Likewise.
4544         (linux_xfer_osdata_threads): Likewise.
4545         (linux_xfer_osdata_fds): Likewise.
4546         * ada-lang.c (is_package_name): Likewise.
4547         * auxv.c (procfs_xfer_auxv): Likewise.
4548         * breakpoint.c (print_one_breakpoint_location): Use
4549         uiout::field_fmt.
4550         (print_one_catch_solib): Use string_printf.
4551         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4552         (add_pe_forwarded_sym): Likewise.
4553         * dwarf2read.c (create_type_unit_group): Likewise.
4554         (build_error_marker_type): Likewise.
4555         * infcall.c (get_function_name): Likewise.
4556         * valprint.c (print_converted_chars_to_obstack): Likewise.
4557         * xtensa-tdep.c (xtensa_register_type): Likewise.
4558
4559 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4560
4561         * remote.c (remote_target::download_tracepoint): Fix format
4562         string errors.
4563
4564 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4565
4566         * tracefile.c: Include common/byte-vector.h.
4567         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4568         with trace_regblock_size if needed.  Update uses of buf.
4569
4570 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4571
4572         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4573         std::vector<unsigned char>.
4574         * tracepoint.c (collection_list::collection_list): Remove
4575         m_regs_mask initializer from initializer list.  Resize
4576         m_regs_mask using the largest remote register number.
4577         (collection_list::add_remote_register): Remove size check on
4578         m_regs_mask.  Use at to access element.
4579         (collection_list::stringify): Change type of temp_buf to
4580         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4581         stringify the register mask.  Use pack_hex_byte for the register
4582         mask.
4583
4584 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4585
4586         * tracepoint.h (class collection_list) <add_register>: Remove.
4587         <add_remote_register, add_ax_registers, add_local_register>:
4588         Declare.
4589         <add_memrange>: Add scope parameter.
4590         * tracepoint.c (encode_actions_1): Likewise.
4591         (collection_list::add_register): Rename to ...
4592         (collection_list::add_remote_register): ... this.  Update
4593         comment.
4594         (collection_list::add_ax_registers, add_local_register): New
4595         methods.
4596         (collection_list::add_memrange): Add scope parameter.  Call
4597         add_local_register instead of add_register.
4598         (finalize_tracepoint_aexpr): New function.
4599         (collection_list::collect_symbol): Update calls to add_memrange.
4600         Call add_local_register instead of add_register.  Call
4601         add_ax_registers.  Call finalize_tracepoint_aexpr.
4602         (encode_actions_1): Get remote regnos for $reg action.  Call
4603         add_remote_register, add_ax_registers, and add_local_register.
4604         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4605         (validate_actionline): Call finalize_tracepoint_aexpr.
4606
4607 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4608
4609         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4610         Replace array buf with gdb::char_vector buf, of size
4611         get_remote_packet_size ().  Replace references to buf and
4612         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4613         and xsnprintf with snprintf.  Raise errors if the buffer is too
4614         small.
4615
4616 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4617
4618         * remote.c (remote_target::download_tracepoint): Fix the has_more
4619         predicate in the QTDP action list iteration.
4620
4621 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4622
4623         * remote.c (remote_target::download_tracepoint): Fix indentation
4624         in for block.
4625
4626 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4627
4628         * proc-api.c (_initialize_proc_api): Remove c, unused.
4629         * procfs.c (procfs_init_inferior): Remove signals, unused.
4630         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4631         unused.
4632
4633 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4634             Andrew Burgess  <andrew.burgess@embecosm.com>
4635
4636         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4637         'W_STOPCODE (0)' as this could be ambiguous.
4638
4639 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4640
4641         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4642         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4643         "ai_socktype").
4644
4645 2018-08-02  Tom Tromey  <tom@tromey.com>
4646
4647         PR symtab/16842.
4648         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4649         symbols.
4650         (process_structure_scope): Likewise.
4651
4652 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4653
4654         PR gdb/22629:
4655         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4656         kill inferior.
4657
4658 2018-08-02  Tom Tromey  <tom@tromey.com>
4659
4660         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4661         (darwin_suspend_inferior, darwin_resume_inferior)
4662         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4663         (darwin_check_new_threads): Check result of get_darwin_inferior.
4664
4665 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4666
4667         GDB 8.1.1 released.
4668
4669 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4670
4671         * varobj.c (varobj_get_path_expr_parent): Report an error if
4672         parent is a dynamic varobj.
4673
4674 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4675
4676         * gnulib/aclocal.m4: Re-generate.
4677         * gnulib/config.in: Re-generate.
4678         * gnulib/configure: Re-generate.
4679         * gnulib/import/Makefile.in: Re-generate.
4680         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4681         * gnulib/import/m4/onceonly.m4: Re-generate.
4682
4683 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4684
4685         * target-descriptions.c (struct xml_test_tdesc): New.
4686         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4687         (record_xml_tdesc): Update.
4688         (maintenance_check_xml_descriptions): Update.
4689         * target-descriptions.h (record_xml_tdesc): Update comment.
4690
4691 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4692
4693         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4694         checking array bounds are defined.
4695
4696 2018-07-30  Tom Tromey  <tom@tromey.com>
4697
4698         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4699         irreflexivity violation.
4700
4701 2018-07-30  Tom Tromey  <tom@tromey.com>
4702
4703         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4704         * value.c (unpack_long): Remove lint code.
4705         * valops.c (value_ind): Remove lint code.
4706         * valarith.c (value_x_binop, value_x_unop, value_equal)
4707         (value_pos): Remove lint code.
4708
4709 2018-07-28  Tom de Vries  <tdevries@suse.de>
4710
4711         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4712         with undefined upper bound as <optimized out>.
4713
4714 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4715
4716         * gcore.in: Rename variable "name" to "prefix".  Expand
4717         "usage" text.
4718
4719 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4720
4721         * windows-nat.c (windows_nat_target::create_inferior): Update to
4722         call close() in global namespace.
4723
4724 2018-07-26  Tom Tromey  <tom@tromey.com>
4725
4726         * dwarf-index-write.c (add_address_entry): Don't add objfile
4727         offsets.
4728         * dbxread.c (find_stab_function): Rename from
4729         find_stab_function_addr.  Return a bound_minimal_symbol.
4730         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4731         Don't add objfile offsets.
4732         (end_psymtab): Use raw_text_low, raw_text_high,
4733         MSYMBOL_VALUE_RAW_ADDRESS.
4734         (read_ofile_symtab): Update.
4735         (process_one_symbol): Update.
4736         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4737         offsets.
4738         (dw2_relocate): Remove.
4739         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4740         searching addrmap.
4741         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4742         Update.
4743         (process_psymtab_comp_unit_reader, add_partial_symbol)
4744         (add_partial_subprogram, dwarf2_ranges_read): Update.
4745         (load_partial_dies): Update.
4746         (add_address_entry): Don't add objfile offsets.
4747         (dwarf2_build_include_psymtabs): Update.
4748         (create_addrmap_from_aranges): Don't add objfile offsets.
4749         (dw2_find_pc_sect_compunit_symtab): Update.
4750         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4751         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4752         Update.
4753         (parse_partial_symbols): Don't add objfile offsets.  Use
4754         raw_text_low, raw_text_high.  Update.
4755         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4756         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4757         or call 'relocate' quick function.  Clear psymbol_map.
4758         * psympriv.h (struct partial_symbol) <address>: Add section
4759         offset.
4760         <set_unrelocated_address>: Rename from set_address.
4761         <raw_text_low, raw_text_high>: New methods.
4762         <text_low, text_high>: Add objfile parameter.
4763         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4764         set_unrelocated_address.
4765         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4766         (find_pc_psymbol): Update.
4767         (fixup_psymbol_section, relocate_psymtabs): Remove.
4768         (dump_psymtab, psym_functions): Update.
4769         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4770         parameter.
4771         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4772         (start_psymtab_common): Update.
4773         * symfile-debug.c (debug_qf_relocate): Remove.
4774         (debug_sym_quick_functions): Update.
4775         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4776         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4777         Update.
4778
4779 2018-07-26  Tom Tromey  <tromey@redhat.com>
4780
4781         * dbxread.c (end_psymtab): Use text_high_valid and
4782         text_low_valid.
4783         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4784         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4785         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4786         Update comment.
4787         <text_low_valid, text_high_valid>: New fields.
4788         <set_text_low, set_text_high>: Update.
4789         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4790
4791 2018-07-26  Tom Tromey  <tom@tromey.com>
4792
4793         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4794         Update.
4795         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4796         textlow and texthigh fields.
4797         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4798         Update.
4799         * mdebugread.c (parse_lines, parse_partial_symbols)
4800         (psymtab_to_symtab_1): Update.
4801         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4802         Rename fields.  Update comment.  Now private.
4803         <text_low, text_high, set_text_low, set_text_high>: New methods.
4804         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4805         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4806         (start_psymtab_common, maintenance_info_psymtabs)
4807         (maintenance_check_psymtabs): Update.
4808         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4809         texthigh fields.
4810         (scan_xcoff_symtab): Update.
4811
4812 2018-07-26  Tom Tromey  <tromey@redhat.com>
4813
4814         * psympriv.h (struct partial_symbol) <unrelocated_address,
4815         address, set_address>: New methods.
4816         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4817         (fixup_psymbol_section, relocate_psymtabs): Update.
4818         (print_partial_symbols): Add 'objfile' parameter.  Update.
4819         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4820         Update.
4821
4822 2018-07-26  Tom Tromey  <tom@tromey.com>
4823
4824         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4825         (debug_names::write_psymbols): Update.
4826         * psympriv.h (struct partial_symbol): Derive from
4827         general_symbol_info.
4828         <obj_section>: New method.
4829         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4830         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4831         (find_pc_sect_psymbol, fixup_psymbol_section)
4832         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4833         (print_partial_symbols, recursively_search_psymtabs)
4834         (compare_psymbols, psymbol_hash, psymbol_compare)
4835         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4836         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4837
4838 2018-07-26  Tom Tromey  <tromey@redhat.com>
4839
4840         * dbxread.c (end_psymtab): Remove dead code.
4841
4842 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4843
4844         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4845         DWARF unwinders are disabled.
4846         * dwarf2-frame.c: Add dwarf2read.h include.
4847         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4848         disabled.
4849         (dwarf2_frame_unwinders_enabled_p): Define.
4850         (show_dwarf_unwinders_enabled_p): New function.
4851         (_initialize_dwarf2_frame): Register switch to control DWARF
4852         unwinder use.
4853         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4854         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4855         (show_dwarf_cmdlist): Remove static keyword.
4856         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4857         (show_dwarf_cmdlist): Declare.
4858         * NEWS: Document new feature.
4859
4860 2018-07-26  Tom de Vries  <tdevries@suse.de>
4861
4862         PR breakpoints/23366
4863         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4864
4865 2018-07-26  Tom de Vries  <tdevries@suse.de>
4866
4867         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4868         DW_AT_count can't be translated to a dynamic prop.
4869
4870 2018-07-25  Tom de Vries  <tdevries@suse.de>
4871
4872         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4873         try/catch.
4874
4875 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4876
4877         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4878
4879 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4880
4881         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4882
4883 2018-07-24  Keith Seitz  <keiths@redhat.comt
4884
4885         PR symtab/23010
4886         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4887         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4888         instead of add_symbol_to_list.
4889         (read_file_scope): Call prepare_one_comp_unit before reading
4890         any other DIEs.
4891
4892 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4893
4894         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4895
4896 2018-07-24  Tom Tromey  <tom@tromey.com>
4897
4898         * utils.c (malloc, realloc, free): Don't declare.
4899         * configure, config.in: Rebuild.
4900         * configure.ac: Don't check for declarations of free, malloc, or
4901         realloc.
4902
4903 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4904
4905         * aarch64-linux-nat.c
4906         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4907         variable.
4908         * arm-linux-nat.c (fetch_regs): Likewise.
4909         (store_regs): Likewise.
4910         (fetch_vfp_regs): Likewise.
4911         (store_vfp_regs): Likewise.
4912         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4913         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4914         (arm_linux_nat_target::insert_watchpoint): Likewise.
4915         (arm_linux_nat_target::remove_watchpoint): Likewise.
4916         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4917         Likewise.
4918         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4919         Likewise.
4920         * ppc-linux-nat.c (fetch_register): Likewise.
4921         (fetch_all_gp_regs): Likewise.
4922         (fetch_ppc_registers): Likewise.
4923         (store_all_gp_regs): Likewise.
4924         (store_ppc_registers): Likewise.
4925         (hwdebug_insert_point): Likewise.
4926         (can_use_watchpoint_cond_accel): Likewise.
4927         * remote-sim.c (gdb_os_write_stdout): Likewise.
4928
4929 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4930             Tom Tromey  <tom@tromey.com>
4931
4932         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4933         test for it.
4934         * configure: Rebuild.
4935
4936 2018-07-22  Tom Tromey  <tom@tromey.com>
4937
4938         * regformats/regdat.sh: Define xmltarget_${name} inside
4939         #ifndef IN_PROCESS_AGENT.
4940
4941 2018-07-22  Tom Tromey  <tom@tromey.com>
4942
4943         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4944
4945 2018-07-22  Tom Tromey  <tom@tromey.com>
4946
4947         * symfile.c (reread_symbols): Notify iter, not objfile.
4948
4949 2018-07-22  Tom Tromey  <tom@tromey.com>
4950
4951         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4952         Use arch_ops.
4953         (ravenscar_thread_target::prepare_to_store): Likewise.
4954
4955 2018-07-22  Tom Tromey  <tom@tromey.com>
4956
4957         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4958         unused variable.  Call value_fetch_lazy when needed.
4959         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4960         Remove unused variable.  Call value_fetch_lazy when needed.
4961
4962 2018-07-22  Tom Tromey  <tom@tromey.com>
4963
4964         * m32c-tdep.c (mark_dma): Return void.
4965         (make_regs): Remove unused declarations.
4966
4967 2018-07-22  Tom Tromey  <tom@tromey.com>
4968
4969         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4970         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4971         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4972         bkscm_get_valid_block_smob_arg_unsafe for effect.
4973
4974 2018-07-22  Tom Tromey  <tom@tromey.com>
4975
4976         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4977         value_type.
4978
4979 2018-07-22  Tom Tromey  <tom@tromey.com>
4980
4981         * windows-nat.c (saved_context): Conditionally define.
4982         * remote.c (remote_target::remote_btrace_maybe_reopen):
4983         Conditionally declare "warned".
4984         * inflow.c (sigquit_ours): Conditionally define.
4985         (new_tty): Move "tty" declaration inside #if.
4986         * guile/guile.c (guile_datadir): Conditionally define.
4987         * charset.c (set_be_le_names): Move some declarations inside #if.
4988         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4989         #if.
4990         (parse_xml_btrace_conf): Likewise.
4991
4992 2018-07-22  Tom Tromey  <tom@tromey.com>
4993
4994         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4995
4996 2018-07-22  Tom Tromey  <tom@tromey.com>
4997
4998         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4999         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5000         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5001         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5002         * stack.c (frame_apply_level_command): Remove unused variable.
5003         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5004         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5005         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5006         unused variable.
5007         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5008         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5009         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5010         variable.
5011         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5012         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5013         variable.
5014         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5015         Remove unused variable.
5016         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5017         variable.
5018         * common/tdesc.c (print_xml_feature::visit): Remove unused
5019         variable.
5020         * compile/compile-object-load.c (store_regs): Remove unused
5021         variables.
5022         * complaints.c (clear_complaints): Remove unused variable.
5023         * corelow.c (core_target_open): Remove unused variable.
5024         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5025         variable.
5026         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5027         variable.
5028         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5029         variable.
5030         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5031         variable.
5032         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5033         variable.
5034         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5035         variable.
5036         * ia64-tdep.c (examine_prologue): Remove unused variable.
5037         * infcall.c (run_inferior_call): Remove unused variable.
5038         * inferior.c (exit_inferior): Remove unused variable.
5039         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5040         * linespec.c (decode_line_2): Remove unused variable.
5041         * linux-nat.c (super_close): Remove.
5042         * linux-tdep.c (linux_info_proc): Remove unused variable.
5043         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5044         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5045         Remove unused variable.
5046         * parse.c (find_minsym_type_and_address): Remove unused variable.
5047         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5048         variable.
5049         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5050         variable.
5051         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5052         variables.
5053         * record-btrace.c (record_btrace_target::store_registers): Remove
5054         unused variable.
5055         (cmd_show_record_btrace_cpu): Remove unused variable.
5056         * riscv-tdep.c (riscv_register_reggroup_p)
5057         (riscv_push_dummy_call, riscv_return_value): Remove unused
5058         variable.
5059         * rust-exp.y (literal): Remove unused variable.
5060         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5061         unused variable.
5062         <STRUCTOP_ANONYMOUS>: Likewise.
5063         * s390-linux-tdep.c (s390_linux_init_abi_31)
5064         (s390_linux_init_abi_64): Remove unused variable.
5065         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5066         (file_select_thread, net_windows_open, _initialize_ser_windows):
5067         Remove unused variables.
5068         * symtab.c (find_pc_sect_line): Remove unused variable.
5069         * target-memory.c (compute_garbled_blocks): Remove unused
5070         variable.
5071         (target_write_memory_blocks): Remove unused variable.
5072         * target.c (target_stack::unpush): Remove unused variables.
5073         * tracepoint.c (start_tracing, all_tracepoint_actions)
5074         (merge_uploaded_trace_state_variables)
5075         (print_one_static_tracepoint_marker): Remove unused variable.
5076         * unittests/basic_string_view/element_access/char/1.cc (test01):
5077         Remove unused variable.
5078         * windows-nat.c (windows_continue, windows_add_all_dlls)
5079         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5080         Remove unused variables.
5081
5082 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5083
5084         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5085         attr_profile in HAVE_ELF.
5086         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5087         HAVE_ELF.
5088
5089 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5090
5091         * frame.c (frame_register_unwind): Change parameter name.
5092         (frame_unwind_register): Likewise.
5093         (frame_unwind_register_value): Likewise.
5094         (frame_unwind_register_signed): Likewise.
5095         (frame_unwind_register_unsigned): Likewise.
5096         * frame.h (frame_register_unwind): Likewise.
5097         (frame_unwind_register): Likewise.
5098         (frame_unwind_register_value): Likewise.
5099         (frame_unwind_register_signed): Likewise.
5100         (frame_unwind_register_unsigned): Likewise.
5101         (frame_unwind_arch): Likewise.
5102
5103 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5104
5105         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5106         ISA maintenance.
5107
5108 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5109
5110         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5111         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5112         hand.
5113
5114 2018-07-20  Keith Seitz  <keiths@redhat.com>
5115
5116         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5117         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5118         m_compunit_symtab, m_language>: Add "m_" prefix.
5119         Update all uses.
5120         * buildsym.c: Update all uses.
5121
5122 2018-07-20  Tom Tromey  <tom@tromey.com>
5123
5124         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5125         * buildsym.h (record_line_ftype): Remove typedef.
5126
5127 2018-07-20  Tom Tromey  <tom@tromey.com>
5128
5129         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5130         (end_expandable_symtab): Likewise.
5131         (end_symtab_get_static_block): Likewise.
5132         (end_symtab_from_static_block): Likewise.
5133         * buildsym-legacy.c (augment_type_symtab): Remove.
5134         (end_expandable_symtab): Remove.
5135         (end_symtab_get_static_block): Remove.
5136         (end_symtab_from_static_block): Remove.
5137
5138 2018-07-20  Tom Tromey  <tom@tromey.com>
5139
5140         * dwarf2read.c: Include buildsym.h.
5141         (struct dwarf2_cu) <builder>: New method.
5142         (fixup_go_packaging): Update.
5143         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5144         use scoped_free_pendings.
5145         (using_directives): Add "cu" parameter, remove "language".
5146         (read_import_statement, setup_type_unit_groups, )
5147         (read_func_scope, read_lexical_block_scope)
5148         (dwarf2_record_block_ranges, read_namespace): Update.
5149         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5150         (lnp_state_machine::handle_end_sequence): Update.
5151         (class lnp_state_machine) <m_cu>: New member.
5152         <m_record_line_callback>: Remove.
5153         <m_currently_recording_lines>: New member.
5154         (lnp_state_machine::handle_set_file): Update.
5155         (noop_record_line): Remove.
5156         (dwarf_record_line_p): Add cu parameter.
5157         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5158         (lnp_state_machine::record_line)
5159         (lnp_state_machine::lnp_state_machine)
5160         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5161         (dwarf_decode_lines): Update.
5162         (dwarf2_start_subfile): Add cu parameter.
5163         (dwarf2_start_symtab, new_symbol): Update.
5164         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5165         Remove dwarf2_per_objfile parameter.
5166         (dwarf_decode_macros): Update.
5167
5168 2018-07-20  Tom Tromey  <tom@tromey.com>
5169
5170         * stabsread.c (define_symbol): Update.
5171         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5172         * dwarf2read.c (new_symbol): Update.
5173         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5174         * cp-namespace.c: Include buildsym.h.
5175         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5176         * buildsym-legacy.c (get_buildsym_compunit): New function.
5177
5178 2018-07-20  Tom Tromey  <tom@tromey.com>
5179
5180         * xcoffread.c: Include buildsym-legacy.h.
5181         * windows-nat.c: Include buildsym-legacy.h.
5182         * stabsread.c: Include buildsym-legacy.h.
5183         * mdebugread.c: Include buildsym-legacy.h.
5184         * buildsym-legacy.h: New file.
5185         * buildsym-legacy.c: New file, from buildsym.c.
5186         * go32-nat.c: Include buildsym-legacy.h.
5187         * dwarf2read.c: Include buildsym-legacy.h.
5188         * dbxread.c: Include buildsym-legacy.h.
5189         * cp-namespace.c: Include buildsym-legacy.h.
5190         * coffread.c: Include buildsym-legacy.h.
5191         * buildsym.h: Move some contents to buildsym-legacy.h.
5192         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5193         buildsym-legacy.c.
5194         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5195
5196 2018-07-20  Tom Tromey  <tom@tromey.com>
5197
5198         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5199         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5200         (buildsym_compunit::buildsym_compunit)
5201         (buildsym_compunit::~buildsym_compunit)
5202         (buildsym_compunit::get_macro_table): Define.
5203
5204 2018-07-20  Tom Tromey  <tom@tromey.com>
5205
5206         * buildsym.c (reset_symtab_globals): Remove.
5207         (buildsym_compunit::end_symtab_from_static_block): Update.
5208         (buildsym_compunit::augment_type_symtab): Update.
5209         (end_symtab_from_static_block): Call free_buildsym_compunit.
5210         (augment_type_symtab, end_symtab, end_expandable_symtab):
5211         Likewise.
5212
5213 2018-07-20  Tom Tromey  <tom@tromey.com>
5214
5215         * arch-utils.c: Do not include buildsym.h.
5216         * mipsread.c: Do not include buildsym.h.
5217         * machoread.c: Do not include buildsym.h.
5218         * elfread.c: Do not include buildsym.h.
5219
5220 2018-07-20  Tom Tromey  <tom@tromey.com>
5221
5222         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5223         initialization.
5224         (buildsym_compunit): Add new constructor.
5225         (struct buildsym_compunit) <get_last_source_file, finish_block,
5226         record_block_range, start_subfile, patch_subfile_names,
5227         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5228         set_last_source_start_addr, get_last_source_start_addr,
5229         get_local_using_directives, set_local_using_directives,
5230         get_global_using_directives, outermost_context_p,
5231         get_current_context_stack, get_context_stack_depth,
5232         get_current_subfile, get_local_symbols, get_file_symbols,
5233         get_global_symbols, record_debugformat, record_producer,
5234         push_context, pop_context, end_symtab_get_static_block,
5235         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5236         New public methods.
5237         <record_pending_block, finish_block_internal, make_blockvector,
5238         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5239         private methods.
5240         Update all users.
5241
5242 2018-05-22  Tom Tromey  <tom@tromey.com>
5243
5244         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5245         parameter.
5246         (finish_block_internal): Update.
5247
5248 2018-07-20  Tom Tromey  <tom@tromey.com>
5249
5250         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5251         parameter.
5252         (finish_block_internal): Update.
5253
5254 2018-07-20  Tom Tromey  <tom@tromey.com>
5255
5256         * buildsym.h (EXTERN): Don't define or undef.
5257         * buildsym.c (EXTERN): Don't define.
5258
5259 2018-07-20  Tom Tromey  <tom@tromey.com>
5260
5261         * buildsym.c: Remove TODO comment.
5262
5263 2018-07-20  Tom Tromey  <tom@tromey.com>
5264
5265         * coffread.c (coff_symtab_read): Update.
5266         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5267         (xcoff_new_init): Update.
5268         * mipsread.c (mipscoff_new_init): Update.
5269         * mdebugread.c (mdebug_build_psymtabs): Update.
5270         * elfread.c (elf_new_init): Update.
5271         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5272         Update.
5273         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5274         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5275         (stabsect_build_psymtabs): Update.
5276         * buildsym.h (buildsym_init): Don't declare.
5277         * buildsym.c: Update comment.
5278         (prepare_for_building): Remove.
5279         (start_symtab, restart_symtab): Update.
5280         (reset_symtab_globals): Update comment.
5281         (buildsym_init): Remove.
5282
5283 2018-07-20  Tom Tromey  <tom@tromey.com>
5284
5285         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5286         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5287         (read_enum_type, common_block_start, common_block_end)
5288         (cleanup_undefined_types_1, finish_global_stabs): Update.
5289         * mdebugread.c (psymtab_to_symtab_1): Update.
5290         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5291         (read_lexical_block_scope, new_symbol): Update.
5292         * dbxread.c (process_one_symbol): Update.
5293         * coffread.c (coff_symtab_read, process_coff_symbol)
5294         (coff_read_enum_type): Update.
5295         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5296         declare.
5297         (get_local_symbols, get_file_symbols, get_global_symbols): New
5298         functions.
5299         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5300         m_global_symbols.
5301         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5302         (~scoped_free_pendings): Update.
5303         (finish_block, prepare_for_building, reset_symtab_globals)
5304         (end_symtab_get_static_block, end_symtab_with_blockvector)
5305         (augment_type_symtab, push_context): Update.
5306         (get_local_symbols, get_file_symbols, get_global_symbols): New
5307         functions.
5308         (buildsym_init): Update.
5309
5310 2018-07-20  Tom Tromey  <tom@tromey.com>
5311
5312         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5313         (process_full_type_unit): Likewise.
5314         (dwarf2_start_symtab): Set list_in_scope.
5315
5316 2018-07-20  Tom Tromey  <tom@tromey.com>
5317
5318         * dwarf2read.c (process_psymtab_comp_unit_reader)
5319         (build_type_psymtabs_reader): Do not set list_in_scope.
5320
5321 2018-07-20  Tom Tromey  <tom@tromey.com>
5322
5323         * buildsym.c (free_pendings): Remove.
5324         (add_symbol_to_list, scoped_free_pendings)
5325         (finish_block_internal, buildsym_init): Update.
5326
5327 2018-07-20  Tom Tromey  <tom@tromey.com>
5328
5329         * xcoffread.c (read_xcoff_symtab): Update.
5330         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5331         Update.
5332         * dbxread.c (process_one_symbol): Update.
5333         * coffread.c (coff_symtab_read): Update.
5334         * buildsym.h (finish_block): Update.
5335         * buildsym.c (finish_block): Remove "listhead" argument.
5336         (end_symtab_get_static_block): Update.
5337
5338 2018-07-20  Tom Tromey  <tom@tromey.com>
5339
5340         * buildsym.h (class scoped_free_pendings): Remove constructor.
5341         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5342         method.
5343         <m_pending_block_obstack, m_pending_blocks>: New members.
5344         (pending_block_obstack, pending_blocks): Remove.
5345         (scoped_free_pendings::scoped_free_pendings): Default.
5346         (~scoped_free_pendings): Update.
5347         (free_pending_blocks): Remove.
5348         (finish_block_internal, record_pending_block, make_blockvector)
5349         (end_symtab_get_static_block, augment_type_symtab, push_context)
5350         (buildsym_init): Update.
5351
5352 2018-07-20  Tom Tromey  <tom@tromey.com>
5353
5354         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5355         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5356         members.
5357         (pending_addrmap, pending_addrmap_obstack)
5358         (pending_addrmap_interesting): Remove.
5359         (scoped_free_pendings, record_block_range, make_blockvector)
5360         (prepare_for_building, reset_symtab_globals, buildsym_init):
5361         Update.
5362
5363 2018-07-20  Tom Tromey  <tom@tromey.com>
5364
5365         * xcoffread.c (process_linenos): Update.
5366         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5367         * mdebugread.c (psymtab_to_symtab_1): Update.
5368         * dwarf2read.c (setup_type_unit_groups)
5369         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5370         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5371         * dbxread.c (process_one_symbol): Update.
5372         * coffread.c (coff_symtab_read, enter_linenos)
5373         (process_coff_symbol): Update.
5374         * buildsym.h (current_subfile): Don't declare.
5375         (get_current_subfile): Declare.
5376         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5377         member.
5378         (start_subfile, free_buildsym_compunit, push_subfile)
5379         (prepare_for_building, start_symtab): Update.
5380         (get_current_subfile): New function.
5381
5382 2018-07-20  Tom Tromey  <tom@tromey.com>
5383
5384         * coffread.c (coff_symtab_read): Update.
5385         * xcoffread.c (read_xcoff_symtab): Update.
5386         * dwarf2read.c (new_symbol): Update.
5387         (read_func_scope, read_lexical_block_scope): Update.
5388         * dbxread.c (process_one_symbol): Update.
5389         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5390         (outermost_context_p): Remove macro.
5391         (outermost_context_p, get_current_context_stack)
5392         (get_context_stack_depth): Declare.
5393         (pop_context): Return struct context_stack.
5394         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5395         member.
5396         (context_stack_size): Remove.
5397         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5398         (prepare_for_building, end_symtab_get_static_block)
5399         (augment_type_symtab, push_context): Update.
5400         (pop_context): Return struct context_stack.
5401         (outermost_context_p, get_current_context_stack)
5402         (get_context_stack_depth): New functions.
5403         (buildsym_init): Update.
5404
5405 2018-07-20  Tom Tromey  <tom@tromey.com>
5406
5407         * rust-exp.y: Now a pure parser.  Update all rules.
5408         (%union): Move earlier.
5409         (current_parser, work_obstack): Remove globals.
5410         (rust_parser, ~rust_parser): Update.
5411         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5412         lex_character, lex_number, lex_string, lex_identifier,
5413         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5414         convert_name, convert_params_to_expression,
5415         convert_ast_to_expression, ast_basic_type, ast_operation,
5416         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5417         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5418         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5419         ast_array_type, ast_slice_type, ast_reference_type,
5420         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5421         (rust_parse): Update.
5422         (rustyyerror, rustyylex): Add parser parameter.
5423         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5424         (rust_lex_stringish_test, rust_lex_test_sequence)
5425         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5426         (rust_lex_test_push_back, rust_lex_tests): Update.
5427
5428 2018-07-19  Pedro Alves  <palves@redhat.com>
5429
5430         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5431         gdb::unique_xmalloc_ptr.
5432         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5433         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5434         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5435         copy-initialization.
5436         * guile/scm-pretty-print.c (ppscm_print_children): Use
5437         gdb::unique_xmalloc_ptr instead of cleanups.
5438         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5439         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5440         gdb::unique_xmalloc_ptr.
5441         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5442         Adjust to use gdb::unique_xmalloc_ptr.
5443         * guile/scm-utils.c (extract_arg): Adjust.
5444         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5445         gdb::unique_xmalloc_ptr instead of a cleanup.
5446
5447 2018-07-19  Tom Tromey  <tom@tromey.com>
5448
5449         * utils.c (do_value_free_to_mark)
5450         (make_cleanup_value_free_to_mark): Remove.
5451         * utils.h (make_cleanup_value_free_to_mark): Remove.
5452
5453 2018-07-19  Pedro Alves  <palves@redhat.com>
5454
5455         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5456         forwarding reference.
5457
5458 2018-07-18  Pedro Alves  <palves@redhat.com>
5459
5460         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5461         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5462         cleanup.
5463
5464 2018-07-18  Pedro Alves  <palves@redhat.com>
5465
5466         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5467         exceptions.
5468         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5469         (gdbscm_wrap): New.
5470         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5471         directly instead of a cleanup.
5472         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5473         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5474         (vlscm_binop_gdbthrow): New, factored out from ...
5475         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5476         (vlscm_rich_compare): Use gdbscm_wrap.
5477         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5478         instead of a cleanup.
5479         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5480         cleanup.
5481         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5482         Use xfree directly instead of a cleanup.
5483         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5484         Adjust to use gdbscm_wrap and scoped_value_mark.
5485         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5486         (gdbscm_value_address, gdbscm_value_dereference)
5487         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5488         scoped_value_mark.
5489         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5490         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5491         scoped_value_mark.
5492         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5493         gdbscm_wrap and scoped_value_mark.
5494         (gdbscm_value_to_string): Use xfree directly instead of a
5495         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5496         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5497         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5498         scoped_value_mark.
5499         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5500         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5501         scoped_value_mark.
5502         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5503         gdbscm_wrap.
5504
5505 2018-07-18  Tom de Vries  <tdevries@suse.de>
5506
5507         * findvar.c (default_read_var_value): Also resolve dynamic type for
5508         LOC_OPTIMIZED_OUT vars.
5509
5510 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5511
5512         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5513         decoding.
5514
5515 2018-07-17  Tom Tromey  <tom@tromey.com>
5516
5517         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5518         (compute_enum_list, pascm_set_param_value_x)
5519         (gdbscm_parameter_value): Update.
5520         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5521         (gdbscm_scm_to_host_string): Update.
5522         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5523         Update.
5524         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5525         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5526         * guile/scm-string.c (gdbscm_scm_to_string): Return
5527         unique_xmalloc_ptr.
5528         (gdbscm_scm_to_host_string): Likewise.
5529
5530 2018-07-17  Tom Tromey  <tom@tromey.com>
5531
5532         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5533         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5534         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5535         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5536         unique_xmalloc_ptr.
5537
5538 2018-07-17  Tom Tromey  <tom@tromey.com>
5539
5540         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5541         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5542         Update.
5543         * guile/scm-cmd.c (cmdscm_function): Update.
5544         * guile/scm-pretty-print.c
5545         (ppscm_print_exception_unless_memory_error): Update.
5546         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5547         Return unique_xmalloc_ptr.
5548
5549 2018-07-17  Tom Tromey  <tom@tromey.com>
5550
5551         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5552         Use string_printf.
5553
5554 2018-07-17  Jim Wilson  <jimw@sifive.com>
5555
5556         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5557         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5558         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5559         unecessary braces after EF_RISCV_RVC test.  Delete call to
5560         set_gdbarch_decr_pc_after_break.
5561
5562         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5563         RISCV_LAST_FP_REGNUM + 1.
5564         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5565
5566 2018-07-17  Tom Tromey  <tom@tromey.com>
5567
5568         * configure.ac: Remove --disable-gdbcli.
5569         * configure: Rebuild.
5570         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5571         (SUBDIR_CLI_CFLAGS): Remove.
5572         (SFILES): Use SUBDIR_CLI_SRCS.
5573         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5574
5575 2018-07-17  Tom Tromey  <tom@tromey.com>
5576
5577         PR gdb/18624:
5578         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5579
5580 2018-07-16  Jim Wilson  <jimw@sifive.com>
5581
5582         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5583
5584 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5585
5586         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5587         variable.
5588         (libunwind_frame_sniffer): Likewise.
5589         (libunwind_frame_prev_register): Likewise.
5590         (libunwind_sigtramp_frame_sniffer): Likewise.
5591         * ia64-tdep.c (ia64_access_reg): Likewise.
5592         (ia64_access_rse_reg): Likewise.
5593         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5594         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5595
5596 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5597
5598         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5599
5600 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5601
5602         * remote-sim.c (gdbsim_target::close,
5603         gdbsim_target::mourn_inferior): Remove unused variables.
5604
5605 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5606
5607         * ia64-tdep.c (ktab_buf): New global.
5608         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5609         (get_kernel_table): Adjust.
5610
5611 2018-07-16  Tom Tromey  <tom@tromey.com>
5612
5613         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5614         * dwarf2read.c (using_directives, new_symbol): Use
5615         outermost_context_p.
5616         * dbxread.c (process_one_symbol): Use outermost_context_p.
5617         * coffread.c (coff_symtab_read): Use outermost_context_p.
5618
5619 2018-07-16  Tom Tromey  <tom@tromey.com>
5620
5621         * dwarf2read.c (using_directives, read_func_scope)
5622         (read_lexical_block_scope): Update.
5623         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5624         * buildsym.h (local_using_directives, global_using_directives):
5625         Don't declare.
5626         (get_local_using_directives, set_local_using_directives)
5627         (get_global_using_directives): Declare.
5628         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5629         m_global_using_directives>: New members.
5630         (finish_block_internal, prepare_for_building)
5631         (reset_symtab_globals, end_symtab_get_static_block)
5632         (push_context): Update.
5633         (get_local_using_directives, set_local_using_directives)
5634         (get_global_using_directives): New functions.
5635         (buildsym_init): Update.
5636
5637 2018-07-16  Tom Tromey  <tom@tromey.com>
5638
5639         * xcoffread.c (xcoff_initial_scan): Don't call
5640         free_pending_blocks.
5641         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5642         * buildsym.h (class scoped_free_pendings): Add constructor.
5643         (free_pending_blocks): Don't declare.
5644         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5645         (free_pending_blocks): Now static.
5646
5647 2018-07-16  Tom Tromey  <tom@tromey.com>
5648
5649         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5650         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5651         member.
5652         (struct subfile_stack): Remove.
5653         (subfile_stack): Remove.
5654         (push_subfile, pop_subfile, buildsym_init): Update.
5655
5656 2018-07-16  Tom Tromey  <tom@tromey.com>
5657
5658         * buildsym.c (push_subfile): Use gdb_assert.
5659         (pop_subfile): Use gdb_assert.
5660
5661 2018-07-16  Tom Tromey  <tom@tromey.com>
5662
5663         * buildsym.h (merge_symbol_lists): Remove.
5664         * buildsym.c (merge_symbol_lists): Remove.
5665
5666 2018-07-16  Tom Tromey  <tom@tromey.com>
5667
5668         * stabsread.c (scan_file_globals): Update comment.
5669         * stabsread.h (scan_file_globals): Move from buildsym.h.
5670         * buildsym.h (scan_file_globals): Move to stabsread.h.
5671
5672 2018-07-16  Tom Tromey  <tom@tromey.com>
5673
5674         * xcoffread.c (xcoff_new_init): Update.
5675         * mipsread.c (mipscoff_new_init): Update.
5676         * mdebugread.c (mdebug_build_psymtabs): Update.
5677         * elfread.c (elf_new_init): Update.
5678         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5679         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5680         * buildsym.h (buildsym_new_init): Don't declare.
5681         * buildsym.c (buildsym_new_init): Remove.
5682
5683 2018-07-16  Tom Tromey  <tom@tromey.com>
5684
5685         * stabsread.h (within_function): Move from buildsym.h.
5686         * stabsread.c (start_stabs): Clear within_function.
5687         * coffread.c (coff_start_symtab): Clear within_function.
5688         * buildsym.h (within_function): Move to stabsread.h.
5689         * buildsym.c (prepare_for_building): Update.
5690
5691 2018-07-16  Tom Tromey  <tom@tromey.com>
5692
5693         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5694         * dwarf2read.c (dwarf2_start_symtab): Don't set
5695         processing_gcc_compilation.
5696         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5697
5698 2018-07-16  Tom Tromey  <tom@tromey.com>
5699
5700         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5701         (next_symbol_text_func): Move from buildsym.h.
5702         * stabsread.c (hashname): Move from buildsym.c.
5703         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5704         (next_symbol_text_func, hashname): Move to stabsread.h.
5705         * buildsym.c: Don't include bcache.h
5706         (hashname): Move to stasbread.c.
5707
5708 2018-07-16  Tom Tromey  <tom@tromey.com>
5709
5710         * buildsym.h (context_stack_size): Don't declare.
5711         * buildsym.c (context_stack_size): New global.
5712
5713 2018-07-16  Tom Tromey  <tom@tromey.com>
5714
5715         * dbxread.c (processing_acc_compilation): New global.
5716         * buildsym.h (processing_acc_compilation): Don't declare.
5717
5718 2018-07-16  Tom Tromey  <tom@tromey.com>
5719
5720         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5721         * dbxread.c (read_ofile_symtab): Update.
5722         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5723         * buildsym.h (last_source_start_addr): Remove.
5724         (set_last_source_start_addr, get_last_source_start_addr):
5725         Declare.
5726         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5727         parameter.
5728         (struct buildsym_compunit) <m_last_source_start_addr>: New
5729         member.
5730         (prepare_for_building): Remove start_addr parameter.
5731         (start_symtab, restart_symtab, end_symtab_get_static_block)
5732         (end_symtab_with_blockvector): Update.
5733         (set_last_source_start_addr, get_last_source_start_addr): New
5734         functions.
5735
5736 2018-07-16  Tom Tromey  <tom@tromey.com>
5737
5738         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5739         member.
5740         (have_line_numbers): Remove.
5741         (record_line, prepare_for_building, end_symtab_get_static_block)
5742         (augment_type_symtab): Update.
5743
5744 2018-07-16  Tom Tromey  <tom@tromey.com>
5745
5746         * buildsym.c (~buildsym_compunit): Free the macro table.
5747         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5748         methods.
5749         <m_pending_macros>: New member.
5750         (pending_macros): Remove.
5751         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5752         (reset_symtab_globals, end_symtab_get_static_block)
5753         (end_symtab_with_blockvector, augment_type_symtab)
5754         (buildsym_init): Update.
5755
5756 2018-07-16  Tom Tromey  <tom@tromey.com>
5757
5758         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5759         parameter.
5760         (buildsym_compunit::set_last_source_file): New method.
5761         <m_last_source_file>: New member.
5762         (prepare_for_building): Remove "name" parameter.
5763         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5764         (last_source_file): Remove.
5765         (set_last_source_file, get_last_source_file): Update.
5766
5767 2018-07-16  Tom Tromey  <tom@tromey.com>
5768
5769         * buildsym.c (prepare_for_building): Add assert.
5770
5771 2018-07-16  Tom Tromey  <tom@tromey.com>
5772
5773         * buildsym.c (~buildsym_compunit): Update.
5774         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5775         (start_subfile, patch_subfile_names)
5776         (end_symtab_with_blockvector): Update.
5777
5778 2018-07-16  Tom Tromey  <tom@tromey.com>
5779
5780         * buildsym.c (struct buildsym_compunit): Add constructor,
5781         destructor, initializers.
5782         (start_buildsym_compunit): Remove.
5783         (free_buildsym_compunit): Use "delete".
5784         (start_symtab, restart_symtab): Use "new".
5785
5786 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5787
5788         * symfile.c (set_objfile_default_section_offset): Remove struct
5789         keyword.
5790
5791 2018-07-14  Stafford Horne  <shorne@gmail.com>
5792
5793         * (Responsible Maintainers): Add myself as or1k maintainer.
5794
5795 2018-07-13  Tom Tromey  <tom@tromey.com>
5796
5797         * symfile.c (set_objfile_default_section_offset): Use extra braces
5798         around initializer.
5799
5800 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5801
5802         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5803         non-branching basr.
5804
5805 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5806
5807         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5808         unittests/cli-utils-selftests.c
5809         * unittests/cli-utils-selftests.c: New file.
5810
5811 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5812
5813         * NEWS: Mention new commands. Mention change to 'thread apply'.
5814
5815 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5816
5817         * thread.c (thr_try_catch_cmd): New function.
5818         (thread_apply_all_command): Handle qcs flags.
5819         (thread_apply_command): Handle qcs flags.
5820         (taas_command): New function.
5821         (tfaas_command): New function.
5822         (_initialize_thread): Update to setup the new commands 'taas
5823         and 'tfaas'. Change doc string for 'thread apply'.
5824
5825 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5826
5827         * stack.c: (trailing_outermost_frame): New function, mostly
5828         extracted from backtrace_command_1.
5829         (leading_innermost_frame): New function.
5830         (backtrace_command_1): Update to call trailing_outermost_frame.
5831         (frame_apply_command_count): New function.
5832         (frame_apply_level_command): New function.
5833         (frame_apply_all_command): New function.
5834         (frame_apply_command): New function.
5835         (faas_command): New function.
5836         (frame_cmd_list): New variable.
5837         (_initialize_stack): Update to setup the new commands 'frame apply'
5838         and 'faas'.
5839
5840 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5841
5842         * cli-utils.c (number_or_range_parser::get_number): Only handle
5843         numbers or convenience var as numbers.
5844         (parse_flags): New function.
5845         (parse_flags_qcs): New function.
5846         (number_or_range_parser::finished): Ensure parsing end is detected
5847         before end of string.
5848         * cli-utils.h (parse_flags): New function.
5849         (parse_flags_qcs): New function.
5850         (number_or_range_parser): Remove m_finished bool.
5851         (number_or_range_parser::skip_range): Set m_in_range to false.
5852
5853 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5854
5855         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5856         on Windows.
5857
5858 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5859             Jan Kratochvil  <jan.kratochvil@redhat.com>
5860             Paul Fertser  <fercerpav@gmail.com>
5861             Tsutomu Seki  <sekiriki@gmail.com>
5862             Pedro Alves  <palves@redhat.com>
5863
5864         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5865         'unittests/parse-connection-spec-selftests.c'.
5866         (COMMON_SFILES): Add 'common/netstuff.c'.
5867         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5868         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5869         * common/netstuff.c: New file.
5870         * common/netstuff.h: New file.
5871         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5872         (wait_for_connect): Update comment.  New parameter
5873         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5874         Use 'sock' directly instead of 'scb->fd'.
5875         (try_connect): New function, with code from 'net_open'.
5876         (net_open): Rewrite main loop to deal with multiple
5877         sockets/addresses.  Handle IPv6-style hostnames; implement
5878         support for IPv6 connections.
5879         * unittests/parse-connection-spec-selftests.c: New file.
5880
5881 2018-07-11  Pedro Alves  <palves@redhat.com>
5882
5883         PR gdb/23377
5884         * remote.c (remote_target::remote_detach_pid): Call
5885         set_current_process.
5886
5887 2018-07-11  Pedro Alves  <palves@redhat.com>
5888
5889         * h8300-tdep.c (h8300_gdbarch_init): Remove
5890         set_gdbarch_ecoff_reg_to_regnum calls.
5891
5892 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5893
5894         PR c++/23373
5895         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5896         offsets/sizes for static members of a class/struct.
5897
5898 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5899
5900         * target-descriptions.c (tdesc_register_bitsize): Rename.
5901         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5902         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5903         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5904
5905 2018-07-10  Tom Tromey  <tom@tromey.com>
5906
5907         * breakpoint.c (moribund_locations): Now static and a
5908         std::vector.
5909         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5910         (build_bpstat_chain, update_global_location_list)
5911         (breakpoint_retire_moribund): Update.
5912         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5913         VEC.
5914
5915 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5916
5917         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5918         (riscv_register_reggroup_p): Use new function, remove unneeded
5919         parenthesis.
5920         (riscv_push_dummy_call): Extend assert to compare against xlen or
5921         flen based on register type.
5922
5923 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5924
5925         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5926
5927 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5928
5929         * remote.c (show_hardware_watchpoint_limit): New function.
5930         (show_hardware_watchpoint_length_limit): New function.
5931         (show_hardware_breakpoint_limit): New function.
5932         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5933         where appropriate, update help text.
5934
5935 2018-07-09  Tom Tromey  <tom@tromey.com>
5936
5937         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5938         (CLIBS): Don't mention NAT_CLIBS.
5939
5940 2018-07-09  Tom Tromey  <tom@tromey.com>
5941
5942         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5943         (LIBGDB_OBS, clean mostlyclean): Update.
5944         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5945
5946 2018-07-09  Tom Tromey  <tom@tromey.com>
5947
5948         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5949         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5950         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5951
5952 2018-07-09  Tom Tromey  <tom@tromey.com>
5953
5954         * Makefile.in (ALLDEPFILES): Remove exec.c.
5955         (COMMON_OBS): Remove exec.o.
5956         (COMMON_SFILES): Add exec.c.
5957
5958 2018-07-09  Tom Tromey  <tom@tromey.com>
5959
5960         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5961
5962 2018-07-09  Tom Tromey  <tom@tromey.com>
5963
5964         * Makefile.in (clean mostlyclean): Remove stamp-version.
5965         (version.c): Depend on stamp-version.
5966         (stamp-version): New rule, from version.c rule.
5967
5968 2018-07-09  Tom Tromey  <tom@tromey.com>
5969
5970         * Makefile.in (init.c): Depend on stamp-init.
5971         (stamp-init): New rule, from init.c rule.
5972         (clean mostlyclean): Remove stamp-init.
5973
5974 2018-07-09  Tom Tromey  <tom@tromey.com>
5975
5976         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5977         SUBDIR_GCC_COMPILE_SRCS.
5978
5979 2018-07-09  Tom Tromey  <tom@tromey.com>
5980
5981         * Makefile.in (init.c): Remove some unused sed rules.
5982
5983 2018-07-09  Tom Tromey  <tom@tromey.com>
5984
5985         * Makefile.in (TSOBS): Remove.
5986         (INIT_FILES): Update.
5987         (LIBGDB_OBS): Update.
5988         (COMMON_SFILES): Add inflow.c.
5989         (SFILES): Remove inflow.c.
5990
5991 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5992
5993         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5994
5995 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5996
5997         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5998         get_saveloc_name, is_signal_frame_name, step_name,
5999         init_remote_name, create_addr_space_name,
6000         destroy_addr_space_name, search_unwind_table_name,
6001         find_dyn_list_name): Constify.
6002
6003 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6004
6005         * darwin-nat.c (darwin_pthread_kill): New function.
6006         (darwin_resume_thread): Use darwin_pthread_kill.
6007
6008 2018-07-05  Tom de Vries  <tdevries@suse.de>
6009
6010         * macroexp.c (macro_buffer) <operator=>: New member function.
6011
6012 2018-07-04  Tom Tromey  <tom@tromey.com>
6013
6014         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6015
6016 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6017
6018         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6019         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6020         * maint.c: Likewise.
6021         * top.c: Likewise.
6022
6023 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6024
6025         * NEWS: Create a new section for the next release branch.
6026         Rename the section of the current branch, now that it has
6027         been cut.
6028
6029 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6030
6031         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6032         * version.in: Bump version to 8.2.50.DATE-git.
6033
6034 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6035             Pedro Alves  <palves@redhat.com>
6036
6037         * linux-nat.c (linux_init_ptrace): Rename to ...
6038         (linux_init_ptrace_procfs): ... this.  Call
6039         linux_proc_init_warnings.
6040         (linux_nat_target::post_attach)
6041         (linux_nat_target::post_startup_inferior): Adjust.
6042         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6043         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6044
6045 2018-07-04  Tom de Vries  <tdevries@suse.de>
6046
6047         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6048         check ...
6049         (read_comp_unit_head): ... here.
6050
6051 2018-07-03  Tom Tromey  <tom@tromey.com>
6052
6053         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6054         (stop_tracing, tstatus_command)
6055         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6056         (print_one_static_tracepoint_marker): Update.
6057         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6058         std::vector.
6059         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6060         VEC.
6061         (all_tracepoints, static_tracepoints_here): Return std::vector.
6062
6063 2018-07-03  Tom Tromey  <tom@tromey.com>
6064
6065         * common/ptid.c (ptid_equal): Remove.
6066         * common/ptid.h (ptid_equal): Don't declare.
6067         * ada-tasks.c: Update.
6068         * breakpoint.c: Update.
6069         * common/agent.c: Update.
6070         * corelow.c: Update.
6071         * darwin-nat-info.c: Update.
6072         * darwin-nat.c: Update.
6073         * dcache.c: Update.
6074         * dtrace-probe.c: Update.
6075         * dummy-frame.c: Update.
6076         * fbsd-nat.c: Update.
6077         * frame.c: Update.
6078         * gdbthread.h: Update.
6079         * gnu-nat.c: Update.
6080         * go32-nat.c: Update.
6081         * inf-loop.c: Update.
6082         * inf-ptrace.c: Update.
6083         * infcall.c: Update.
6084         * infcmd.c: Update.
6085         * inflow.c: Update.
6086         * infrun.c: Update.
6087         * linux-fork.c: Update.
6088         * linux-nat.c: Update.
6089         * linux-thread-db.c: Update.
6090         * mi/mi-cmd-var.c: Update.
6091         * mi/mi-interp.c: Update.
6092         * mi/mi-main.c: Update.
6093         * nto-procfs.c: Update.
6094         * ppc-linux-tdep.c: Update.
6095         * procfs.c: Update.
6096         * python/py-inferior.c: Update.
6097         * python/py-record-btrace.c: Update.
6098         * python/py-record.c: Update.
6099         * ravenscar-thread.c: Update.
6100         * regcache.c: Update.
6101         * remote-sim.c: Update.
6102         * remote.c: Update.
6103         * sol-thread.c: Update.
6104         * solib.c: Update.
6105         * target.c: Update.
6106         * tui/tui-stack.c: Update.
6107         * varobj.c: Update.
6108         * windows-nat.c: Update.
6109         * windows-tdep.c: Update.
6110
6111 2018-07-03  Tom Tromey  <tom@tromey.com>
6112
6113         * common/ptid.c (ptid_match): Remove.
6114         * common/ptid.h (ptid_match): Don't declare.
6115         * fbsd-nat.c: Update.
6116         * infcmd.c: Update.
6117         * infrun.c: Update.
6118         * linux-nat.c: Update.
6119         * record-btrace.c: Update.
6120         * regcache.c: Update.
6121         * remote.c: Update.
6122
6123 2018-07-03  Tom Tromey  <tom@tromey.com>
6124
6125         * common/ptid.c (ptid_tid_p): Remove.
6126         * common/ptid.h (ptid_tid_p): Don't declare.
6127         * sol-thread.c: Update.
6128
6129 2018-07-03  Tom Tromey  <tom@tromey.com>
6130
6131         * common/ptid.c (ptid_lwp_p): Remove.
6132         * common/ptid.h (ptid_lwp_p): Don't declare.
6133         * fbsd-nat.c: Update.
6134         * linux-nat.c: Update.
6135         * nat/linux-procfs.c: Update.
6136         * nat/x86-linux-dregs.c: Update.
6137         * sol-thread.c: Update.
6138
6139 2018-07-03  Tom Tromey  <tom@tromey.com>
6140
6141         * common/ptid.c (ptid_is_pid): Remove.
6142         * common/ptid.h (ptid_is_pid): Don't declare.
6143         * infrun.c: Update.
6144         * linux-nat.c: Update.
6145         * mi/mi-interp.c: Update.
6146         * remote.c: Update.
6147         * thread.c: Update.
6148
6149 2018-07-03  Tom Tromey  <tom@tromey.com>
6150
6151         * common/ptid.c (ptid_get_tid): Remove.
6152         * common/ptid.h (ptid_get_tid): Don't declare.
6153         * ada-tasks.c: Update.
6154         * aix-thread.c: Update.
6155         * bsd-uthread.c: Update.
6156         * darwin-nat.c: Update.
6157         * fbsd-nat.c: Update.
6158         * i386-darwin-nat.c: Update.
6159         * infrun.c: Update.
6160         * linux-tdep.c: Update.
6161         * nto-procfs.c: Update.
6162         * ppc-ravenscar-thread.c: Update.
6163         * python/py-infthread.c: Update.
6164         * ravenscar-thread.c: Update.
6165         * sol-thread.c: Update.
6166         * sparc-ravenscar-thread.c: Update.
6167         * windows-nat.c: Update.
6168
6169 2018-07-03  Tom Tromey  <tom@tromey.com>
6170
6171         * common/ptid.c (ptid_get_lwp): Remove.
6172         * common/ptid.h (ptid_get_lwp): Don't declare.
6173         * aarch64-linux-nat.c: Update.
6174         * ada-tasks.c: Update.
6175         * aix-thread.c: Update.
6176         * amd64-linux-nat.c: Update.
6177         * arm-linux-nat.c: Update.
6178         * corelow.c: Update.
6179         * fbsd-nat.c: Update.
6180         * fbsd-tdep.c: Update.
6181         * gnu-nat.c: Update.
6182         * i386-cygwin-tdep.c: Update.
6183         * i386-gnu-nat.c: Update.
6184         * i386-linux-nat.c: Update.
6185         * ia64-linux-nat.c: Update.
6186         * inf-ptrace.c: Update.
6187         * infrun.c: Update.
6188         * linux-fork.c: Update.
6189         * linux-nat.c: Update.
6190         * linux-tdep.c: Update.
6191         * linux-thread-db.c: Update.
6192         * mips-linux-nat.c: Update.
6193         * nat/aarch64-linux-hw-point.c: Update.
6194         * nat/aarch64-linux.c: Update.
6195         * nat/linux-btrace.c: Update.
6196         * nat/linux-osdata.c: Update.
6197         * nat/linux-procfs.c: Update.
6198         * nat/x86-linux-dregs.c: Update.
6199         * obsd-nat.c: Update.
6200         * ppc-fbsd-nat.c: Update.
6201         * ppc-linux-nat.c: Update.
6202         * procfs.c: Update.
6203         * python/py-infthread.c: Update.
6204         * ravenscar-thread.c: Update.
6205         * remote.c: Update.
6206         * s390-linux-nat.c: Update.
6207         * sol-thread.c: Update.
6208         * sol2-tdep.c: Update.
6209         * spu-linux-nat.c: Update.
6210         * x86-linux-nat.c: Update.
6211         * xtensa-linux-nat.c: Update.
6212
6213 2018-07-03  Tom Tromey  <tom@tromey.com>
6214
6215         * common/ptid.c (ptid_get_pid): Remove.
6216         * common/ptid.h (ptid_get_pid): Don't declare.
6217         * aarch64-linux-nat.c: Update.
6218         * ada-lang.c: Update.
6219         * aix-thread.c: Update.
6220         * alpha-bsd-nat.c: Update.
6221         * amd64-fbsd-nat.c: Update.
6222         * amd64-linux-nat.c: Update.
6223         * arm-linux-nat.c: Update.
6224         * arm-nbsd-nat.c: Update.
6225         * auxv.c: Update.
6226         * break-catch-syscall.c: Update.
6227         * breakpoint.c: Update.
6228         * bsd-uthread.c: Update.
6229         * corelow.c: Update.
6230         * ctf.c: Update.
6231         * darwin-nat.c: Update.
6232         * fbsd-nat.c: Update.
6233         * fbsd-tdep.c: Update.
6234         * gcore.c: Update.
6235         * gnu-nat.c: Update.
6236         * hppa-nbsd-nat.c: Update.
6237         * hppa-obsd-nat.c: Update.
6238         * i386-fbsd-nat.c: Update.
6239         * ia64-linux-nat.c: Update.
6240         * inf-ptrace.c: Update.
6241         * infcmd.c: Update.
6242         * inferior.c: Update.
6243         * inferior.h: Update.
6244         * inflow.c: Update.
6245         * infrun.c: Update.
6246         * linux-fork.c: Update.
6247         * linux-nat.c: Update.
6248         * linux-tdep.c: Update.
6249         * linux-thread-db.c: Update.
6250         * m68k-bsd-nat.c: Update.
6251         * mi/mi-interp.c: Update.
6252         * mi/mi-main.c: Update.
6253         * mips-linux-nat.c: Update.
6254         * mips-nbsd-nat.c: Update.
6255         * mips64-obsd-nat.c: Update.
6256         * nat/aarch64-linux-hw-point.c: Update.
6257         * nat/aarch64-linux.c: Update.
6258         * nat/linux-btrace.c: Update.
6259         * nat/linux-osdata.c: Update.
6260         * nat/linux-procfs.c: Update.
6261         * nat/x86-linux-dregs.c: Update.
6262         * nto-procfs.c: Update.
6263         * obsd-nat.c: Update.
6264         * ppc-linux-nat.c: Update.
6265         * ppc-nbsd-nat.c: Update.
6266         * ppc-obsd-nat.c: Update.
6267         * proc-service.c: Update.
6268         * procfs.c: Update.
6269         * python/py-inferior.c: Update.
6270         * python/py-infthread.c: Update.
6271         * ravenscar-thread.c: Update.
6272         * record.c: Update.
6273         * remote-sim.c: Update.
6274         * remote.c: Update.
6275         * rs6000-nat.c: Update.
6276         * s390-linux-nat.c: Update.
6277         * sh-nbsd-nat.c: Update.
6278         * sol-thread.c: Update.
6279         * sparc-nat.c: Update.
6280         * sparc64-tdep.c: Update.
6281         * spu-linux-nat.c: Update.
6282         * spu-tdep.c: Update.
6283         * target-debug.h: Update.
6284         * target.c: Update.
6285         * thread.c: Update.
6286         * tid-parse.c: Update.
6287         * tracefile-tfile.c: Update.
6288         * vax-bsd-nat.c: Update.
6289         * windows-nat.c: Update.
6290         * x86-linux-nat.c: Update.
6291         * x86-nat.c: Update.
6292
6293 2018-07-03  Tom Tromey  <tom@tromey.com>
6294
6295         * common/ptid.c (pid_to_ptid): Remove.
6296         * common/ptid.h (pid_to_ptid): Don't declare.
6297         * aix-thread.c: Update.
6298         * arm-linux-nat.c: Update.
6299         * common/ptid.c: Update.
6300         * common/ptid.h: Update.
6301         * corelow.c: Update.
6302         * ctf.c: Update.
6303         * darwin-nat.c: Update.
6304         * fbsd-nat.c: Update.
6305         * fork-child.c: Update.
6306         * gnu-nat.c: Update.
6307         * go32-nat.c: Update.
6308         * inf-ptrace.c: Update.
6309         * infcmd.c: Update.
6310         * inferior.c: Update.
6311         * infrun.c: Update.
6312         * linux-fork.c: Update.
6313         * linux-nat.c: Update.
6314         * nat/aarch64-linux-hw-point.c: Update.
6315         * nat/fork-inferior.c: Update.
6316         * nat/x86-linux-dregs.c: Update.
6317         * nto-procfs.c: Update.
6318         * obsd-nat.c: Update.
6319         * procfs.c: Update.
6320         * progspace.c: Update.
6321         * remote.c: Update.
6322         * rs6000-nat.c: Update.
6323         * s390-linux-nat.c: Update.
6324         * sol-thread.c: Update.
6325         * spu-linux-nat.c: Update.
6326         * target.c: Update.
6327         * top.c: Update.
6328         * tracefile-tfile.c: Update.
6329         * windows-nat.c: Update.
6330
6331 2018-07-03  Tom Tromey  <tom@tromey.com>
6332
6333         * common/ptid.h (ptid_build): Don't declare.
6334         * common/ptid.c (ptid_build): Remove.
6335         * aix-thread.c: Update.
6336         * bsd-kvm.c: Update.
6337         * bsd-uthread.c: Update.
6338         * common/agent.c: Update.
6339         * common/ptid.c: Update.
6340         * common/ptid.h: Update.
6341         * corelow.c: Update.
6342         * darwin-nat.c: Update.
6343         * fbsd-nat.c: Update.
6344         * gnu-nat.c: Update.
6345         * linux-fork.c: Update.
6346         * linux-nat.c: Update.
6347         * linux-thread-db.c: Update.
6348         * nat/linux-osdata.c: Update.
6349         * nat/linux-procfs.c: Update.
6350         * nto-procfs.c: Update.
6351         * obsd-nat.c: Update.
6352         * proc-service.c: Update.
6353         * procfs.c: Update.
6354         * ravenscar-thread.c: Update.
6355         * remote-sim.c: Update.
6356         * remote.c: Update.
6357         * sol-thread.c: Update.
6358         * target.c: Update.
6359         * windows-nat.c: Update.
6360
6361 2018-07-03  Tom Tromey  <tom@tromey.com>
6362
6363         * infrun.c (follow_exec): Use exit_inferior_silent.
6364         * inferior.c (exit_inferior_num_silent): Remove.
6365         * inferior.h (exit_inferior_num_silent): Don't declare.
6366
6367 2018-07-03  Tom Tromey  <tom@tromey.com>
6368
6369         PR cli/23340:
6370         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6371         inferior_ptid on error.
6372
6373 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6374             Simon Marchi  <simon.marchi@polymtl.ca>
6375
6376         PR tdep/8282
6377         * disasm.h (gdb_disassembler): Add
6378         `m_disassembler_options_holder'. member
6379         * disasm.c (get_all_disassembler_options): New function.
6380         (gdb_disassembler::gdb_disassembler): Use it.
6381         (gdb_buffered_insn_length_init_dis): Likewise.
6382         (gdb_buffered_insn_length): Adjust accordingly.
6383         (set_disassembler_options): Handle options with arguments.
6384         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6385         line if showing options with descriptions.
6386         (disassembler_options_completer): Adapt to using the
6387         `disasm_options_and_args_t' structure.
6388         * mips-tdep.c (mips_disassembler_options): New variable.
6389         (mips_disassembler_options_o32): Likewise.
6390         (mips_disassembler_options_n32): Likewise.
6391         (mips_disassembler_options_n64): Likewise.
6392         (gdb_print_insn_mips): Don't set `disassembler_options'.
6393         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6394         functions.
6395         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6396         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6397         `gdbarch_disassembler_options_implicit' and
6398         `gdbarch_valid_disassembler_options'.
6399         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6400         `disasm_options_and_args_t' structure.
6401         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6402         method.
6403         (valid_disassembler_options): Switch from `disasm_options_t' to
6404         the `disasm_options_and_args_t' structure.
6405         * NEWS: Document `set disassembler-options' support for the MIPS
6406         target.
6407         * gdbarch.h: Regenerate.
6408         * gdbarch.c: Regenerate.
6409
6410 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6411
6412         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6413
6414 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6415
6416         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6417         parameter in call to amd64_target_description.
6418         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6419         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6420         (amd64fbsd_init_abi): Likewise.
6421         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6422         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6423         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6424         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6425
6426 2018-06-29  Pedro Alves  <palves@redhat.com>
6427
6428         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6429         "segments" parameter.
6430         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6431         (_initialize_amd64_tdep): Update call to
6432         amd64_create_target_description.
6433         (amd64_target_description): Add "segments" parameter.  Adjust
6434         the implementation to use it.
6435         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6436         call to amd64_create_target_description.
6437         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6438         * gdb/arch/amd64.h (amd64_create_target_description): Add
6439         "segments" register.
6440         * gdb/arch/amd64.c (amd64_create_target_description): Add
6441         "segments" parameter.  Call create_feature_i386_64bit_segments
6442         only if SEGMENTS is true.
6443         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6444         call to amd64_create_target_description.
6445
6446 2018-06-29  Pedro Alves  <palves@redhat.com>
6447
6448         * thread.c (thread_target_id_str): New, factored out from ...
6449         (print_thread_info_1): ... here.  Use it to compute the max
6450         "Target Id" column width.
6451
6452 2018-06-29  Pedro Alves  <palves@redhat.com>
6453
6454         * remote.c (remote_target::extra_thread_info): Delete
6455         'display_buf' and 'n' locals.  from the cache, regardless of
6456         packet mechanims is in use.  Use cache for qThreadExtra and qP
6457         methods too.
6458
6459 2018-06-29  Pedro Alves  <palves@redhat.com>
6460
6461         * blockframe.c (find_pc_sect_containing_function): New function.
6462         * breakpoint.c (print_breakpoint_location): Don't call
6463         find_pc_sect_function.
6464         * linespec.c (create_sals_line_offset): Record the location's
6465         symbol in the sal.
6466         * linespec.c (convert_address_location_to_sals): Fill in sal's
6467         symbol with find_pc_sect_containing_function.
6468         * symtab.c (find_function_start_sal): Rename to ...
6469         (find_function_start_sal_1): ... this.
6470         (find_function_start_sal): Reimplement as wrapper around
6471         find_function_start_sal_1, and use
6472         find_pc_sect_containing_function to fill in the sal's symbol.
6473         (find_function_start_sal(symbol*, bool)): Adjust.
6474         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6475         comments.
6476         (find_pc_sect_containing_function): Declare.
6477
6478 2018-06-29  Pedro Alves  <palves@redhat.com>
6479
6480         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6481         true if the the location has no symbol.
6482
6483 2018-06-28  Tom Tromey  <tom@tromey.com>
6484
6485         * NEWS: Mention --enable-codesign.
6486         * silent-rules.mk (ECHO_SIGN): New variable.
6487         * configure.ac: Add --enable-codesign.
6488         * configure: Rebuild.
6489         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6490         (gdb$(EXEEXT)): Optionally invoke codesign.
6491
6492 2018-06-28  Pedro Alves  <palves@redhat.com>
6493
6494         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6495         comments.
6496         (switch_to_thread_no_regs): Adjust comment.
6497         * infcmd.c (stop_pc): Delete.
6498         (post_create_inferior, info_program_command): Replace references
6499         to stop_pc with references to thread_info->suspend.stop_pc.
6500         * inferior.h (stop_pc): Delete declaration.
6501         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6502         (handle_inferior_event_1, handle_signal_stop)
6503         (process_event_stop_test, keep_going_stepped_thread)
6504         (handle_step_into_function, handle_step_into_function_backward)
6505         (print_stop_location): Replace references to stop_pc with
6506         references to thread_info->suspend.stop_pc.
6507         (struct infcall_suspend_state) <stop_pc>: Delete field.
6508         (save_infcall_suspend_state, restore_infcall_suspend_state):
6509         Remove references to inf_stat->stop_pc.
6510         * linux-fork.c (fork_load_infrun_state): Likewise.
6511         * record-btrace.c (record_btrace_set_replay): Likewise.
6512         * record-full.c (record_full_goto_entry): Likewise.
6513         * remote.c (print_one_stopped_thread): Likewise.
6514         * target.c (target_resume): Extend comment.
6515         * thread.c (set_executing_thread): New.
6516         (set_executing): Use it.
6517         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6518         Remove references to stop_pc.
6519
6520 2018-06-28  Pedro Alves  <palves@redhat.com>
6521
6522         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6523         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6524
6525 2018-06-28  Tom Tromey  <tom@tromey.com>
6526
6527         * coffread.c (coff_symfile_finish): Update.
6528         * xcoffread.c (xcoff_symfile_finish): Update.
6529         * elfread.c (elf_symfile_finish): Update.
6530         * symfile.h (dwarf2_free_objfile): Don't declare.
6531         * dwarf2read.c (_initialize_dwarf2_read): Use
6532         register_objfile_data_with_cleanup.
6533         (dwarf2_free_objfile): Now static.  Change signature.
6534
6535 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6536
6537         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6538         option "-o" to add-symbol-file-load to add an offset to each
6539         section's load address.
6540         * symfile.c (set_objfile_default_section_offset): New function.
6541
6542 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6543
6544         * symfile.c (add_symbol_file_command): Make sure that sections
6545         with the same name are sorted in the same order.
6546
6547 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6548
6549         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6550         require the second argument.  If omitted, load sections at the
6551         addresses specified in the file.
6552
6553 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6554
6555         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6556         (_initialize_symfile): Add option "-o" to symbol-file to add an
6557         offset to each section of the symbol file.
6558
6559 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6560
6561         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6562
6563 2018-06-27  Tom Tromey  <tom@tromey.com>
6564
6565         * stack.c (_initialize_stack): Update "func" help text.
6566
6567 2018-06-27  Tom Tromey  <tom@tromey.com>
6568
6569         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6570         std::vector.
6571         (unwind_infopy_str, pyuw_create_unwind_info)
6572         (unwind_infopy_add_saved_register, pyuw_sniffer)
6573         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6574         Update.
6575         (struct saved_reg): Add constructor.
6576         <value>: Now a gdbpy_ref<>.
6577
6578 2018-06-27  Tom Tromey  <tom@tromey.com>
6579
6580         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6581
6582 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6583
6584         * gdb-gdb.py.in: Format using autopep8.
6585
6586 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6587
6588         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6589         (type_lookup_function): Recognize CORE_ADDR values.
6590
6591 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6592
6593         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6594         print tag_name.
6595
6596 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6597
6598         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6599         <__lt__>: Add.
6600
6601 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6602
6603         * gdb-gdb.py: Move to...
6604         * gdb-gdb.py.in: ... here.
6605         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6606         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6607         dependencies.
6608         (distclean): Remove gdb-gdb.py when cleaning.
6609         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6610         * configure: Re-generate.
6611
6612 2018-06-27  Pedro Alves  <palves@redhat.com>
6613
6614         * proc-service.c (get_ps_regcache): New.
6615         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6616         (ps_lsetfpregs): Use it.
6617
6618 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6619
6620         PR gdb/21695
6621         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6622         (dwarf_decode_lines_1): Adjust.
6623
6624 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6625
6626         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6627         override.
6628         <info_proc>: Likewise.
6629
6630 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6631
6632         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6633         to windows_fetch_one_register, and only handle the case of
6634         fetching one register.  Move the code that reloads the context
6635         and iterates over all registers if R is negative to...
6636         (windows_nat_target::fetch_registers): ... here.
6637         (do_windows_store_inferior_registers): Rename to
6638         windows_store_one_register, and only handle the case of storing
6639         one register.  Move the code that handles the case where r is
6640         negative to...
6641         (windows_nat_target::store_registers) ... here.
6642
6643 2018-06-26  Tom Tromey  <tom@tromey.com>
6644
6645         PR rust/22574:
6646         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6647         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6648         Update.
6649         (rust_internal_print_type): Add podata parameter.
6650         (rust_print_type): Update.
6651
6652 2018-06-26  Tom Tromey  <tom@tromey.com>
6653
6654         * typeprint.h (struct print_offset_data) <update, finish,
6655         maybe_print_hole>: New methods.
6656         <indentation>: New constant.
6657         * typeprint.c (print_offset_data::indentation): Define.
6658         (print_offset_data::maybe_print_hole, print_offset_data::update)
6659         (print_offset_data::finish): Move from c-typeprint.c and rename.
6660         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6661         (print_spaces_filtered_with_print_options): Update.
6662         (c_print_type_union_field_offset, maybe_print_hole)
6663         (c_print_type_struct_field_offset): Move to typeprint.c and
6664         rename.
6665         (c_type_print_base_struct_union): Update.
6666
6667 2018-06-25  Pedro Alves  <palves@redhat.com>
6668
6669         * gdbthread.h (thread_info_ref, delete_thread)
6670         (delete_thread_silent, first_thread_of_inferior)
6671         (any_thread_of_inferior, switch_to_thread)
6672         (enable_thread_stack_temporaries)
6673         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6674         (get_last_thread_stack_temporary)
6675         (value_in_thread_stack_temporaries, can_access_registers_thread):
6676         Spell out "struct thread_info" instead of just "thread_info".
6677         * inferior.h (notice_new_inferior): Likewise.
6678
6679 2018-06-25  Pedro Alves  <palves@redhat.com>
6680
6681         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6682         pass thread_info pointer to delete_thread.
6683         (windows_nat_target::detach): Pass inferior pointer to
6684         detach_inferior.
6685         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6686         delete_thread.
6687         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6688         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6689         and pass a thread_info pointer to delete_thread.
6690         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6691         pass thread_info pointer to delete_thread.
6692         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6693         delete_thread_silent call.
6694         * procfs.c (procfs_target::detach): Pass inferior pointer to
6695         detach_inferior.
6696         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6697         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6698         delete_thread_silent call.
6699         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6700         pass thread_info pointer to delete_thread.
6701         (windows_nat_target::detach): Pass inferior pointer to
6702         delete_inferior.
6703
6704 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6705
6706         * regcache.c (readable_regcache::read_part): Fix asserts.
6707         (reg_buffer::raw_collect_part): New function.
6708         (regcache::write_part): Fix asserts.
6709         (reg_buffer::raw_supply_part): New function.
6710         (regcache::transfer_regset_register): New helper function.
6711         (regcache::transfer_regset): Call new functions.
6712         (regcache_supply_regset): Use gdb_byte*.
6713         (regcache::supply_regset): Likewise.
6714         (regcache_collect_regset): Likewise.
6715         (regcache::collect_regset): Likewise.
6716         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6717         (reg_buffer::raw_supply_part): Likewise.
6718         (regcache::transfer_regset_register): Likewise.
6719         (regcache::transfer_regset): Use gdb_byte*.
6720
6721 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6722
6723         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6724
6725 2018-06-21  Pedro Alves  <palves@redhat.com>
6726
6727         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6728         instead of a ptid_t.  All callers adjusted.
6729         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6730         adjusted.
6731         (print_ada_task_info, display_current_task_id, task_command_1):
6732         Adjust.
6733         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6734         inferior_thread.
6735         (breakpoint_kind): Adjust.
6736         (remove_breakpoints_pid): Rename to ...
6737         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6738         pointer.  All callers adjusted.
6739         (bpstat_clear_actions): Use inferior_thread.
6740         (get_bpstat_thread): New.
6741         (bpstat_do_actions): Use it.
6742         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6743         to take a thread_info pointer.  All callers adjusted.
6744         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6745         (breakpoint_re_set_thread): Use inferior_thread.
6746         * breakpoint.h (struct inferior): Forward declare.
6747         (bpstat_stop_status): Update.
6748         (remove_breakpoints_pid): Delete.
6749         (remove_breakpoints_inf): New.
6750         * bsd-uthread.c (bsd_uthread_target::wait)
6751         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6752         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6753         (maint_btrace_packet_history_cmd)
6754         (maint_btrace_clear_packet_history_cmd): Adjust.
6755         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6756         inferior_thread.
6757         * cli/cli-interp.c: Include "inferior.h".
6758         * common/refcounted-object.h (struct
6759         refcounted_object_ref_policy): New.
6760         * compile/compile-object-load.c: Include gdbthread.h.
6761         (store_regs): Use inferior_thread.
6762         * corelow.c (core_target::close): Use current_inferior.
6763         (core_target_open): Adjust to use first_thread_of_inferior and use
6764         the current inferior.
6765         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6766         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6767         <thread>: ... this new field.  All references adjusted.
6768         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6769         Take a thread_info pointer instead of a ptid_t.
6770         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6771         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6772         thread_info pointer instead of a ptid_t.
6773         * elfread.c: Include "inferior.h".
6774         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6775         Use inferior_thread.
6776         * eval.c (evaluate_subexp): Likewise.
6777         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6778         inferior_thread.
6779         * gdb_proc_service.h (struct thread_info): Forward declare.
6780         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6781         <thread>: ... this new field.  All references adjusted.
6782         * gdbarch.h, gdbarch.c: Regenerate.
6783         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6784         'thread' parameter.  All implementations and callers adjusted.
6785         * gdbthread.h (thread_info) <set_running>: New method.
6786         (delete_thread, delete_thread_silent): Take a thread_info pointer
6787         instead of a ptid.
6788         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6789         (first_thread_of_process): Delete, replaced by ...
6790         (first_thread_of_inferior): ... this new function.  All callers
6791         adjusted.
6792         (any_live_thread_of_process): Delete, replaced by ...
6793         (any_live_thread_of_inferior): ... this new function.  All callers
6794         adjusted.
6795         (switch_to_thread, switch_to_no_thread): Declare.
6796         (is_executing): Delete.
6797         (enable_thread_stack_temporaries): Update comment.
6798         <enable_thread_stack_temporaries>: Take a thread_info pointer
6799         instead of a ptid_t.  Incref the thread.
6800         <~enable_thread_stack_temporaries>: Decref the thread.
6801         <m_ptid>: Delete
6802         <m_thr>: New.
6803         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6804         (get_last_thread_stack_temporary)
6805         (value_in_thread_stack_temporaries, can_access_registers_thread):
6806         Take a thread_info pointer instead of a ptid_t.  All callers
6807         adjusted.
6808         * infcall.c (get_call_return_value): Use inferior_thread.
6809         (run_inferior_call): Work with thread pointers instead of ptid_t.
6810         (call_function_by_hand_dummy): Work with thread pointers instead
6811         of ptid_t.  Use thread_info_ref.
6812         * infcmd.c (proceed_thread_callback): Access thread's state
6813         directly.
6814         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6815         access thread's state directly.
6816         (continue_command): Use inferior_thread.
6817         (info_program_command): Use find_thread_ptid and access thread
6818         state directly.
6819         (proceed_after_attach_callback): Use thread state directly.
6820         (notice_new_inferior): Take a thread_info pointer instead of a
6821         ptid_t.  All callers adjusted.
6822         (exit_inferior): Take an inferior pointer instead of a pid.  All
6823         callers adjusted.
6824         (exit_inferior_silent): New.
6825         (detach_inferior): Delete.
6826         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6827         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6828         (detach_inferior_command, kill_inferior_command): Use
6829         find_inferior_id instead of valid_gdb_inferior_id and
6830         gdb_inferior_id_to_pid.
6831         (inferior_command): Use inferior and thread pointers.
6832         * inferior.h (struct thread_info): Forward declare.
6833         (notice_new_inferior): Take a thread_info pointer instead of a
6834         ptid_t.  All callers adjusted.
6835         (detach_inferior): Delete declaration.
6836         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6837         instead of a pid.  All callers adjusted.
6838         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6839         (valid_gdb_inferior_id): Delete.
6840         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6841         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6842         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6843         ...
6844         <inf>: ... this new field.
6845         <step_ptid>: Delete, replaced by ...
6846         <step_thread>: ... this new field.
6847         (get_displaced_stepping_state): Take an inferior pointer instead
6848         of a pid.  All callers adjusted.
6849         (displaced_step_in_progress_any_inferior): Adjust.
6850         (displaced_step_in_progress_thread): Take a thread pointer instead
6851         of a ptid_t.  All callers adjusted.
6852         (displaced_step_in_progress, add_displaced_stepping_state): Take
6853         an inferior pointer instead of a pid.  All callers adjusted.
6854         (get_displaced_step_closure_by_addr): Adjust.
6855         (remove_displaced_stepping_state): Take an inferior pointer
6856         instead of a pid.  All callers adjusted.
6857         (displaced_step_prepare_throw, displaced_step_prepare)
6858         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6859         All callers adjusted.
6860         (start_step_over): Adjust.
6861         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6862         displaced step queue.
6863         (do_target_resume): Adjust.
6864         (fetch_inferior_event): Use inferior_thread.
6865         (context_switch, get_inferior_stop_soon): Take an
6866         execution_control_state pointer instead of a ptid_t.  All callers
6867         adjusted.
6868         (switch_to_thread_cleanup): Delete.
6869         (stop_all_threads): Use scoped_restore_current_thread.
6870         * inline-frame.c: Include "gdbthread.h".
6871         (inline_state) <inline_state>: Take a thread pointer instead of a
6872         ptid_t.  All callers adjusted.
6873         <ptid>: Delete, replaced by ...
6874         <thread>: ... this new field.
6875         (find_inline_frame_state): Take a thread pointer instead of a
6876         ptid_t.  All callers adjusted.
6877         (skip_inline_frames, step_into_inline_frame)
6878         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6879         pointer instead of a ptid_t.  All callers adjusted.
6880         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6881         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6882         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6883         pointers directly.
6884         * linux-nat.c (get_detach_signal): Likewise.
6885         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6886         (thread_db_notice_clone): Adjust.
6887         (thread_db_find_new_threads_silently)
6888         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6889         a thread pointer instead of a ptid_t.  All callers adjusted.
6890         * mi/mi-cmd-var.c: Include "inferior.h".
6891         (mi_cmd_var_update_iter): Update to use thread pointers.
6892         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6893         inferior directly.
6894         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6895         out to ...
6896         (mi_output_running): ... this new function.
6897         (mi_on_resume_1): Adjust to use it.
6898         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6899         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6900         directly.
6901         (interrupt_thread_callback): : Adjust to use thread and inferior
6902         pointers.
6903         * proc-service.c: Include "gdbthread.h".
6904         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6905         * progspace-and-thread.c: Include "inferior.h".
6906         * progspace.c: Include "inferior.h".
6907         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6908         hold a reference to an inferior_object.
6909         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6910         inferior_thread.
6911         * python/py-inferior.c (struct inferior_object): Give the type a
6912         tag name instead of a typedef.
6913         (python_on_normal_stop): No need to check if the current thread is
6914         listed.
6915         (inferior_to_inferior_object): Change return type to
6916         inferior_object.  All callers adjusted.
6917         (find_thread_object): Delete, bits factored out to ...
6918         (thread_to_thread_object): ... this new function.
6919         * python/py-infthread.c (create_thread_object): Use
6920         inferior_to_inferior_object.
6921         (thpy_is_stopped): Use thread pointer directly.
6922         (gdbpy_selected_thread): Use inferior_thread.
6923         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6924         field, replaced with ...
6925         <thread>: ... this new field.  All users adjusted.
6926         (btpy_insn_or_gap_new): Drop const.
6927         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6928         callers adjusted.
6929         * python/py-record.c: Include "gdbthread.h".
6930         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6931         a ptid_t.  All callers adjusted.
6932         (gdbpy_current_recording): Use inferior_thread.
6933         * python/py-record.h (recpy_record_object) <ptid>: Delete
6934         field, replaced with ...
6935         <thread>: ... this new field.  All users adjusted.
6936         (recpy_element_object) <ptid>: Delete
6937         field, replaced with ...
6938         <thread>: ... this new field.  All users adjusted.
6939         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6940         a ptid_t.  All callers adjusted.
6941         * python/py-threadevent.c: Include "gdbthread.h".
6942         (get_event_thread): Use thread_to_thread_object.
6943         * python/python-internal.h (struct inferior_object): Forward
6944         declare.
6945         (find_thread_object, find_inferior_object): Delete declarations.
6946         (thread_to_thread_object, inferior_to_inferior_object): New
6947         declarations.
6948         * record-btrace.c: Include "inferior.h".
6949         (require_btrace_thread): Use inferior_thread.
6950         (record_btrace_frame_sniffer)
6951         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6952         (get_thread_current_frame): Use scoped_restore_current_thread and
6953         switch_to_thread.
6954         (get_thread_current_frame): Use thread pointer directly.
6955         (record_btrace_replay_at_breakpoint): Use thread's inferior
6956         pointer directly.
6957         * record-full.c: Include "inferior.h".
6958         * regcache.c: Include "gdbthread.h".
6959         (get_thread_arch_regcache): Use the inferior's address space
6960         directly.
6961         (get_thread_regcache, registers_changed_thread): New.
6962         * regcache.h (get_thread_regcache(thread_info *thread)): New
6963         overload.
6964         (registers_changed_thread): New.
6965         (remote_target) <remote_detach_1>: Swap order of parameters.
6966         (remote_add_thread): <remote_add_thread>: Return the new thread.
6967         (get_remote_thread_info(ptid_t)): New overload.
6968         (remote_target::remote_notice_new_inferior): Use thread pointers
6969         directly.
6970         (remote_target::process_initial_stop_replies): Use
6971         thread_info::set_running.
6972         (remote_target::remote_detach_1, remote_target::detach)
6973         (extended_remote_target::detach): Adjust.
6974         * stack.c (frame_show_address): Use inferior_thread.
6975         * target-debug.h (target_debug_print_thread_info_pp): New.
6976         * target-delegates.c: Regenerate.
6977         * target.c (default_thread_address_space): Delete.
6978         (memory_xfer_partial_1): Use current_inferior.
6979         (target_detach): Use current_inferior.
6980         (target_thread_address_space): Delete.
6981         (generic_mourn_inferior): Use current_inferior.
6982         * target.h (struct target_ops) <thread_address_space>: Delete.
6983         (target_thread_address_space): Delete.
6984         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6985         pointers directly.
6986         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6987         thread pointer instead of a ptid_t.  Adjust all callers.
6988         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6989         (first_thread_of_process): Delete, replaced by ...
6990         (first_thread_of_inferior): ... this new function.  All callers
6991         adjusted.
6992         (any_thread_of_process): Rename to ...
6993         (any_thread_of_inferior): ... this, and take an inferior pointer.
6994         (any_live_thread_of_process): Rename to ...
6995         (any_live_thread_of_inferior): ... this, and take an inferior
6996         pointer.
6997         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6998         (value_in_thread_stack_temporaries)
6999         (get_last_thread_stack_temporary): Take a thread pointer instead
7000         of a ptid_t.  Adjust all callers.
7001         (thread_info::set_running): New.
7002         (validate_registers_access): Use inferior_thread.
7003         (can_access_registers_ptid): Rename to ...
7004         (can_access_registers_thread): ... this, and take a thread
7005         pointer.
7006         (print_thread_info_1): Adjust to compare thread pointers instead
7007         of ptids.
7008         (switch_to_no_thread, switch_to_thread): Make extern.
7009         (scoped_restore_current_thread::~scoped_restore_current_thread):
7010         Use m_thread pointer directly.
7011         (scoped_restore_current_thread::scoped_restore_current_thread):
7012         Use inferior_thread.
7013         (thread_command): Use thread pointer directly.
7014         (thread_num_make_value_helper): Use inferior_thread.
7015         * top.c (execute_command): Use inferior_thread.
7016         * tui/tui-interp.c: Include "inferior.h".
7017         * varobj.c (varobj_create): Use inferior_thread.
7018         (value_of_root_1): Use find_thread_global_id instead of
7019         global_thread_id_to_ptid.
7020
7021 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7022
7023         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7024         possible.
7025         (regcache::write_part): Likewise.
7026         (readable_regcache::cooked_read_part): Update comment.
7027         (readable_regcache::cooked_write_part): Likewise.
7028         * regcache.h: (readable_regcache::read_part): Likewise.
7029         (regcache::write_part): Likewise.
7030
7031 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7032             Dirk Schubert  <dirk.schubert@arm.com>
7033
7034         * aarch64-linux-nat.c (post_attach): New.
7035         (aarch64_linux_nat_target::post_attach): Override post_attach to
7036         record the number of hardware debug registers.
7037
7038 2018-06-20  Tom Tromey  <tom@tromey.com>
7039
7040         * python/py-param.c (add_setshow_generic): Make parameters const.
7041         (parmpy_init): Update.
7042
7043 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7044
7045         * regcache.h (regcache_cooked_read_ftype): Rename to...
7046         (register_read_ftype): ...this, change type to function_view.
7047         (class reg_buffer) <save>: Remove src parameter.
7048         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7049         parameter non-const in first overload.  Remove src parameter in
7050         second overload.
7051         * regcache.c (do_cooked_read): Remove.
7052         (readonly_detached_regcache::readonly_detached_regcache): Make
7053         parameter non-const, adjust call to other constructor.
7054         (reg_buffer::save): Remove src parameter.
7055         * frame.c (do_frame_register_read): Remove.
7056         (frame_save_as_regcache): Use lambda function.
7057         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7058         parameter to ppu2spu_data *.
7059         (ppu2spu_sniffer): Use lambda function.
7060
7061 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7062
7063         * record-full.c (record_full_target::insert_breakpoint): Remove
7064         "struct" keyword, add const.
7065
7066 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7067
7068         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7069         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7070         * configure.ac: Remove AC_PREREQ, add missing quoting.
7071         * gnulib/configure.ac: Modernize usage of
7072         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7073         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7074         (AUTOMAKE_VERSION): Bump to 1.15.1.
7075         * configure: Re-generate.
7076         * config.in: Re-generate.
7077         * aclocal.m4: Re-generate.
7078         * gnulib/aclocal.m4: Re-generate.
7079         * gnulib/config.in: Re-generate.
7080         * gnulib/configure: Re-generate.
7081         * gnulib/import/Makefile.in: Re-generate.
7082
7083 2018-06-19  Pedro Alves  <palves@redhat.com>
7084
7085         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7086         (lookup_minimal_symbol_by_pc_section): ... here with
7087         gdb_assert_not_reached added.
7088
7089 2018-06-19  Pedro Alves  <palves@redhat.com>
7090
7091         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7092         parameter with a block parameter.  Compare location's block symbol
7093         with the frame's block instead of addresses.
7094         (skip_inline_frames): Pass the current block instead of the
7095         frame's address.  Break out as soon as we determine the frame
7096         should not be skipped.
7097
7098 2018-06-18  Tom Tromey  <tom@tromey.com>
7099
7100         * solib-aix.c (solib_aix_get_section_offsets): Return
7101         unique_xmalloc_ptr.
7102         (solib_aix_solib_create_inferior_hook): Update.
7103
7104 2018-06-18  Tom Tromey  <tom@tromey.com>
7105
7106         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7107
7108 2018-06-18  Tom Tromey  <tom@tromey.com>
7109
7110         * solib-frv.c (frv_relocate_main_executable): Use
7111         unique_xmalloc_ptr.
7112         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7113         unique_xmalloc_ptr.
7114
7115 2018-06-18  Tom Tromey  <tom@tromey.com>
7116
7117         * objfiles.h (inhibit_section_map_updates): Update.
7118         (resume_section_map_updates, resume_section_map_updates_cleanup):
7119         Remove.
7120         * solib-svr4.c (svr4_handle_solib_event): Update.
7121         * objfiles.c (inhibit_section_map_updates): Return
7122         scoped_restore_tmpl<int>.
7123         (resume_section_map_updates, resume_section_map_updates_cleanup):
7124         Remove.
7125
7126 2018-06-18  Tom Tromey  <tom@tromey.com>
7127
7128         * valprint.h (read_string): Update.
7129         * valprint.c (read_string): Change type of "buffer".
7130         (val_print_string): Update.
7131         * python/py-value.c (valpy_string): Update.
7132         * language.h (struct language_defn) <la_get_string>: Change
7133         type of "buffer".
7134         (default_get_string, c_get_string): Update.
7135         * language.c (default_get_string): Change type of "buffer".
7136         * guile/scm-value.c (gdbscm_value_to_string): Update.
7137         * c-lang.c (c_get_string): Change type of "buffer".
7138
7139 2018-06-18  Tom Tromey  <tom@tromey.com>
7140
7141         * ser-mingw.c (struct pipe_state_destroyer): New.
7142         (pipe_state_up): New typedef.
7143         (cleanup_pipe_state): Remove.
7144         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7145
7146 2018-06-18  Tom Tromey  <tom@tromey.com>
7147
7148         * rust-lang.h (rust_yyerror): Don't declare.
7149         * rust-lang.c (rust_language_defn): Update.
7150         * rust-exp.y (yyerror): Now static.
7151         * parse.c (parse_exp_in_context_1): Update.
7152         * p-lang.h (p_yyerror): Don't declare.
7153         * p-lang.c (p_language_defn): Update.
7154         * p-exp.y (yyerror): Now static.
7155         * opencl-lang.c (opencl_language_defn): Update.
7156         * objc-lang.c (objc_language_defn): Update.
7157         * m2-lang.h (m2_yyerror): Don't declare.
7158         * m2-lang.c (m2_language_defn): Update.
7159         * m2-exp.y (yyerror): Now static.
7160         * language.h (struct language_defn) <la_error>: Remove.
7161         * language.c (unk_lang_error): Remove.
7162         (unknown_language_defn, auto_language_defn): Remove.
7163         * go-lang.h (go_yyerror): Don't declare.
7164         * go-lang.c (go_language_defn): Update.
7165         * go-exp.y (yyerror): Now static.
7166         * f-lang.h (f_yyerror): Don't declare.
7167         * f-lang.c (f_language_defn): Update.
7168         * f-exp.y (yyerror): Now static.
7169         * d-lang.h (d_yyerror): Don't declare.
7170         * d-lang.c (d_language_defn): Update.
7171         * d-exp.y (yyerror): Now static.
7172         * c-lang.h (c_yyerror): Don't declare.
7173         * c-lang.c (c_language_defn, cplus_language_defn)
7174         (asm_language_defn, minimal_language_defn): Update.
7175         * c-exp.y (yyerror): Now static.
7176         * ada-lang.h (ada_yyerror): Don't declare.
7177         * ada-lang.c (ada_language_defn): Update.
7178         * ada-exp.y (yyerror): Now static.
7179
7180 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7181
7182         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7183         (store_sveregs_to_thread): Likewise.
7184         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7185         (aarch64_linux_store_inferior_registers): Likewise.
7186         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7187         function.
7188         (aarch64_sve_regs_copy_to_regcache): Likewise.
7189         (aarch64_sve_regs_copy_from_regcache): Likewise.
7190         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7191         declaration.
7192         (aarch64_sve_regs_copy_to_regcache): Likewise.
7193         (aarch64_sve_regs_copy_from_regcache): Likewise.
7194         (sve_context): Structure from Linux headers.
7195         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7196         (SVE_SIG_ZREG_SIZE): Likewise.
7197         (SVE_SIG_PREG_SIZE): Likewise.
7198         (SVE_SIG_FFR_SIZE): Likewise.
7199         (SVE_SIG_REGS_OFFSET): Likewise.
7200         (SVE_SIG_ZREGS_OFFSET): Likewise.
7201         (SVE_SIG_ZREG_OFFSET): Likewise.
7202         (SVE_SIG_ZREGS_SIZE): Likewise.
7203         (SVE_SIG_PREGS_OFFSET): Likewise.
7204         (SVE_SIG_PREG_OFFSET): Likewise.
7205         (SVE_SIG_PREGS_SIZE): Likewise.
7206         (SVE_SIG_FFR_OFFSET): Likewise.
7207         (SVE_SIG_REGS_SIZE): Likewise.
7208         (SVE_SIG_CONTEXT_SIZE): Likewise.
7209         (SVE_PT_REGS_MASK): Likewise.
7210         (SVE_PT_REGS_FPSIMD): Likewise.
7211         (SVE_PT_REGS_SVE): Likewise.
7212         (SVE_PT_VL_INHERIT): Likewise.
7213         (SVE_PT_VL_ONEXEC): Likewise.
7214         (SVE_PT_REGS_OFFSET): Likewise.
7215         (SVE_PT_FPSIMD_OFFSET): Likewise.
7216         (SVE_PT_FPSIMD_SIZE): Likewise.
7217         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7218         (SVE_PT_SVE_PREG_SIZE): Likewise.
7219         (SVE_PT_SVE_FFR_SIZE): Likewise.
7220         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7221         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7222         (__SVE_SIG_TO_PT): Likewise.
7223         (SVE_PT_SVE_OFFSET): Likewise.
7224         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7225         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7226         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7227         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7228         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7229         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7230         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7231         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7232         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7233         (SVE_PT_SVE_SIZE): Likewise.
7234         (SVE_PT_SIZE): Likewise.
7235         (HAS_SVE_STATE): New define.
7236
7237 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7238
7239         * nat/aarch64-sve-linux-sigcontext.h: New file.
7240         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7241         new files.
7242         (SVE_VQ_MIN): Likewise.
7243         (SVE_VQ_MAX): Likewise.
7244         (SVE_VL_MIN): Likewise.
7245         (SVE_VL_MAX): Likewise.
7246         (SVE_NUM_ZREGS): Likewise.
7247         (SVE_NUM_PREGS): Likewise.
7248         (sve_vl_valid): Likewise.
7249         (struct user_sve_header): Likewise.
7250
7251 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7252             Richard Bunt <Richard.Bunt@arm.com>
7253
7254         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7255         was requested by GDB.
7256
7257 2018-06-15  Tom de Vries  <tdevries@suse.de>
7258
7259         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7260
7261 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7262
7263         * gnulib/update-gnulib.sh: Print expected versions of
7264         autoconf/aclocal.
7265
7266 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7267
7268         * arch-utils.c (default_type_align): Use type_length_units.
7269         * gdbtypes.c (type_align): Use type_length_units.
7270
7271 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7272
7273         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7274         of 'define' command.
7275
7276 2018-06-14  Tom de Vries  <tdevries@suse.de>
7277
7278         PR cli/22573
7279         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7280         get_no_prettyformat_print_options.
7281
7282 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7283
7284         * sparc-nat.h: Include target.h.
7285         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7286         <fetch_registers>: Remove this argument in function call.
7287         <store_registers>: Remove this argument in function call, remove
7288         extra semicolon.
7289         <low_forget_process>: Call sparc64_forget_process instead of
7290         sparc_forget_process.
7291
7292 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7293
7294         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7295         (procfs_target::make_corefile_notes): Adjust to new
7296         target_read_alloc return type.
7297
7298 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7299             Stephen Roberts  <stephen.roberts@arm.com>
7300
7301         PR gdb/22882
7302         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7303         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7304         Move should_notify_stop local into more inner scope.
7305
7306 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7307             Stephen Roberts  <stephen.roberts@arm.com>
7308
7309         PR gdb/22882
7310         * infrun.c (resume_1): Add call to mark_async_event_handler.
7311
7312 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7313
7314         * infrun.c (do_target_wait): Change old version of $pc printed.
7315
7316 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7317
7318         * dwarf2read.c (read_index_from_section): Rename to...
7319         (read_gdb_index_from_section): ... this, update all callers.
7320         (dwarf2_read_index): Rename to...
7321         (dwarf2_read_gdb_index): ... this, update all callers.
7322
7323 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7324
7325         * gdb/hppa-linux-nat.c
7326         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7327         hppa_linux_nat_target::fetch_registers.
7328
7329 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7330
7331         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7332         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7333         (AARCH64_DWARF_SVE_FFR): Likewise.
7334         (AARCH64_DWARF_SVE_P0): Likewise.
7335         (AARCH64_DWARF_SVE_Z0): Likewise.
7336
7337 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7338
7339         * common/common-regcache.h (raw_compare): New function.
7340         * regcache.c (regcache::raw_compare): Likewise.
7341         * regcache.h (regcache::raw_compare): New declaration.
7342
7343 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7344
7345         * common/common-regcache.h (reg_buffer_common): New structure.
7346         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7347         (reg_buffer::raw_supply): Likewise.
7348         (reg_buffer::raw_supply_integer): Likewise.
7349         (reg_buffer::raw_supply_zeroed): Likewise.
7350         (reg_buffer::raw_collect): Likewise.
7351         (reg_buffer::raw_collect_integer): Likewise.
7352         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7353         (reg_buffer::raw_supply): Likewise.
7354         (reg_buffer::raw_supply_integer): Likewise.
7355         (reg_buffer::raw_supply_zeroed): Likewise.
7356         (reg_buffer::raw_collect): Likewise.
7357         (reg_buffer::raw_collect_integer): Likewise.
7358
7359 2018-06-10  Tom Tromey  <tom@tromey.com>
7360
7361         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7362         (class remote_state) <stop_reply_queue>: Now std::vector.
7363         (remote_state::~remote_state)
7364         (remote_target::stop_reply_queue_length): Update.
7365         (struct queue_iter_param, remove_child_of_pending_fork)
7366         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7367         (check_pending_event_prevents_wildcard_vcont_callback)
7368         (remove_stop_reply_for_inferior)
7369         (remove_stop_reply_of_remote_state)
7370         (remote_notif_remove_once_on_match)
7371         (stop_reply_match_ptid_and_ws)
7372         (remote_kill_child_of_pending_fork): Remove.
7373         (remote_target::remove_new_fork_children)
7374         (remote_target::check_pending_events_prevent_wildcard_vcont)
7375         (remote_target::discard_pending_stop_replies)
7376         (remote_target::discard_pending_stop_replies_in_queue)
7377         (remote_target::remote_notif_remove_queued_reply)
7378         (remote_target::queued_stop_reply)
7379         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7380         (remote_target::wait, remote_target::kill_new_fork_children)
7381         (remote_target::async): Update.
7382
7383 2018-06-10  Tom Tromey  <tom@tromey.com>
7384
7385         * record-full.c (record_full_arch_list_cleanups): Remove.
7386         (record_full_message): Use try/catch.
7387         (record_full_wait_cleanups): Remove.
7388         (record_full_wait_1): Use try/catch.
7389         (record_full_restore): Likewise.
7390
7391 2018-06-10  Tom Tromey  <tom@tromey.com>
7392
7393         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7394         declare VEC.  Add constructor.
7395         <in_target_beneath>: Now bool.
7396         (record_full_breakpoints): Now a std::vector, static.
7397         (record_full_sync_record_breakpoints)
7398         (record_full_init_record_breakpoints)
7399         (record_full_target::insert_breakpoint)
7400         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7401
7402 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7403
7404         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7405         * serial.c (serial_interface_lookup): Remove struct keyword.
7406
7407 2018-06-10  Tom Tromey  <tom@tromey.com>
7408
7409         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7410         method.
7411         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7412         a method.
7413         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7414         method.
7415         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7416         "beneath" as a method.
7417         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7418         Use "beneath" as a method.
7419
7420 2018-06-10  Tom Tromey  <tom@tromey.com>
7421
7422         * tracefile.c (struct trace_file_writer_deleter): New.
7423         <operator()>: Rename from trace_file_writer_xfree.
7424         (trace_file_writer_up): New typedef.
7425         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7426
7427 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7428
7429         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7430         <m_registers, m_register_status>: Change type to
7431         std::unique_ptr.
7432         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7433         XCNEWVEC.
7434
7435 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7436
7437         * common/common-regcache.h (enum register_status): Add
7438         underlying type "signed char".
7439         * regcache.h (reg_buffer) <m_register_status>: Change type to
7440         register_status *.
7441         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7442         register_status instead of signed char.
7443         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7444         (reg_buffer::get_register_status): Remove cast.
7445         (readable_regcache::raw_read): Remove cast.
7446         (readable_regcache::cooked_read): Remove cast.
7447
7448 2018-06-09  Tom Tromey  <tom@tromey.com>
7449
7450         * source.c (reverse_search_command, forward_search_command): Use
7451         scoped_fd.
7452
7453 2018-06-09  Tom Tromey  <tom@tromey.com>
7454
7455         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7456         (serial_ops_list): Now static, std::vector.
7457         (serial_interface_lookup, serial_add_interface): Update.
7458
7459 2018-06-09  Tom Tromey  <tom@tromey.com>
7460
7461         * dwarf2read.c (process_cu_includes): Update.
7462         (process_full_comp_unit): Update.
7463         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7464         std::vector.
7465
7466 2018-06-08  Paul Koning  <paul_koning@dell.com>
7467
7468         PR gdb/23252
7469
7470         * python/python.c (do_start_initialization):
7471         Avoid call to internal Python API.
7472         (init__gdb_module): New function.
7473
7474 2018-06-08  Gary Benson <gbenson@redhat.com>
7475
7476         * linux-thread-db.c (valprint.h): New include.
7477         (struct check_thread_db_info): New structure.
7478         (check_thread_db_on_load, tdb_testinfo): New static globals.
7479         (check_thread_db, check_thread_db_callback): New functions.
7480         (try_thread_db_load_1): Run integrity checks if requested.
7481         (maintenance_check_libthread_db): New function.
7482         (_initialize_thread_db): Register "maint check libthread-db"
7483         and "maint set/show check-libthread-db".
7484         * NEWS: Mention the above new commands.
7485
7486 2018-06-08  Tom Tromey  <tom@tromey.com>
7487
7488         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7489         now a method.
7490
7491 2018-06-08  Tom Tromey  <tom@tromey.com>
7492
7493         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7494
7495 2018-06-08  Tom Tromey  <tom@tromey.com>
7496
7497         * common/btrace-common.h (struct btrace_data): Add constructor,
7498         destructor, move assignment operator.
7499         <empty, clear, fini>: New methods.
7500         <format>: Initialize.
7501         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7502         (btrace_data_empty): Don't declare.
7503         * common/btrace-common.c (btrace_data_init): Remove.
7504         (btrace_data::fini): Rename from btrace_data_fini.
7505         (btrace_data::empty): Rename from btrace_data_empty.
7506         (btrace_data::clear): Rename from btrace_data_clear.  Return
7507         bool.
7508         * btrace.h (make_cleanup_btrace_data): Don't declare.
7509         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7510         (parse_xml_btrace): Update.
7511         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7512         (maint_btrace_clear_packet_history_cmd): Update.
7513
7514 2018-06-07  Pedro Alves  <palves@redhat.com>
7515
7516         * target.h (target_ops) <beneath>: Now a method.  All references
7517         updated.
7518         (class target_stack): New.
7519         * target.c (g_target_stack): New.
7520         (g_current_top_target): Delete.
7521         (current_top_target): Get the top target out of g_target_stack.
7522         (target_stack::push, target_stack::unpush): New.
7523         (push_target, unpush_target): Reimplement.
7524         (target_is_pushed): Reimplement in terms of g_target_stack.
7525         (target_ops::beneath, target_stack::find_beneath): New.
7526
7527 2018-06-07  Pedro Alves  <palves@redhat.com>
7528
7529         * target.h (find_target_beneath): Delete declaration.
7530         * target.c (find_target_beneath): Delete definition.
7531         * aix-thread.c: All callers of find_target_beneath adjusted to
7532         call target_ops::beneath instead.
7533         * bsd-uthread.c: Likewise.
7534         * linux-thread-db.c: Likewise.
7535         * ravenscar-thread.c: Likewise.
7536         * sol-thread.c: Likewise.
7537         * spu-multiarch.c: Likewise.
7538
7539 2018-06-07  Pedro Alves  <palves@redhat.com>
7540
7541         * target.h (target_ops) <beneath>: Now a method.  All references
7542         updated.
7543         (target_ops) <m_beneath>: New.
7544         * target.c (target_ops::beneath): New.
7545         * corelow.c: Adjust all references to target_ops::beneath.
7546         * linux-thread-db.c: Likewise.
7547         * make-target-delegates: Likewise.
7548         * record-btrace.c: Likewise.
7549         * record-full.c: Likewise.
7550         * remote.c: Likewise.
7551         * target.c: Likewise.
7552         * target-delegates.c: Regenerate.
7553
7554 2018-06-07  Pedro Alves  <palves@redhat.com>
7555
7556         * target.h (target_stack): Delete.
7557         (current_top_target): Declare function.
7558         * target.c (target_stack): Delete.
7559         (g_current_top_target): New.
7560         (current_top_target): New function.
7561         * auxv.c: Use current_top_target instead of target_stack
7562         throughout.
7563         * avr-tdep.c: Likewise.
7564         * breakpoint.c: Likewise.
7565         * corefile.c: Likewise.
7566         * elfread.c: Likewise.
7567         * eval.c: Likewise.
7568         * exceptions.c: Likewise.
7569         * frame.c: Likewise.
7570         * gdbarch-selftests.c: Likewise.
7571         * gnu-v3-abi.c: Likewise.
7572         * ia64-tdep.c: Likewise.
7573         * ia64-vms-tdep.c: Likewise.
7574         * infcall.c: Likewise.
7575         * infcmd.c: Likewise.
7576         * infrun.c: Likewise.
7577         * linespec.c: Likewise.
7578         * linux-tdep.c: Likewise.
7579         * minsyms.c: Likewise.
7580         * ppc-linux-nat.c: Likewise.
7581         * ppc-linux-tdep.c: Likewise.
7582         * procfs.c: Likewise.
7583         * regcache.c: Likewise.
7584         * remote.c: Likewise.
7585         * rs6000-tdep.c: Likewise.
7586         * s390-linux-nat.c: Likewise.
7587         * s390-tdep.c: Likewise.
7588         * solib-aix.c: Likewise.
7589         * solib-darwin.c: Likewise.
7590         * solib-dsbt.c: Likewise.
7591         * solib-spu.c: Likewise.
7592         * solib-svr4.c: Likewise.
7593         * solib-target.c: Likewise.
7594         * sparc-tdep.c: Likewise.
7595         * sparc64-tdep.c: Likewise.
7596         * spu-tdep.c: Likewise.
7597         * symfile.c: Likewise.
7598         * symtab.c: Likewise.
7599         * target-descriptions.c: Likewise.
7600         * target-memory.c: Likewise.
7601         * target.c: Likewise.
7602         * target.h: Likewise.
7603         * tracefile-tfile.c: Likewise.
7604         * tracepoint.c: Likewise.
7605         * valops.c: Likewise.
7606         * valprint.c: Likewise.
7607         * value.c: Likewise.
7608         * windows-tdep.c: Likewise.
7609         * mi/mi-main.c: Likewise.
7610
7611 2018-06-07  Tom Tromey  <tom@tromey.com>
7612
7613         * valprint.h (build_address_symbolic): Declare.
7614         * printcmd.c (print_address_symbolic): Update.
7615         (build_address_symbolic): Change "name" and "filename" to
7616         std::string.
7617         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7618         Update.
7619         * defs.h (build_address_symbolic): Remove declaration.
7620
7621 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7622
7623         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7624         (aarch64_vnv_type): Add function.
7625         (aarch64_pseudo_register_name): Add V regs for SVE.
7626         (aarch64_pseudo_register_type): Likewise.
7627         (aarch64_pseudo_register_reggroup_p): Likewise.
7628         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7629         (aarch64_pseudo_read_value): Add V regs for SVE.
7630         (aarch64_pseudo_write_2): Use V0 offset for SVE
7631         (aarch64_pseudo_write): Add V regs for SVE.
7632         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7633
7634 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7635
7636         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7637         (sve_vl_from_vq): Likewise.
7638
7639 2018-06-05  Tom Tromey  <tom@tromey.com>
7640
7641         * cli/cli-cmds.c (show_version): Update.
7642         * top.c (print_gdb_version): Add "interactive" parameter.
7643         Update.
7644         * main.c (captured_main_1): Update.
7645         * top.h (print_gdb_version): Add "interactive" parameter and a
7646         comment.
7647
7648 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7649
7650         * common/enum-flags.h: Add trailing semicolon to example in
7651         comment.
7652
7653 2018-06-05  Tom Tromey  <tom@tromey.com>
7654
7655         PR cli/12326:
7656         * NEWS: Add entry about pager.
7657         * utils.c (pagination_disabled_for_command): New global.
7658         (prompt_for_continue): Allow "c" response to prompt.
7659         (reinitialize_more_filter): Clear
7660         pagination_disabled_for_command.
7661         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7662
7663 2018-06-04  Tom Tromey  <tom@tromey.com>
7664
7665         * ada-lang.h (ada_lookup_symbol_list): Update.
7666         * ada-lang.c (resolve_subexp): Update.
7667         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7668         parameter.
7669         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7670         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7671         results parameter to std::vector.
7672         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7673         Update.
7674         * ada-exp.y (block_lookup): Update.
7675         (select_possible_type_sym): Change type of syms.  Remove nsyms
7676         parameter.
7677         (write_var_or_type, write_name_assoc): Update.
7678
7679 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7680
7681         * windows-nat.c (windows_nat_target::xfer_partial): Return
7682         TARGET_XFER_E_IO if we need to delegate to the target beneath
7683         but BENEATH is NULL.
7684
7685 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7686
7687         * Makefile.in (config.status): Add configure.nat as a
7688         dependency.
7689
7690 2018-06-04  Tom Tromey  <tom@tromey.com>
7691
7692         * cp-name-parser.y (cpname_state): Add method declarations.
7693         (HANDLE_QUAL): Update.
7694         (cpname_state::d_grab, cpname_state::fill_comp)
7695         (cpname_state::make_operator, cpname_state::make_dtor)
7696         (cpname_state::make_builtin_type, cpname_state::make_name)
7697         (cpname_state::d_qualify, cpname_state::d_int_type)
7698         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7699         (%union): Move earlier.
7700
7701 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7702
7703         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7704
7705 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7706
7707         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7708         (aarch64_pseudo_write_1): Likewise.
7709         (aarch64_pseudo_read_value): Use helper.
7710         (aarch64_pseudo_write): Likewise.
7711
7712 2018-06-04  Pedro Alves  <palves@redhat.com>
7713
7714         * darwin-nat.c (darwin_ops): Delete.
7715         (darwin_attach_pid): Use get_native_target.
7716
7717 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7718
7719         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7720         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7721
7722 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7723
7724         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7725         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7726         (aarch64_gdbarch_init): Check for SVE.
7727         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7728
7729 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7730
7731         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7732         * aarch64-tdep.h (aarch64_read_description): Likewise.
7733         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7734         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7735         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7736         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7737         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7738
7739 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7740
7741         * value.c (value_fetch_lazy_bitfield): New.
7742         (value_fetch_lazy_memory): New.
7743         (value_fetch_lazy_register): New.
7744         (value_fetch_lazy): Factor out to smaller functions.
7745
7746 2018-06-01  Tom Tromey  <tom@tromey.com>
7747
7748         * cp-name-parser.y (backslashable, represented): Now const.
7749
7750 2018-06-01  Tom Tromey  <tom@tromey.com>
7751
7752         * cp-name-parser.y: Include parser-defs.h.
7753         (parser_fprintf): Remove declaration.
7754
7755 2018-06-01  Tom Tromey  <tom@tromey.com>
7756
7757         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7758         %parse-param.
7759         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7760         (global_result): Remove globals.
7761         (struct cpname_state): New.
7762         (yyparse): Don't declare.
7763         (yylex, yyerror): Move declarations after %union.
7764         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7765         (make_name): Add state parameter.
7766         Update all callers.
7767         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7768         parameter.
7769         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7770         Update.
7771         (yylex): Add lvalp, state parameters.
7772         (yyerror): Add state parameter.
7773         (cp_demangled_name_to_comp): Update.
7774
7775 2018-06-01  Tom Tromey  <tom@tromey.com>
7776
7777         * cp-name-parser.y (parser_fprintf): Declare.
7778         (GDB_YY_REMAP_PREFIX): Define.
7779         Include yy-remap.h.  Don't redefine yy* identifiers.
7780
7781 2018-06-01  Tom Tromey  <tom@tromey.com>
7782
7783         * python/py-type.c (typy_legacy_template_argument): Update.
7784         * cp-support.h (cp_demangled_name_to_comp): Update.
7785         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7786         parameter to be a "std::string *".
7787         (main): Update.
7788
7789 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7790
7791         * ada-lex.l: Include "diagnostics.h" instead of
7792         "common/diagnostics.h".
7793         * unittests/environ-selftests.c: Likewise.
7794         * common/diagnostics.h: Moved to ../include.
7795
7796 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7797
7798         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7799         to language_mode_manual while calling breakpoint_re_set_one.
7800
7801 2018-06-01  Tom Tromey  <tom@tromey.com>
7802
7803         * valops.c (value_cast_structs, destructor_name_p): Update.
7804         * symtab.c (gdb_mangle_name): Update.
7805         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7806         Update.
7807         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7808         (pascal_object_print_value_fields, pascal_object_print_value):
7809         Update.
7810         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7811         * linespec.c (find_methods): Update.
7812         * gdbtypes.h (type_name_no_tag): Remove.
7813         (type_name_or_error): Rename from type_name_no_tag_or_error.
7814         * gdbtypes.c (type_name_no_tag): Remove.
7815         (type_name_or_error): Rename from type_name_no_tag_or_error.
7816         (lookup_struct_elt_type, check_typedef): Update.
7817         * expprint.c (print_subexp_standard): Update.
7818         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7819         * d-namespace.c (d_lookup_nested_symbol): Update.
7820         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7821         (cp_print_class_member): Update.
7822         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7823         * completer.c (add_struct_fields): Update.
7824         * c-typeprint.c (cp_type_print_derivation_info)
7825         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7826         Update.
7827         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7828         (ada_prefer_type, ada_is_exception_sym): Update.
7829
7830 2018-06-01  Tom Tromey  <tom@tromey.com>
7831
7832         * valops.c (enum_constant_from_type, value_namespace_elt)
7833         (value_maybe_namespace_elt): Update.
7834         * valarith.c (find_size_for_pointer_math): Update.
7835         * target-descriptions.c (make_gdb_type): Update.
7836         * symmisc.c (print_symbol): Update.
7837         * stabsread.c (define_symbol, read_type)
7838         (complain_about_struct_wipeout, add_undefined_type)
7839         (cleanup_undefined_types_1): Update.
7840         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7841         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7842         (rust_internal_print_type, rust_composite_type)
7843         (rust_evaluate_funcall, rust_evaluate_subexp)
7844         (rust_inclusive_range_type_p): Update.
7845         * python/py-type.c (typy_get_tag): Update.
7846         * p-typeprint.c (pascal_type_print_base): Update.
7847         * mdebugread.c (parse_symbol, parse_type): Update.
7848         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7849         Update.
7850         * guile/scm-type.c (gdbscm_type_tag): Update.
7851         * go-lang.c (sixg_string_p): Update.
7852         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7853         Update.
7854         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7855         (TYPE_TAG_NAME): Remove.
7856         * gdbtypes.c (type_name_no_tag): Simplify.
7857         (check_typedef, check_types_equal, recursive_dump_type)
7858         (copy_type_recursive, arch_composite_type): Update.
7859         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7860         in summary mode when needed.
7861         * eval.c (evaluate_funcall): Update.
7862         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7863         (process_structure_scope, read_enumeration_type)
7864         (read_namespace_type, read_module_type, determine_prefix): Update.
7865         * cp-support.c (inspect_type): Update.
7866         * coffread.c (process_coff_symbol, decode_base_type): Update.
7867         * c-varobj.c (c_is_path_expr_parent): Update.
7868         * c-typeprint.c (c_type_print_base_struct_union): Update.
7869         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7870         summary when using C language.
7871         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7872         (gen_maybe_namespace_elt): Update.
7873         * ada-lang.c (ada_type_name): Simplify.
7874         (empty_record, ada_template_to_fixed_record_type_1)
7875         (template_to_static_fixed_type)
7876         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7877
7878 2018-06-01  Tom Tromey  <tom@tromey.com>
7879
7880         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7881         c_print_type.
7882         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7883         (c_print_type): Update.
7884         (c_print_type): New overload.
7885         (c_type_print_varspec_prefix, c_type_print_args)
7886         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7887         (c_type_print_base_struct_union, c_type_print_base_1)
7888         (cp_type_print_method_args): Add "language" parameter.
7889         (c_type_print_base): Update.
7890         * c-lang.h (c_print_type): Add new overload.
7891
7892 2018-06-01  Tom Tromey  <tom@tromey.com>
7893
7894         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7895         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7896
7897 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7898
7899         * aarch64-tdep.c (aarch64_sve_register_names): New const
7900         var.
7901         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7902         (AARCH64_SVE_Z_REGS_NUM): New define.
7903         (AARCH64_SVE_P_REGS_NUM): Likewise.
7904         (AARCH64_SVE_NUM_REGS): Likewise.
7905
7906 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7907
7908         * nat/linux-ptrace.h [__alpha__]
7909         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7910         definitions.
7911
7912 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7913
7914         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7915         the endianness selected.
7916         * NEWS: Document `set endian auto' mode operation update.
7917
7918 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7919
7920         * Makefile.in: Add new header.
7921         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7922         (sve_vl_from_vg): Likewise.
7923         (sve_vq_from_vl): Likewise.
7924         (sve_vl_from_vq): Likewise.
7925         (sve_vq_from_vg): Likewise.
7926         (sve_vg_from_vq): Likewise.
7927         * configure.nat: Add new c file.
7928         * nat/aarch64-sve-linux-ptrace.c: New file.
7929         * nat/aarch64-sve-linux-ptrace.h: New file.
7930
7931 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7932
7933         * aarch64-linux-nat.c (aarch64_linux_read_description):
7934         Add parmeter zero.
7935         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7936         Likewise.
7937         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7938         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7939         (aarch64_gdbarch_init): Add parmeter zero.
7940         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7941         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7942         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7943         parmeter.
7944         * doc/gdb.texinfo: Describe SVE feature
7945         * features/aarch64-sve.c: New file.
7946
7947 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7948
7949         PR gdb/23210
7950         * gdbarch.sh (significant_addr_bit): Default to zero when
7951         not set by target architecture.
7952         * gdbarch.c: Re-generated.
7953         * utils.c (address_significant): Update.
7954
7955 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7956
7957         * stack.c (func_command): Remove trailing newline in call to error.
7958
7959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7960
7961         * regcache.h (regcache_raw_collect): Remove, update callers to
7962         use regcache::raw_collect.
7963         * regcache.c (regcache_raw_collect): Remove.
7964
7965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7966
7967         * regcache.h (regcache_raw_supply): Remove, update callers to
7968         use detached_regcache::raw_supply.
7969         * regcache.c (regcache_raw_supply): Remove.
7970
7971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7972
7973         * regcache.h (regcache_cooked_write_part): Remove, update
7974         callers to use regcache::cooked_write_part.
7975         * regcache.c (regcache_cooked_write_part): Remove.
7976
7977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7978
7979         * regcache.h (regcache_cooked_read_part): Remove, update callers
7980         to use readable_regcache::cooked_read_part.
7981         * regcache.c (regcache_cooked_read_part): Remove.
7982
7983 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7984
7985         * regcache.h (regcache_cooked_read_value): Remove, update
7986         callers to use readable_regcache::cooked_read_value.
7987         * regcache.c (regcache_cooked_read_value): Remove.
7988
7989 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7990
7991         * regcache.h (regcache_cooked_write): Remove, update callers to
7992         use regcache::cooked_write.
7993         * regcache.c (regcache_cooked_write): Remove.
7994
7995 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7996
7997         * regcache.h (regcache_invalidate): Remove, update callers to
7998         use detached_regcache::invalidate instead.
7999         * regcache.c (regcache_invalidate): Remove.
8000
8001 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8002
8003         * regcache.h (regcache_raw_write_part): Remove, update callers
8004         to use regcache::raw_write_part instead.
8005         * regcache.c (regcache_raw_write_part): Remove.
8006
8007 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8008
8009         * regcache.h (regcache_raw_read_part): Remove, update callers to
8010         use readable_regcache::raw_read_part instead.
8011         * regcache.c (regcache_raw_read_part): Remove.
8012
8013 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8014
8015         * regcache.h (regcache_cooked_read): Remove, update callers to
8016         use readable_regcache::cooked_read instead.
8017         * regcache.c (regcache_cooked_read): Remove.
8018
8019 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8020
8021         * regcache.h (regcache_raw_write): Remove, update callers to use
8022         regcache::raw_write instead.
8023         * regcache.c (regcache_raw_write): Remove.
8024
8025 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8026
8027         * regcache.h (regcache_raw_read): Remove, update callers to use
8028         readable_regcache::raw_read instead.
8029         * regcache.c (regcache_raw_read): Remove.
8030
8031 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8032
8033         * regcache.h (regcache_raw_update): Remove, update callers to
8034         use readable_regcache::raw_update instead.
8035         * regcache.c (regcache_raw_update): Remove.
8036
8037 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8038
8039         * regcache.h (regcache_register_status): Remove, update callers
8040         to use reg_buffer::get_register_status directly instead.
8041         * regcache.c (regcache_register_status): Remove.
8042
8043 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8044
8045         * regcache.h (regcache_get_ptid): Remove, update all callers to
8046         call regcache::ptid instead.
8047         * regcache.c (regcache_get_ptid): Remove.
8048
8049 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8050
8051         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8052
8053 2018-05-30  Pedro Alves  <palves@redhat.com>
8054
8055         * common/common-exceptions.h (exception_rethrow): Use
8056         ATTRIBUTE_NORETURN.
8057
8058 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8059
8060         * breakpoint.c (print_solib_event, check_status_catch_solib):
8061         Remove struct keyword in range-based for loops.
8062         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8063         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8064         Likewise.
8065         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8066         Likewise.
8067         * symfile.c (addr_info_make_relative): Likewise.
8068         * thread.c (value_in_thread_stack_temporaries): Likewise.
8069
8070 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8071
8072         PR gdb/16841
8073         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8074         aggregate type to get its real type before accessing it.
8075
8076 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8077
8078         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8079         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8080         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8081         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8082         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8083         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8084         * printcmd.c (info_address_command): Likewise.
8085
8086 2018-05-29  Tom Tromey  <tom@tromey.com>
8087
8088         * windows-nat.c (handle_exception): Update fall-through comment.
8089
8090 2018-05-29  Tom Tromey  <tom@tromey.com>
8091
8092         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8093         (struct program_space) <added_solibs>: Now a std::vector.
8094         * breakpoint.c (print_solib_event): Update.
8095         (check_status_catch_solib): Update.
8096         * progspace.c (clear_program_space_solib_cache): Update.
8097         * solib.c (update_solib_list): Update.
8098
8099 2018-05-29  Tom Tromey  <tom@tromey.com>
8100
8101         * python/py-type.c (typy_richcompare): Update.
8102         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8103         * gdbtypes.h (types_deeply_equal): Return bool.
8104         (types_equal): Likewise.
8105         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8106         declare VEC.
8107         (check_types_equal): Change worklist to std::vector.  Return
8108         bool.
8109         (struct type_equality_entry): Add constructor.
8110         (compare_maybe_null_strings): Return bool.
8111         (check_types_worklist): Return bool.  Change worklist to
8112         std::vector.
8113         (types_deeply_equal): Use std::vector.
8114         (types_equal): Return bool.
8115         (compare_maybe_null_strings): Simplify.
8116
8117 2018-05-29  Tom Tromey  <tom@tromey.com>
8118
8119         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8120
8121 2018-05-29  Tom Tromey  <tom@tromey.com>
8122
8123         * objc-lang.h: Don't include cp-support.h.
8124         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8125         declare VEC.
8126
8127 2018-05-27  Tom Tromey  <tom@tromey.com>
8128
8129         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8130
8131 2018-05-25  Tom Tromey  <tom@tromey.com>
8132
8133         * value.c (value::location): Initialize.
8134
8135 2018-05-25  Tom Tromey  <tom@tromey.com>
8136
8137         * dbxread.c (init_bincl_list): Remove.
8138         (bincl_list): Now a std::vector.
8139         (bincls_allocated, next_bincl): Remove.
8140         (free_bincl_list, do_free_bincl_list_cleanup)
8141         (make_cleanup_free_bincl_list): Remove.
8142         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8143         unique_xmalloc_ptr.
8144         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8145         (struct header_file_location): Add constructor.
8146         (add_bincl_to_list): Remove.
8147
8148 2018-05-25  Tom Tromey  <tom@tromey.com>
8149
8150         * tui/tui.c (tui_enable): Update.
8151         * mi/mi-interp.c (mi_interp::init): Update.
8152         * interps.h (class interp) <name>: New method.
8153         <m_name>: Rename from name.
8154         (~scoped_restore_interp): Update.
8155         * interps.c (interp::interp): Update.
8156         (interp_add, interp_set, interp_lookup_existing)
8157         (current_interp_named_p): Update.
8158
8159 2018-05-25  Tom Tromey  <tom@tromey.com>
8160
8161         * interps.c (interp_name): Remove.
8162         * mi/mi-interp.c (mi_interp::init): Update.
8163         * interps.h (interp_name): Remove.
8164         (~scoped_restore_interp): Update.
8165         * tui/tui.c (tui_enable): Update.
8166
8167 2018-05-25  Tom Tromey  <tom@tromey.com>
8168
8169         * utils.c (fputs_maybe_filtered): Update.
8170         * linespec.c (decode_line_full): Update.
8171         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8172         (mi_print_breakpoint_for_event, mi_solib_loaded)
8173         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8174         (mi_user_selected_context_changed): Update.
8175         * mi/mi-main.c (mi_execute_command): Update.
8176         * cli/cli-script.c (execute_control_command): Update.
8177         * python/python.c (execute_gdb_command): Update.
8178         * solib.c (info_sharedlibrary_command): Update.
8179         * interps.c (interp_ui_out): Remove.
8180         * interps.h (interp_ui_out): Remove.
8181
8182 2018-05-25  Tom Tromey  <tom@tromey.com>
8183
8184         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8185         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8186         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8187
8188 2018-05-25  Tom Tromey  <tom@tromey.com>
8189
8190         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8191         * interps.c (interp_exec): Use scoped_restore.
8192
8193 2018-05-25  Tom Tromey  <tom@tromey.com>
8194
8195         * remote.c (remote_target::remote_file_get): Use
8196         gdb::byte_vector.
8197         (remote_target::remote_file_put): Likewise.
8198
8199 2018-05-25  Tom Tromey  <tom@tromey.com>
8200
8201         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8202         a std::string.
8203         (get_pe_section_index, add_pe_exported_sym): Update.
8204         (read_pe_exported_syms): Use gdb::def_vector.
8205
8206 2018-05-25  Tom Tromey  <tom@tromey.com>
8207
8208         * frame.c (remove_prev_frame): Remove.
8209         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8210
8211 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8212
8213         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8214         Remove prototypes.
8215         * mips-linux-nat.c (supply_fpregset): Always call
8216         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8217         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8218         `mips_fill_fpregset'.
8219         * mips-linux-tdep.c (mips_supply_fpregset)
8220         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8221         (mips_fill_fpregset_wrapper): Remove functions.
8222         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8223         (mips_linux_fpregset): Remove variable.
8224         (mips_linux_iterate_over_regset_sections): Use
8225         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8226         (mips_linux_o32_sigframe_init): Remove comment.
8227
8228 2018-05-25  Pedro Alves  <palves@redhat.com>
8229
8230         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8231         (struct readahead_cache, struct packet_reg, struct
8232         remote_arch_state, class remote_state): Move higher up in the
8233         file.
8234         (remote_target::m_remote_state): Now an object instead of a pointer.
8235         (remote_target::get_remote_state): Adjust.
8236
8237 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8238
8239         * stack.c (select_and_print_frame): Delete.
8240         (struct function_bounds): Move struct within function.
8241         (func_command): Most content moved into new function
8242         find_frame_for_function, use new function, print result, add
8243         function comment.
8244         (find_frame_for_function): New function, now returns a result.
8245
8246 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8247
8248         * stack.c (iterate_over_block_arg_vars): Fix comment.
8249         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8250
8251 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8252
8253         PR gdb/23203
8254         * frame.c
8255         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8256         Define.
8257         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8258         Define.
8259         * frame.h (class scoped_restore_selected_frame): New class.
8260         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8261         of any exception, use scoped_restore_selected_frame to restore the
8262         frame instead.
8263
8264 2018-05-24  Pedro Alves  <palves@redhat.com>
8265
8266         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8267         override.
8268
8269 2018-05-23  Tom Tromey  <tom@tromey.com>
8270
8271         * complaints.c (struct complaints): Remove.
8272         (symfile_complaint_book): Remove.
8273         (series): New global.
8274         (complaint_internal): Update.
8275         (clear_complaints): Update.
8276
8277 2018-05-23  Tom Tromey  <tom@tromey.com>
8278
8279         * complaints.c (counters): New global.
8280         (struct complain): Remove.
8281         (struct complaints) <root>: Remove.
8282         (complaint_sentinel): Remove.
8283         (symfile_complaint_book): Update.
8284         (find_complaint) Remove.
8285         (complaint_internal, clear_complaints): Update.
8286
8287 2018-05-23  Tom Tromey  <tom@tromey.com>
8288
8289         * complaints.c (struct complain) <file, line>: Remove.
8290         (find_complaint): Remove file, line parameters.
8291         (complaint_internal): Update.
8292
8293 2018-05-23  Tom Tromey  <tom@tromey.com>
8294
8295         * complaints.c (vcomplaint): Remove.
8296         (complaint_internal) Merge in contents of vcomplaint.
8297
8298 2018-05-23  Tom Tromey  <tom@tromey.com>
8299
8300         * complaints.c (struct complaints) <explanation>: Remove.
8301         (symfile_explanations): Remove.
8302         (symfile_complaint_book): Update.
8303         (vcomplaint): Update.
8304         (struct explanation): Remove.
8305
8306 2018-05-23  Tom Tromey  <tom@tromey.com>
8307
8308         * complaints.c (symfile_complaints): Remove.
8309         (complaint_internal): Remove "complaints" parameter.
8310         (clear_complaints, vcomplaint): Remove "c" parameter.
8311         (get_complaints): Remove.
8312         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8313         (dwarf2_debug_line_missing_file_complaint)
8314         (dwarf2_debug_line_missing_end_sequence_complaint)
8315         (dwarf2_complex_location_expr_complaint)
8316         (dwarf2_const_value_length_mismatch_complaint)
8317         (dwarf2_section_buffer_overflow_complaint)
8318         (dwarf2_macro_malformed_definition_complaint)
8319         (dwarf2_invalid_attrib_class_complaint)
8320         (create_addrmap_from_index, dw2_symtab_iter_next)
8321         (dw2_expand_marked_cus)
8322         (dw2_debug_names_iterator::find_vec_in_debug_names)
8323         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8324         (create_debug_type_hash_table, init_cutu_and_read_dies)
8325         (partial_die_parent_scope, add_partial_enumeration)
8326         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8327         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8328         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8329         (create_cus_hash_table, create_dwp_hash_table)
8330         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8331         (dwarf2_rnglists_process, dwarf2_ranges_process)
8332         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8333         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8334         (handle_struct_member_die, process_structure_scope)
8335         (read_array_type, read_common_block, read_module_type)
8336         (read_tag_pointer_type, read_typedef, read_base_type)
8337         (read_subrange_type, load_partial_dies, partial_die_info::read)
8338         (partial_die_info::read, partial_die_info::read)
8339         (partial_die_info::read, read_checked_initial_length_and_offset)
8340         (dwarf2_string_attr, read_formatted_entries)
8341         (dwarf_decode_line_header)
8342         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8343         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8344         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8345         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8346         (get_signatured_type, get_DW_AT_signature_type)
8347         (decode_locdesc, file_file_name, consume_improper_spaces)
8348         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8349         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8350         (dwarf2_symbol_mark_computed, set_die_type)
8351         (read_attribute_value): Update.
8352         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8353         Update.
8354         * dbxread.c (unknown_symtype_complaint)
8355         (lbrac_mismatch_complaint, repeated_header_complaint)
8356         (set_namestring, function_outside_compilation_unit_complaint)
8357         (read_dbx_symtab, process_one_symbol): Update.
8358         * gdbtypes.c (stub_noname_complaint): Update.
8359         * windows-nat.c (handle_unload_dll): Update.
8360         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8361         (decode_base_type): Update.
8362         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8363         (eb_complaint, record_include_begin, record_include_end)
8364         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8365         (process_xcoff_symbol, read_symbol)
8366         (function_outside_compilation_unit_complaint)
8367         (scan_xcoff_symtab): Update.
8368         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8369         * buildsym.c (finish_block_internal, make_blockvector)
8370         (end_symtab_get_static_block, augment_type_symtab): Update.
8371         * dtrace-probe.c (dtrace_process_dof)
8372         (dtrace_static_probe_ops::get_probes): Update.
8373         * complaints.h (struct complaint): Don't declare.
8374         (symfile_complaints): Remove.
8375         (complaint_internal): Remove "complaints" parameter.
8376         (complaint): Likewise.
8377         (clear_complaints): Likewise.
8378         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8379         (reread_symbols): Update.
8380         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8381         (dwarf2_frame_cache, decode_frame_entry): Update.
8382         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8383         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8384         (info_selectors_command): Update.
8385         * macrotab.c (macro_include, check_for_redefinition)
8386         (macro_undef): Update.
8387         * objfiles.c (filter_overlapping_sections): Update.
8388         * stabsread.c (invalid_cpp_abbrev_complaint)
8389         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8390         (define_symbol, error_type, read_type, rs6000_builtin_type)
8391         (stabs_method_name_from_physname, read_member_functions)
8392         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8393         (attach_fields_to_type, complain_about_struct_wipeout)
8394         (read_range_type, read_args, common_block_start)
8395         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8396         Update.
8397         * mdebugread.c (index_complaint, unknown_ext_complaint)
8398         (basic_type_complaint, bad_tag_guess_complaint)
8399         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8400         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8401         (parse_procedure, parse_lines)
8402         (function_outside_compilation_unit_complaint)
8403         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8404         (bad_tag_guess_complaint, reg_value_complaint): Update.
8405         * cp-support.c (demangled_name_complaint): Update.
8406         * macroscope.c (sal_macro_scope): Update.
8407         * dwarf-index-write.c (class debug_names): Update.
8408
8409 2018-05-23  Tom Tromey  <tom@tromey.com>
8410
8411         * complaints.c (clear_complaints): Remove "noisy" parameter.
8412         * complaints.h (clear_complaints): Update.
8413         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8414         (reread_symbols): Update.
8415
8416 2018-05-23  Tom Tromey  <tom@tromey.com>
8417
8418         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8419         SUBSEQUENT_MESSAGE.
8420         (vcomplaint, clear_complaints): Update.
8421         (symfile_explanations): Remove some messages.
8422
8423 2018-05-23  Tom Tromey  <tom@tromey.com>
8424
8425         * complaints.c (internal_complaint): Remove.
8426         * complaints.h (internal_complaint): Remove.
8427
8428 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8429
8430         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8431
8432 2018-05-22  Pedro Alves  <palves@redhat.com>
8433
8434         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8435         (remote_fileio_badfd, remote_fileio_return_errno)
8436         (remote_fileio_return_success, remote_fileio_func_open)
8437         (remote_fileio_func_open, remote_fileio_func_close)
8438         (remote_fileio_func_read, remote_fileio_func_write)
8439         (remote_fileio_func_lseek, remote_fileio_func_rename)
8440         (remote_fileio_func_unlink, remote_fileio_func_stat)
8441         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8442         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8443         remote_target parameter.
8444         (remote_fio_func_map) <func>: Add remote_target parameter.
8445         (do_remote_fileio_request, remote_fileio_request):
8446         * remote-fileio.h (remote_fileio_request):
8447         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8448         remote_target parameter.
8449         (remote_notif_process, handle_notification): Adjust to pass down
8450         the remote.
8451         (remote_notif_state_allocate): Add remote_target parameter.  Save
8452         it.
8453         * remote-notif.h (struct remote_target): Forward declare.
8454         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8455         remote_target parameter.
8456         (struct remote_notif_state) <remote>: New field.
8457         (remote_notif_ack, remote_notif_parse): Add remote_target
8458         parameter.
8459         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8460         remote_target parameter.
8461         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8462         (threads_listing_context, rmt_thread_action, protocol_feature)
8463         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8464         (packet_result, struct threads_listing_context, remote_state):
8465         Move definitions and declarations higher up.
8466         (remote_target) <~remote_target>: Declare.
8467         (remote_download_command_source, remote_file_put, remote_file_get)
8468         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8469         (remote_hostio_pread_vFile, remote_hostio_send_command)
8470         (remote_hostio_set_filesystem, remote_hostio_open)
8471         (remote_hostio_close, remote_hostio_unlink, remote_state)
8472         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8473         (get_memory_write_packet_size, get_memory_read_packet_size)
8474         (append_pending_thread_resumptions, remote_detach_1)
8475         (append_resumption, remote_resume_with_vcont)
8476         (add_current_inferior_and_thread, wait_ns, wait_as)
8477         (process_stop_reply, remote_notice_new_inferior)
8478         (process_initial_stop_replies, remote_add_thread)
8479         (btrace_sync_conf, remote_btrace_maybe_reopen)
8480         (remove_new_fork_children, kill_new_fork_children)
8481         (discard_pending_stop_replies, stop_reply_queue_length)
8482         (check_pending_events_prevent_wildcard_vcont)
8483         (discard_pending_stop_replies_in_queue, stop_reply)
8484         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8485         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8486         (remote_interrupt_as, remote_interrupt_ns)
8487         (remote_get_noisy_reply, remote_query_attached)
8488         (remote_add_inferior, remote_current_thread, get_current_thread)
8489         (set_thread, set_general_thread, set_continue_thread)
8490         (set_general_process, write_ptid)
8491         (remote_unpack_thread_info_response, remote_get_threadinfo)
8492         (parse_threadlist_response, remote_get_threadlist)
8493         (remote_threadlist_iterator, remote_get_threads_with_ql)
8494         (remote_get_threads_with_qxfer)
8495         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8496         (get_offsets, remote_check_symbols, remote_supported_packet)
8497         (remote_query_supported, remote_packet_size)
8498         (remote_serial_quit_handler, remote_detach_pid)
8499         (remote_vcont_probe, remote_resume_with_hc)
8500         (send_interrupt_sequence, interrupt_query)
8501         (remote_notif_get_pending_events, fetch_register_using_p)
8502         (send_g_packet, process_g_packet, fetch_registers_using_g)
8503         (store_register_using_P, store_registers_using_G)
8504         (set_remote_traceframe, check_binary_download)
8505         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8506         (remote_xfer_live_readonly_partial, remote_read_bytes)
8507         (remote_send_printf, remote_flash_write, readchar)
8508         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8509         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8510         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8511         (extended_remote_disable_randomization, extended_remote_run)
8512         (send_environment_packet, extended_remote_environment_support)
8513         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8514         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8515         (packet_command): Now methods of ...
8516         (remote_target): ... this class.
8517         (m_remote_state) <remote_target>: New field.
8518         (struct remote_state) <stop_reply_queue,
8519         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8520         fields.
8521         (remote_state::remote_state): Allocate stop_reply_queue.
8522         (remote_state): Delete global.
8523         (get_remote_state_raw): Delete.
8524         (remote_target::get_remote_state): Allocate m_remote_state on
8525         demand.
8526         (get_current_remote_target): New.
8527         (remote_ops, extended_remote_ops): Delete.
8528         (wait_forever_enabled_p, remote_async_inferior_event_token):
8529         Delete, moved to struct remote_state.
8530         (remote_target::close): Delete self.  Destruction bits split to
8531         ...
8532         (remote_target::~remote_target): ... this.
8533         (show_memory_packet_size): Adjust to use
8534         get_current_remote_target.
8535         (struct protocol_feature) <func>: Add remote_target parameter.
8536         All callers adjusted.
8537         (curr_quit_handler_target): New.
8538         (remote_serial_quit_handler): Reimplement.
8539         (remote_target::open_1): Adjust to use get_current_remote_target.
8540         Heap-allocate remote_target/extended_remote_target instances.
8541         (vcont_builder::vcont_builder): Add remote_target parameter, and
8542         save it in m_remote.  All callers adjusted.
8543         (vcont_builder::m_remote): New field.
8544         (vcont_builder::restart, vcont_builder::flush)
8545         (vcont_builder::push_action): Use it.
8546         (remote_target::commit_resume): Use it.
8547         (struct queue_iter_param) <remote>: New field.
8548         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8549         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8550         (check_pending_event_prevents_wildcard_vcont_callback)
8551         (remote_target::check_pending_events_prevent_wildcard_vcont)
8552         (remote_target::discard_pending_stop_replies)
8553         (remote_target::discard_pending_stop_replies_in_queue)
8554         (remote_target::remote_notif_remove_queued_reply): Fill in
8555         'remote' field.
8556         (remote_notif_get_pending_events): New.
8557         (remote_target::readchar, remote_target::remote_serial_write):
8558         Save/restore curr_quit_handler_target.
8559         (putpkt): New.
8560         (kill_new_fork_children): Fill in 'remote' field.
8561         (packet_command): Use get_current_remote_target, defer to
8562         remote_target method of same name.
8563         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8564         parameter, and save it in m_remote.  All callers adjusted.
8565         (scoped_remote_fd::release): Use m_remote.
8566         (scoped_remote_fd::m_remote): New field.
8567         (remote_file_put, remote_file_get, remote_file_delete): Use
8568         get_current_remote_target, defer to remote_target method of same
8569         name.
8570         (remote_btrace_reset): Add remote_state paremeter.  Update all
8571         callers.
8572         (remote_async_inferior_event_handler). Pass down 'data'.
8573         (remote_new_objfile): Use get_current_remote_target.
8574         (remote_target::vcont_r_supported): New.
8575         (set_range_stepping): Use get_current_remote_target and
8576         remote_target::vcont_r_supported.
8577         (_initialize_remote): Don't allocate 'remote_state' and
8578         'stop_reply_queue' globals.
8579         * remote.h (struct remote_target): Forward declare.
8580         (getpkt, putpkt, remote_notif_get_pending_events): Add
8581         'remote_target' parameter.
8582
8583 2018-05-22  Pedro Alves  <palves@redhat.com>
8584
8585         * remote.c (vcont_builder): Now a class.  Make all data members
8586         private.
8587         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8588         Declare methods.
8589         (vcont_builder_restart): Rename to ...
8590         (vcont_builder::restart): ... this.
8591         (vcont_builder_flush): Rename to ...
8592         (vcont_builder::flush): ... this.
8593         (vcont_builder_push_action): Rename to ...
8594         (vcont_builder::push_action): ... this.
8595         (remote_target::commit_resume): Adjust.
8596
8597 2018-05-22  Pedro Alves  <palves@redhat.com>
8598
8599         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8600         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8601         (get_fixed_memory_packet_size): New.
8602         (get_memory_packet_size): Use it.
8603         (set_memory_packet_size): Don't override the config size with
8604         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8605         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8606         Don't refer to get_memory_packet_size if not connected to a remote
8607         target.  Show "(default)" if configured size is 0.
8608
8609 2018-05-22  Pedro Alves  <palves@redhat.com>
8610
8611         * remote.c (remote_target::mourn_inferior): Move
8612         discard_pending_stop_replies call here from ...
8613         (_initialize_remote): ... here.
8614
8615 2018-05-22  Pedro Alves  <palves@redhat.com>
8616
8617         * remote.c (compare_section_command): Remove set_general_process
8618         call.
8619
8620 2018-05-22  Pedro Alves  <palves@redhat.com>
8621
8622         * remote.c (struct packet_reg, struct remote_arch_state):
8623         Move higher up in the file.
8624         (remote_state) <m_arch_states>: Store remote_arch_state values
8625         instead of remote_arch_state pointers.
8626         (remote_state::get_remote_arch_state): Adjust.
8627
8628 2018-05-22  Pedro Alves  <palves@redhat.com>
8629
8630         * remote.c: Include <unordered_map>.
8631         (remote_state): Now a class.
8632         (remote_state) <get_remote_arch_state>: Declare method.
8633         <get_remote_arch_state>: New field.
8634         (remote_arch_state) <remote_arch_state>: Declare ctor.
8635         <regs>: Now a unique_ptr.
8636         (remote_gdbarch_data_handle): Delete.
8637         (get_remote_arch_state): Delete.
8638         (remote_state::get_remote_arch_state): New.
8639         (get_remote_state): Adjust to call remote_state's
8640         get_remote_arch_state method.
8641         (init_remote_state): Delete, bits factored out to ...
8642         (remote_arch_state::remote_arch_state): ... this new method.
8643         (get_remote_packet_size, get_memory_packet_size)
8644         (process_g_packet, remote_target::fetch_registers)
8645         (remote_target::prepare_to_store, store_registers_using_G)
8646         (remote_target::store_registers, remote_target::get_trace_status):
8647         Adjust to call remote_state's method.
8648         (_initialize_remote): Remove reference to
8649         remote_gdbarch_data_handle.
8650
8651 2018-05-22  Pedro Alves  <palves@redhat.com>
8652
8653         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8654         pread>: New method declarations.
8655         (remote_target::open_1): Adjust.
8656         (readahead_cache_invalidate): Rename to ...
8657         (readahead_cache::invalidate): ... this, and adjust to be a class
8658         method.
8659         (readahead_cache_invalidate_fd): Rename to ...
8660         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8661         class method.
8662         (remote_hostio_pwrite): Adjust.
8663         (remote_hostio_pread_from_cache): Rename to ...
8664         (readahead_cache::pread): ... this, and adjust to be a class
8665         method.
8666         (remote_hostio_close): Adjust.
8667
8668 2018-05-22  Pedro Alves  <palves@redhat.com>
8669
8670         * remote.c (remote_hostio_close_cleanup): Delete.
8671         (class scoped_remote_fd): New.
8672         (remote_file_put, remote_file_get): Use it.
8673
8674 2018-05-22  Pedro Alves  <palves@redhat.com>
8675
8676         (struct vCont_action_support): Use bool and initialize all fields.
8677         (struct readahead_cache): Initialize all fields.
8678         (remote_state): Use bool and initialize all fields.
8679         (remote_state::remote_state, remote_state::~remote_state): New.
8680         (new_remote_state): Delete.
8681         (_initialize_remote): Use new to allocate remote_state.
8682
8683 2018-05-22  Pedro Alves  <palves@redhat.com>
8684             張俊芝  <zjz@zjz.name>
8685
8686         PR gdb/22973
8687         * c-exp.y: Include "c-support.h".
8688         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8689         of tolower.  Use c_ident_is_alpha to scan names.
8690         * c-lang.c: Include "c-support.h".
8691         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8692         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8693         * c-support.h: New file, with bits factored out from ...
8694         * cp-name-parser.y: ... this file.
8695         Include "c-support.h".
8696         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8697         c-support.h and renamed.
8698         (symbol_end, yylex): Adjust.
8699
8700 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8701
8702         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8703         parameter type to CORE_ADDR.
8704         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8705         parameter type in declaration to CORE_ADDR.
8706         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8707         target_auxv_search to get AT_HWCAP and use the result to get the
8708         target description.
8709         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8710         to CORE_ADDR. Remove the cast of the return value to unsigned
8711         long. Fix error predicate of target_auxv_search.
8712         (ppc_linux_nat_target::read_description): Change the type of the
8713         hwcap variable to CORE_ADDR.
8714
8715 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8716
8717         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8718         if the size of fpscr is larger than 32 bits.
8719
8720 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8721
8722         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8723         (ppc32_linux_vsxregmap): New global.
8724         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8725         regcache_supply_regset, and regcache_collect_regset.
8726         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8727         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8728         (fetch_vsx_register, store_vsx_register): Remove.
8729         (fetch_vsx_registers): Add regno parameter. Get regset using
8730         ppc_linux_vsxregset. Use regset to supply registers.
8731         (store_vsx_registers): Add regno parameter. Get regset using
8732         ppc_linux_vsxregset. Use regset to collect registers.
8733         (fetch_register): Call fetch_vsx_registers instead of
8734         fetch_vsx_register.
8735         (store_register): Call store_vsx_registers instead of
8736         store_vsx_register.
8737         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8738         new regno parameter.
8739         (store_ppc_registers): Call store_vsx_registers with -1 for the
8740         new regno parameter.
8741         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8742         (ppc_collect_vsxregset): Remove.
8743
8744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8745
8746         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8747         offset fields.
8748         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8749         for vector register offset fields.
8750         (ppc64_fbsd_reg_offsets): Likewise.
8751         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8752         to vector register offset fields.
8753         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8754         to vector register offset fields.
8755         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8756         vector register offset fields.
8757         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8758         initializers for vector register offset fields.
8759         (rs6000_aix64_reg_offsets): Likewise.
8760         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8761         (ppc_supply_vrregset): Remove.
8762         (ppc_collect_vrregset): Remove.
8763         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8764         (ppc_linux_vrregset) : New function.
8765         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8766         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8767         (ppc32_linux_vrregset): Remove.
8768         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8769         and use result instead of ppc32_linux_vrregset.
8770         (ppc32_linux_reg_offsets): Remove initializers for vector register
8771         offset fields.
8772         (ppc64_linux_reg_offsets): Likewise.
8773         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8774         * ppc-linux-nat.c: Include regset.h.
8775         (gdb_vrregset_t): Adjust comment to account for little-endian
8776         mode.
8777         (supply_vrregset, fill_vrregset): Remove.
8778         (fetch_altivec_register, store_altivec_register): Remove.
8779         (fetch_altivec_registers): Add regno parameter. Get regset using
8780         ppc_linux_vrregset. Use regset to supply registers.
8781         (store_altivec_registers): Add regno parameter. Get regset using
8782         ppc_linux_vrregset. Use regset to collect registers.
8783         (fetch_register): Call fetch_altivec_registers instead of
8784         fetch_altivec_register.
8785         (store_register): Call store_altivec_registers instead of
8786         store_altivec_register.
8787         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8788         the new regno parameter.
8789         (store_ppc_registers): Call store_altivec_registers with -1 for
8790         the new regno parameter.
8791
8792 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8793
8794         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8795         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8796         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8797         (gdb_vrregset_t): Change array type size to
8798         PPC_LINUX_SIZEOF_VRREGSET.
8799         (gdb_vsxregset_t): Change array type size to
8800         PPC_LINUX_SIZEOF_VSXREGSET.
8801         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8802         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8803         PPC_LINUX_SIZEOF_VSXREGSET.
8804
8805 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8806
8807         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8808         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8809         nat/ppc-linux.c.
8810         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8811         ppc_linux_target_wordsize with tid.
8812         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8813         wordsize with tid.
8814         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8815         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8816         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8817         tid parameter. Remove static specifier.
8818         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8819         (ppc_linux_target_wordsize): New declaration.
8820
8821 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8822
8823         * arch/ppc-linux-common.c: New file.
8824         * arch/ppc-linux-common.h: New file.
8825         * arch/ppc-linux-tdesc.h: New file.
8826         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8827         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8828         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8829         arch/ppc-linux-tdesc.h.
8830         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8831         arch/ppc-linux-tdesc.h.
8832         (ppc_linux_nat_target::read_description): Remove target
8833         description matching code. Fill a ppc_linux_features struct and
8834         call ppc_linux_match_description with it. Move comment about ISA
8835         2.05 to ppc-linux-common.c.
8836         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8837         arch/ppc-linux-tdesc.h.
8838         (ppc_linux_core_read_description): Remove target description
8839         matching code. Fill a ppc_linux_features struct and call
8840         ppc_linux_match_description with it.
8841         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8842         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8843         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8844         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8845         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8846         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8847         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8848         (tdesc_powerpc_e500l): Remove.
8849
8850 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8851
8852         * ada-lang.c (catch_assert_command): Pass empty string instead
8853         of NULL for excep_string argument.
8854
8855 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8856
8857         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8858         the width of the requested register exceeds the width of the
8859         `ptrace' data type.
8860
8861 2018-05-21  Tom Tromey  <tom@tromey.com>
8862
8863         * printcmd.c (output_command): Remove.
8864         (output_command_const): Rename to output_command.
8865         * valprint.h (output_command): Rename from output_command_const.
8866         * tracepoint.c (trace_dump_actions): Call output_command.
8867
8868 2018-05-21  Tom Tromey  <tom@tromey.com>
8869
8870         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8871         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8872         * ada-lang.h (create_ada_exception_catchpoint): Update.
8873         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8874         std::string.
8875         (create_excep_cond_exprs, ~ada_catchpoint)
8876         (should_stop_exception, print_one_exception)
8877         (print_mention_exception, print_recreate_exception): Update.
8878         (ada_get_next_arg): Remove.
8879         (catch_ada_exception_command_split): Use std::string.  Change type
8880         of "excep_string", "cond_string".
8881         (catch_ada_exception_command): Update.
8882         (create_ada_exception_catchpoint): Change type of excep_string.
8883         (ada_exception_sal): Remove excep_string parameter.
8884         (~ada_catchpoint): Remove.
8885
8886 2018-05-21  Tom Tromey  <tom@tromey.com>
8887
8888         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8889         cleanup.
8890
8891 2018-05-21  Tom Tromey  <tom@tromey.com>
8892
8893         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8894         Return unique_xmalloc_ptr.
8895         (print_it_exception): Update.
8896
8897 2018-05-21  Tom Tromey  <tom@tromey.com>
8898
8899         * tracepoint.c (trace_dump_actions): Use std::string.
8900
8901 2018-05-21  Tom Tromey  <tom@tromey.com>
8902
8903         * symfile.c (reread_symbols): Use std::string for original_name.
8904
8905 2018-05-21  Tom Tromey  <tom@tromey.com>
8906
8907         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8908         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8909         constructor.
8910
8911 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8912
8913         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8914         instance to...
8915         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8916         * objfiles.c (get_objfile_bfd_data): Allocate
8917         objfile_per_bfd_storage with obstack_new when allocating on
8918         obstack.
8919
8920 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8921
8922         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8923         OBSTACK_ZALLOC.
8924         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8925         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8926         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8927         (add_pending): Likewise.
8928         (parse_symbol): Likewise.
8929         (parse_partial_symbols): Likewise.
8930         (psymtab_to_symtab_1): Likewise.
8931         (new_psymtab): Likewise.
8932         (elfmdebug_build_psymtabs): Likewise.
8933         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8934         * objfiles.c (get_objfile_bfd_data): Likewise.
8935         (objfile_register_static_link): Likewise.
8936         * psymtab.c (allocate_psymtab): Likewise.
8937         * stabsread.c (read_member_functions): Likewise.
8938         * xcoffread.c (xcoff_end_psymtab): Likewise.
8939
8940 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8941
8942         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8943         compiler supports std::is_trivially_constructible.
8944         * common/poison.h: Include obstack.h.
8945         (IsMallocable): Define to is_trivially_constructible if the
8946         compiler supports it, define to true_type otherwise.
8947         (xobnew): New.
8948         (XOBNEW): Redefine.
8949         (xobnewvec): New.
8950         (XOBNEWVEC): Redefine.
8951         * gdb_obstack.h (obstack_zalloc): New.
8952         (OBSTACK_ZALLOC): Redefine.
8953         (obstack_calloc): New.
8954         (OBSTACK_CALLOC): Redefine.
8955         (obstack_new): New.
8956         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8957         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8958         gdbarch.c.
8959         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8960         obstack_calloc/obstack_zalloc.
8961         (gdbarch_obstack_zalloc): Remove.
8962         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8963
8964 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8965
8966         * stack.c (backtrace_command_1): Remove useless variable int i.
8967
8968 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8969
8970         * stack.c (print_frame_info): Fix comment.
8971
8972 2018-05-18  Tom Tromey  <tom@tromey.com>
8973
8974         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8975         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8976         (~dwarf2_per_objfile): Update
8977         (dwarf2_get_dwz_file): Use new.
8978         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8979         unique_ptr.
8980
8981 2018-05-18  Tom Tromey  <tom@tromey.com>
8982
8983         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8984         unique_ptr.
8985         * dwarf2read.c (struct dwp_file): Add constructor and
8986         initializers.
8987         (open_and_init_dwp_file): Return a unique_ptr.
8988         (dwarf2_per_objfile, create_dwp_hash_table)
8989         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8990         (lookup_dwo_unit_in_dwp): Update.
8991         (open_and_init_dwp_file, get_dwp_file): Update.
8992
8993 2018-05-18  Tom Tromey  <tom@tromey.com>
8994
8995         * dwarf2read.c (dwarf2_per_objfile): Update.
8996         (struct mapped_index): Add initializers.
8997         (dwarf2_read_index): Use new.
8998         (dw2_symtab_iter_init): Update.
8999         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9000         unique_ptr.
9001
9002 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9003
9004         * dwarf2read.c (mapped_index) <total_size>: Remove.
9005
9006 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9007
9008         * unittests/format_pieces-selftests.c (test_format_specifier):
9009         Add ARI comments.
9010
9011 2018-05-18  Tom Tromey  <tom@tromey.com>
9012
9013         * c-typeprint.c (maybe_print_hole): New function.
9014         (c_print_type_struct_field_offset): Update.
9015         (c_type_print_base_struct_union): Call maybe_print_hole.
9016
9017 2018-05-17  Keith Seitz  <keiths@redhat.com>
9018
9019         * breakpoint.c (build_bpstat_chain): New function, moved from
9020         bpstat_stop_status.
9021         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9022         If no stop chain is passed, call build_bpstat_chain to build it.
9023         * breakpoint.h (build_bpstat_chain): Declare.
9024         (bpstat_stop_status): Move documentation here from breakpoint.c.
9025         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9026         build the stop chain and pass it to skip_inline_frames.
9027         Pass this stop chain to bpstat_stop_status.
9028         * inline-frame.c: Include breakpoint.h.
9029         (stopped_by_user_bp_inline_frame): New function.
9030         (skip_inline_frames): Add parameter `stop_chain'.
9031         Move documention to inline-frame.h.
9032         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9033         whether the frame should be elided.
9034         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9035         Add moved documentation and update for new parameter.
9036
9037 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9038
9039         PR cli/14975
9040         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9041         unittests/format_pieces-selftests.c.
9042         * common/format.h (format_piece) <operator==>: New.
9043         (format_pieces) <operator[]>: Remove.
9044         * common/format.c (format_pieces::format_pieces): Handle \e.
9045         * unittests/format_pieces-selftests.c: New.
9046
9047 2018-05-17  Tom Tromey  <tom@tromey.com>
9048
9049         PR symtab/23010:
9050         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9051         (dw2_instantiate_symtab): Add skip_partial parameter.
9052         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9053         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9054         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9055         (dw2_expand_symtabs_matching_one)
9056         (dw2_find_pc_sect_compunit_symtab)
9057         (dw2_debug_names_lookup_symbol)
9058         (dw2_debug_names_expand_symtabs_for_function): Update.
9059         (init_cutu_and_read_dies): Add skip_partial parameter.
9060         (process_psymtab_comp_unit, build_type_psymtabs_1)
9061         (process_skeletonless_type_unit, load_partial_comp_unit)
9062         (psymtab_to_symtab_1): Update.
9063         (load_full_comp_unit): Add skip_partial parameter.
9064         (process_imported_unit_die, dwarf2_read_addr_index)
9065         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9066         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9067         (read_signatured_type): Update.
9068
9069 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9070
9071         * value.c (release_value): Remove unused variable.
9072         (record_latest_value): Likewise.
9073         (access_value_history): Likewise.
9074         (preserve_values): Likewise.
9075
9076 2018-05-17  Tom Tromey  <tom@tromey.com>
9077
9078         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9079         Initialize.
9080
9081 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9082
9083         PR gdb/22286
9084         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9085         Also handle registers whose width is not a multiple of
9086         PTRACE_TYPE_RET.
9087         (linux_nat_trad_target::store_register): Likewise.
9088
9089 2018-05-16  Tom Tromey  <tom@tromey.com>
9090
9091         * gdbcore.h (core_bfd): Redefine.
9092         * corelow.c (core_target::close): Update.
9093         (core_target_open): Update.
9094         * progspace.h (struct program_space) <cbfd>: Now a
9095         gdb_bfd_ref_ptr.
9096
9097 2018-05-16  Tom Tromey  <tom@tromey.com>
9098
9099         PR cli/19551:
9100         * symfile-add-flags.h (enum symfile_add_flags)
9101         <SYMFILE_NOT_FILENAME>: New constant.
9102         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9103         objfile name from BFD.
9104         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9105         * minidebug.c (find_separate_debug_file_in_section): Put
9106         ".gnu_debugdata" into BFD's file name.
9107
9108 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9109
9110         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9111         Remove.
9112
9113 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9114
9115         PR binutils/21446
9116         * aarch64-tdep.c (aarch64_analyze_prologue,
9117         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9118         Indicate not interested in errors.
9119
9120 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9121
9122         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9123         Supply the MIPS_ZERO_REGNUM register.
9124
9125 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9126
9127         * mips-tdep.c (mask_address_var): Make variable static.
9128
9129 2018-05-14  Tom Tromey  <tom@tromey.com>
9130
9131         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9132
9133 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9134
9135         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9136         FXSAVE_ADDR for the mxcsr register.
9137
9138 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9139
9140         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9141
9142 2018-05-11  Pedro Alves  <palves@redhat.com>
9143
9144         * corelow.c (core_target) <core_target>: No longer inline.
9145         Initialize m_core_gdbarch, m_core_vec and build the section table
9146         here.
9147         <~core_target>: New.
9148         <core_gdbarch, get_core_register_section>: New methods.
9149         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9150         factored out from ...
9151         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9152         (core_ops): Delete.
9153         (sniff_core_bfd): Add gdbarch parameter.
9154         (core_close): Delete, merged into ...
9155         (core_target::close): ... here.  Delete self.
9156         (core_close_cleanup): Delete.
9157         (core_target_open): Allocate a core_target on the heap.  Use a
9158         unique_ptr instead of a cleanup.  Bits moved into the core_target
9159         ctor.  Adjust to use core_target methods instead of globals.
9160         (get_core_register_section): Rename to ...
9161         (core_target::get_core_register_section): ... this and adjust.
9162         (struct get_core_registers_cb_data): New.
9163         (get_core_registers_cb): Use it.  Use bool.
9164         (core_target::fetch_registers, core_target::files_info)
9165         (core_target::xfer_partial, core_target::read_description)
9166         (core_target::pid_to, core_target::thread_name): Adjust to
9167         reference class fields instead of globals.
9168         * target.h (struct target_ops_deleter, target_ops_up): New.
9169
9170 2018-05-11  Pedro Alves  <palves@redhat.com>
9171
9172         * corefile.c (core_file_command): Move to corelow.c.
9173         * corelow.c (the_core_target): Delete.
9174         (core_file_command): Moved from corefile.c.  Check exec_bfd
9175         instead of the_core_target.  Use target_detach instead of calling
9176         into the_core_target directly.
9177         (maybe_say_no_core_file_now): New.
9178         (core_target::detach): Use it.
9179         (_initialize_corelow): Remove references to the_core_target.
9180         * gdbcore.h (the_core_target): Delete.
9181
9182 2018-05-11  Tom Tromey  <tromey@redhat.com>
9183             Pedro Alves  <palves@redhat.com>
9184
9185         * corefile.c (core_bfd): Remove.
9186         * gdbcore.h (core_bfd): Now a macro.
9187         * progspace.h (struct program_space) <cbfd>: New field.
9188
9189 2018-05-11  Tom Tromey  <tom@tromey.com>
9190
9191         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9192         gdb::def_vector.
9193
9194 2018-05-10  Tom Tromey  <tom@tromey.com>
9195
9196         * configure: Rebuild.
9197         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9198
9199 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9200
9201         PR server/23158:
9202         * regformats/regdat.sh: Adjust script, following the addition
9203         of the new expedite_regs parameter to init_target_desc.
9204
9205 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9206     
9207         PR gdb/23127
9208         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9209         set_gdbarch_significant_addr_bit.
9210         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9211         set_gdbarch_significant_addr_bit.
9212         * utils.c (address_significant): Update to sign extend addr.
9213
9214 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9215
9216         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9217         (xtensa_linux_init_abi): Limit tdep->num_regs by
9218         tdep->num_nopriv_regs.
9219         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9220         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9221         not initialized.
9222
9223 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9224
9225         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9226
9227 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9228
9229         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9230         (I387_MXCSR_INIT_VAL): New constant.
9231         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9232         buffer if it was supplied by the inferior.
9233         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9234         (i387_xsave_get_clear_bv): New function.
9235         (i387_supply_xsave): Only read x87 control registers from the
9236         xsave buffer if the feature is enabled, and the state will have
9237         been written, otherwise, provide a suitable default.
9238         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9239         including x87 control registers.  Update control registers if they
9240         have changed from the default value, and mark features as enabled
9241         as required.
9242         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9243
9244 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9245
9246         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9247
9248 2018-05-07  Tom Tromey  <tom@tromey.com>
9249
9250         * configure: Rebuild.
9251         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9252
9253 2018-05-07  Tom Tromey  <tom@tromey.com>
9254
9255         PR tdep/20362:
9256         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9257         bit.  Use correct value for VDIV.
9258
9259 2018-05-04  Tom Tromey  <tom@tromey.com>
9260
9261         * configure: Rebuild.
9262         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9263
9264 2018-05-04  Tom Tromey  <tom@tromey.com>
9265
9266         * linux-record.c (record_linux_system_call) <case
9267         RECORD_SYS_RECVFROM>: Add "break".
9268
9269 2018-05-04  Tom Tromey  <tom@tromey.com>
9270
9271         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9272         Add missing "break".
9273         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9274         Add missing "break".
9275
9276 2018-05-04  Tom Tromey  <tom@tromey.com>
9277
9278         * rs6000-tdep.c (ppc_process_record_op4)
9279         (ppc_process_record_op63): Add fall-through comment.
9280
9281 2018-05-04  Tom Tromey  <tom@tromey.com>
9282
9283         * i386-tdep.c (i386_process_record): Add fall-through comment.
9284
9285 2018-05-04  Tom Tromey  <tom@tromey.com>
9286
9287         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9288         comment.
9289
9290 2018-05-04  Tom Tromey  <tom@tromey.com>
9291
9292         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9293         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9294         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9295         comment.
9296         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9297         comment.
9298         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9299         comment.
9300
9301 2018-05-04  Tom Tromey  <tom@tromey.com>
9302
9303         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9304
9305 2018-05-04  Tom Tromey  <tom@tromey.com>
9306
9307         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9308         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9309         * symfile.c (section_is_mapped): Fix fall-through comment.
9310         * stabsread.c (define_symbol, read_member_functions): Fix
9311         fall-through comment.
9312         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9313         comment.
9314         * remote.c (remote_wait_as): Fix fall-through comment.
9315         * p-exp.y (yylex): Fix fall-through comment.
9316         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9317         comment.
9318         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9319         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9320         * jv-exp.y (yylex): Fix fall-through comment.
9321         * go-exp.y (lex_one_token): Fix fall-through comment.
9322         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9323         fall-through comment.
9324         * f-exp.y (yylex): Fix fall-through comment.
9325         * dwarf2read.c (process_die): Fix fall-through comments.
9326         * dbxread.c (process_one_symbol): Fix fall-through comment.
9327         * d-exp.y (lex_one_token): Fix fall-through comment.
9328         * cp-name-parser.y (yylex): Fix fall-through comment.
9329         * coffread.c (coff_symtab_read): Fix fall-through comment.
9330         * c-exp.y (lex_one_token): Fix fall-through comment.
9331         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9332         comment.
9333         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9334         comment.
9335
9336 2018-05-04  Tom Tromey  <tom@tromey.com>
9337
9338         PR python/22730:
9339         * NEWS: Mention gdb.execute change.
9340         * gdbcmd.h (execute_control_command): Don't declare.
9341         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9342         execute_control_commands, execute_control_commands_to_string.
9343         * cli/cli-script.h (execute_control_commands)
9344         (execute_control_commands_to_string): Declare.
9345         (execute_control_command): Add from_tty parameter.
9346         * cli/cli-script.c (execute_control_commands)
9347         (execute_control_commands_to_string): New functions.
9348         (execute_user_command): Use execute_control_commands.
9349         (execute_control_command_1): Add "from_tty" parameter.  Update.
9350         (execute_control_command): Likewise.
9351
9352 2018-05-04  Tom Tromey  <tom@tromey.com>
9353
9354         PR python/22731:
9355         * NEWS: Mention that breakpoint commands are writable.
9356         * python/py-breakpoint.c (bppy_set_commands): New function.
9357         (breakpoint_object_getset) <"commands">: Use it.
9358
9359 2018-05-04  Tom Tromey  <tom@tromey.com>
9360
9361         * tracepoint.c (actions_command): Update.
9362         * mi/mi-cmd-break.c (mi_command_line_array)
9363         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9364         (mi_read_next_line): Remove.
9365         (mi_cmd_break_commands): Update.
9366         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9367         function_view.
9368         * cli/cli-script.c (get_command_line): Update.
9369         (process_next_line): Use function_view.  Constify.
9370         (recurse_read_control_structure, read_command_lines)
9371         (read_command_lines_1): Change argument types to function_view.
9372         (do_define_command, document_command): Update.
9373         * breakpoint.h (check_tracepoint_command): Don't declare.
9374         * breakpoint.c (check_tracepoint_command): Remove.
9375         (commands_command_1, create_tracepoint_from_upload): Update.
9376
9377 2018-05-04  Tom Tromey  <tom@tromey.com>
9378
9379         PR gdb/11750:
9380         * cli/cli-script.h (enum command_control_type) <define_control>:
9381         New constant.
9382         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9383         (build_command_line, execute_control_command_1)
9384         (process_next_line): Likewise.
9385         (do_define_command): New function, extracted from define_command.
9386         (define_command): Use it.
9387
9388 2018-05-04  Tom Tromey  <tom@tromey.com>
9389
9390         * tracepoint.c (actions_command): Update.
9391         * cli/cli-script.h (read_command_lines): Update.
9392         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9393         (MAX_TMPBUF): Remove define.
9394         (define_command): Use string_printf.
9395         (document_command): Likewise.
9396         * breakpoint.c (commands_command_1): Update.
9397
9398 2018-05-04  Tom Tromey  <tom@tromey.com>
9399
9400         * top.c (execute_command): Update.
9401         * cli/cli-script.h (print_command_lines): Now varargs.
9402         * cli/cli-script.c (print_command_lines): Now varargs.
9403         (execute_control_command_1) <case while_control, case if_control>:
9404         Update.
9405
9406 2018-05-04  Tom Tromey  <tom@tromey.com>
9407
9408         * tracepoint.c (all_tracepoint_actions): Rename from
9409         all_tracepoint_actions_and_cleanup.  Change return type.
9410         (actions_command, encode_actions_1, encode_actions)
9411         (trace_dump_actions, tdump_command): Update.
9412         * remote.c (remote_download_command_source): Update.
9413         * python/python.c (gdbpy_eval_from_control_command)
9414         (python_command, python_interactive_command): Update.
9415         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9416         * guile/guile.c (guile_command)
9417         (gdbscm_eval_from_control_command, guile_command): Update.
9418         * compile/compile.c (compile_code_command)
9419         (compile_print_command, compile_to_object): Update.
9420         * cli/cli-script.h (struct command_lines_deleter): New.
9421         (counted_command_line): New typedef.
9422         (struct command_line): Add constructor, destructor.
9423         <body_list>: Remove.
9424         <body_list_0, body_list_1>: New members.
9425         (command_line_up): Remove typedef.
9426         (read_command_lines, read_command_lines_1, get_command_line):
9427         Update.
9428         (copy_command_lines): Don't declare.
9429         * cli/cli-script.c (build_command_line): Use "new".
9430         (get_command_line): Return counted_command_line.
9431         (print_command_lines, execute_user_command)
9432         (execute_control_command_1, while_command, if_command): Update.
9433         (realloc_body_list): Remove.
9434         (process_next_line, recurse_read_control_structure): Update.
9435         (read_command_lines, read_command_lines_1): Return counted_command_line.
9436         (free_command_lines): Use "delete".
9437         (copy_command_lines): Remove.
9438         (define_command, document_command, show_user_1): Update.
9439         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9440         a counted_command_line.
9441         * breakpoint.h (counted_command_line): Remove typedef.
9442         (breakpoint_set_commands): Update.
9443         * breakpoint.c (check_no_tracepoint_commands)
9444         (validate_commands_for_breakpoint): Update.
9445         (breakpoint_set_commands): Change commands to be a
9446         counted_command_line.
9447         (commands_command_1, update_dprintf_command_list)
9448         (create_tracepoint_from_upload): Update.
9449
9450 2018-05-04  Tom Tromey  <tom@tromey.com>
9451
9452         * cli/cli-decode.h (cmd_list_element): New constructor.
9453         (~cmd_list_element): New destructor.
9454         (struct cmd_list_element): Add initializers.
9455         * cli/cli-decode.c (do_add_cmd): Use "new".
9456         (delete_cmd): Use "delete".
9457
9458 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9459             Pedro Alves <palves@redhat.com>
9460
9461         PR breakpoints/19806 and support for PR external/20207.
9462         * NEWS: Mention Aarch64 watchpoint improvements.
9463         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9464         watchpoints and PR external/20207 watchpoints.
9465         * nat/aarch64-linux-hw-point.c
9466         (kernel_supports_any_contiguous_range): New.
9467         (aarch64_watchpoint_offset): New.
9468         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9469         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9470         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9471         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9472         next_addr_orig_p.  Support PR external/20207 watchpoints.
9473         (aarch64_downgrade_regs): New.
9474         (aarch64_dr_state_insert_one_point): New parameters offset and
9475         addr_orig.
9476         (aarch64_dr_state_remove_one_point): Likewise.
9477         (aarch64_handle_breakpoint): Update caller.
9478         (aarch64_handle_aligned_watchpoint): Likewise.
9479         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9480         aligned_offset.
9481         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9482         aarch64_downgrade_regs.
9483         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9484         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9485         (DR_CONTROL_MASK): ... this.
9486         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9487         (unsigned int aarch64_watchpoint_offset): New prototype.
9488         (aarch64_linux_set_debug_regs): Remove const from state.
9489         * utils.c (align_up, align_down): Move to ...
9490         * common/common-utils.c (align_up, align_down): ... here.
9491         * utils.h (align_up, align_down): Move to ...
9492         * common/common-utils.h (align_up, align_down): ... here.
9493
9494 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9495
9496         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9497         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9498         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9499         Re-implement to match the ABI as summarized in GCC's
9500         gcc/config/sparc/sparc.c.  All callers updated.
9501         (sparc32_store_arguments): Remove assertion.
9502
9503 2018-05-04  Tom Tromey  <tom@tromey.com>
9504
9505         * printcmd.c: Don't include tui.h.
9506         (decode_format): Use skip_spaces.
9507
9508 2018-05-04  Tom Tromey  <tom@tromey.com>
9509
9510         PR gdb/22619:
9511         * printcmd.c (last_count): New global.
9512         (x_command): Use saved count when repeating.
9513
9514 2018-05-04  Tom Tromey  <tom@tromey.com>
9515
9516         * nto-procfs.c (do_closedir_cleanup): Remove.
9517         (procfs_pidlist): Use gdb_dir_up.
9518         * procfs.c (do_closedir_cleanup): Remove.
9519         (proc_update_threads): Use gdb_dir_up.
9520         * common/filestuff.h (struct gdb_dir_deleter): New.
9521         (gdb_dir_up): New typedef.
9522
9523 2018-05-04  Tom Tromey  <tom@tromey.com>
9524
9525         * ada-lang.c (print_mention_exception): Use std::string.
9526
9527 2018-05-04  Tom Tromey  <tom@tromey.com>
9528
9529         * ada-lang.c (create_excep_cond_exprs): Update.
9530         (ada_exception_catchpoint_cond_string): Use std::string.
9531
9532 2018-05-04  Tom Tromey  <tom@tromey.com>
9533
9534         * ada-lang.c (xget_renaming_scope): Return std::string.
9535         (old_renaming_is_invisible): Update.
9536
9537 2018-05-04  Tom Tromey  <tom@tromey.com>
9538
9539         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9540         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9541
9542 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9543
9544         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9545
9546 2018-05-04  Tom Tromey  <tom@tromey.com>
9547
9548         * remote.c (remote_query_supported_append): Change type.
9549         (remote_check_symbols): Update.
9550
9551 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9552
9553         PR gdb/11420
9554         * configure.ac: Prepend libpython.
9555         * python/python-config.py: Likewise.
9556         * configure: Regenerate.
9557
9558 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9559
9560         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9561
9562 2018-05-03  Pedro Alves  <palves@redhat.com>
9563
9564         * s390-linux-nat.c
9565         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9566         override.  Write 'true' instead of '1'.
9567         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9568         declaration.
9569
9570 2018-05-02  Pedro Alves  <palves@redhat.com>
9571
9572         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9573         add_inf_child_target.
9574         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9575         add_inf_child_target.
9576         * aix-thread.c (aix_thread_target_info): New.
9577         (aix_thread_target) <shortname, longname, doc>: Delete.
9578         <info>: New.
9579         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9580         add_inf_child_target.
9581         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9582         add_inf_child_target.
9583         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9584         add_inf_child_target.
9585         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9586         add_inf_child_target.
9587         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9588         add_inf_child_target.
9589         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9590         add_inf_child_target.
9591         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9592         add_inf_child_target.
9593         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9594         add_inf_child_target.
9595         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9596         add_inf_child_target.
9597         * bfd-target.c (target_bfd_target_info): New.
9598         (target_bfd) <shortname, longname, doc>: Delete.
9599         <info>: New.
9600         * bsd-kvm.c (bsd_kvm_target_info): New.
9601         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9602         <info>: New.
9603         (bsd_kvm_target::open): Rename to ...
9604         (bsd_kvm_target_open): ... this.  Adjust.
9605         * bsd-uthread.c (bsd_uthread_target_info): New.
9606         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9607         <info>: New.
9608         * corefile.c (core_file_command): Adjust.
9609         * corelow.c (core_target_info): New.
9610         (core_target) <shortname, longname, doc>: Delete.
9611         <info>: New.
9612         (core_target::open): Rename to ...
9613         (core_target_open): ... this.  Adjust.
9614         * ctf.c (ctf_target_info): New.
9615         (ctf_target) <shortname, longname, doc>: Delete.
9616         <info>: New.
9617         (ctf_target::open): Rename to ...
9618         (ctf_target_open): ... this.
9619         (_initialize_ctf): Adjust.
9620         * exec.c (exec_target_info): New.
9621         (exec_target) <shortname, longname, doc>: Delete.
9622         <info>: New.
9623         (exec_target::open): Rename to ...
9624         (exec_target_open): ... this.
9625         * gdbcore.h (core_target_open): Declare.
9626         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9627         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9628         add_inf_child_target.
9629         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9630         add_inf_child_target.
9631         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9632         add_inf_child_target.
9633         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9634         add_inf_child_target.
9635         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9636         add_inf_child_target.
9637         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9638         add_inf_child_target.
9639         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9640         add_inf_child_target.
9641         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9642         add_inf_child_target.
9643         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9644         add_inf_child_target.
9645         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9646         add_inf_child_target.
9647         * inf-child.c (inf_child_target_info): New.
9648         (inf_child_target::info): New.
9649         (inf_child_open_target): Remove 'target' parameter.  Use
9650         get_native_target instead.
9651         (inf_child_target::open): Delete.
9652         (add_inf_child_target): New.
9653         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9654         Delete.
9655         <info>: New.
9656         (add_inf_child_target): Declare.
9657         (inf_child_open_target): Declare.
9658         * linux-thread-db.c (thread_db_target_info): New.
9659         (thread_db_target) <shortname, longname, doc>: Delete.
9660         <info>: New.
9661         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9662         add_inf_child_target.
9663         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9664         add_inf_child_target.
9665         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9666         add_inf_child_target.
9667         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9668         add_inf_child_target.
9669         * make-target-delegates (print_class): Adjust.
9670         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9671         add_inf_child_target.
9672         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9673         add_inf_child_target.
9674         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9675         add_inf_child_target.
9676         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9677         add_inf_child_target.
9678         * nto-procfs.c (nto_native_target_info): New.
9679         (nto_procfs_target_native) <shortname, longname, doc>:
9680         Delete.
9681         <info>: New.
9682         (nto_procfs_target_info): New.
9683         (nto_procfs_target_procfs) <shortname, longname, doc>:
9684         Delete.
9685         <info>: New.
9686         (init_procfs_targets): Adjust.
9687         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9688         add_inf_child_target.
9689         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9690         add_inf_child_target.
9691         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9692         add_inf_child_target.
9693         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9694         add_inf_child_target.
9695         * ravenscar-thread.c (ravenscar_target_info): New.
9696         (ravenscar_thread_target) <shortname, longname, doc>:
9697         Delete.
9698         <info>: New.
9699         * record-btrace.c (record_btrace_target_info):
9700         (record_btrace_target) <shortname, longname, doc>: Delete.
9701         <info>: New.
9702         (record_btrace_target::open): Rename to ...
9703         (record_btrace_target_open): ... this.  Adjust.
9704         * record-full.c (record_longname, record_doc): New.
9705         (record_full_base_target) <shortname, longname, doc>: Delete.
9706         <info>: New.
9707         (record_full_target_info): New.
9708         (record_full_target): <shortname>: Delete.
9709         <info>: New.
9710         (record_full_core_open_1, record_full_open_1): Update comments.
9711         (record_full_base_target::open): Rename to ...
9712         (record_full_open): ... this.
9713         (cmd_record_full_restore): Update.
9714         (_initialize_record_full): Update.
9715         * remote-sim.c (remote_sim_target_info): New.
9716         (gdbsim_target) <shortname, longname, doc>: Delete.
9717         <info>: New.
9718         (gdbsim_target::open): Rename to ...
9719         (gdbsim_target_open): ... this.
9720         (_initialize_remote_sim): Adjust.
9721         * remote.c (remote_doc): New.
9722         (remote_target_info): New.
9723         (remote_target) <shortname, longname, doc>: Delete.
9724         <info>: New.
9725         (extended_remote_target_info): New.
9726         (extended_remote_target) <shortname, longname, doc>: Delete.
9727         <info>: New.
9728         (remote_target::open_1): Make static.  Adjust.
9729         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9730         * s390-linux-nat.c (_initialize_s390_nat): Use
9731         add_inf_child_target.
9732         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9733         add_inf_child_target.
9734         * sol-thread.c (thread_db_target_info): New.
9735         (sol_thread_target) <shortname, longname, doc>: Delete.
9736         <info>: New.
9737         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9738         add_inf_child_target.
9739         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9740         add_inf_child_target.
9741         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9742         add_inf_child_target.
9743         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9744         add_inf_child_target.
9745         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9746         add_inf_child_target.
9747         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9748         add_inf_child_target.
9749         * spu-linux-nat.c (_initialize_spu_nat): Use
9750         add_inf_child_target.
9751         * spu-multiarch.c (spu_multiarch_target_info): New.
9752         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9753         <info>: New.
9754         * target-delegates.c: Regenerate.
9755         * target.c: Include <unordered_map>.
9756         (target_ops_p): Delete.
9757         (DEF_VEC_P(target_ops_p)): Delete.
9758         (target_factories): New.
9759         (test_target_info): New.
9760         (test_target_ops::info): New.
9761         (open_target): Adjust to use target_factories.
9762         (add_target_with_completer): Rename to ...
9763         (add_target): ... this.  Change prototype.  Register target_info
9764         and open callback in target_factories.  Register target_info in
9765         command context instead of target_ops.
9766         (add_target): Delete old implementation.
9767         (add_deprecated_target_alias): Change prototype.  Adjust.
9768         (the_native_target): New.
9769         (set_native_target, get_native_target): New.
9770         (find_default_run_target): Use the_native_target.
9771         (find_attach_target, find_run_target): Simplify.
9772         (target_ops::open): Delete.
9773         (dummy_target_info): New.
9774         (dummy_target::shortname, dummy_target::longname)
9775         (dummy_target::doc): Delete.
9776         (dummy_target::info): New.
9777         (debug_target::shortname, debug_target::longname)
9778         (debug_target::doc): Delete.
9779         (debug_target::info): New.
9780         * target.h (struct target_info): New.
9781         (target_ops::~target_ops): Add comment.
9782         (target_ops::info): New.
9783         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9784         longer virtual.  Implement in terms of target_info.
9785         (set_native_target, get_native_target): Declare.
9786         (target_open_ftype): New.
9787         (add_target, add_target_with_completer)
9788         (add_deprecated_target_alias): Change prototype.
9789         (test_target) <shortname, longname, doc>: Delete.
9790         <info>: New.
9791         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9792         add_inf_child_target.
9793         * tracefile-tfile.c (tfile_target_info): New.
9794         (tfile_target) <shortname, longname, doc>: Delete.
9795         <info>: New.
9796         (tfile_target::open): Rename to ...
9797         (tfile_target_open): ... this.
9798         (_initialize_tracefile_tfile): Adjust.
9799         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9800         add_inf_child_target.
9801         * windows-nat.c (_initialize_windows_nat): Use
9802         add_inf_child_target.
9803         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9804         add_inf_child_target.
9805
9806 2018-05-02  Pedro Alves  <palves@redhat.com>
9807
9808         * linux-nat.h (linux_nat_target) <low_new_thread,
9809         low_delete_thread, low_new_fork, low_forget_process,
9810         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9811         New virtual methods.
9812         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9813         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9814         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9815         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9816         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9817         Delete.
9818         * linux-fork.c (delete_fork): Adjust to call low method.
9819         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9820         (linux_nat_new_fork, linux_nat_forget_process_hook)
9821         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9822         (linux_nat_status_is_event):
9823         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9824         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9825         to call low method.
9826         (sigtrap_is_event): Rename to ...
9827         (linux_nat_target::low_status_is_event): ... this.
9828         (linux_nat_set_status_is_event): Delete.
9829         (save_stop_reason, linux_nat_wait_1)
9830         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9831         low methods.
9832         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9833         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9834         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9835         (linux_nat_set_prepare_to_resume): Delete.
9836         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9837         low virtual methods.
9838         * amd64-linux-nat.c: Likewise.
9839         * arm-linux-nat.c: Likewise.
9840         * i386-linux-nat.c: Likewise.
9841         * ia64-linux-nat.c: Likewise.
9842         * mips-linux-nat.c: Likewise.
9843         * ppc-linux-nat.c: Likewise.
9844         * s390-linux-nat.c: Likewise.
9845         * sparc64-linux-nat.c: Likewise.
9846         * x86-linux-nat.c: Likewise.
9847         * x86-linux-nat.h: Include "nat/x86-linux.h".
9848         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9849         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9850         Override methods.
9851
9852 2018-05-02  Pedro Alves  <palves@redhat.com>
9853
9854         * target.h (target_ops)
9855         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9856         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9857         stopped_by_watchpoint, have_continuable_watchpoint,
9858         stopped_data_address, watchpoint_addr_within_range,
9859         can_accel_watchpoint_condition, can_run, thread_alive,
9860         has_all_memory, has_memory, has_stack, has_registers,
9861         has_execution, can_async_p, is_async_p, supports_non_stop,
9862         always_non_stop_p, can_execute_reverse, supports_multi_process,
9863         supports_enable_disable_tracepoint,
9864         supports_disable_randomization, supports_string_tracing,
9865         supports_evaluation_of_breakpoint_conditions,
9866         can_run_breakpoint_commands, filesystem_is_local,
9867         can_download_tracepoint, get_trace_state_variable_value,
9868         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9869         record_is_replaying, record_will_replay,
9870         augmented_libraries_svr4_read>: Adjust to return bool.
9871         * aarch64-linux-nat.c: All implementations adjusted.
9872         * aix-thread.c: All implementations adjusted.
9873         * arm-linux-nat.c: All implementations adjusted.
9874         * breakpoint.c: All implementations adjusted.
9875         * bsd-kvm.c: All implementations adjusted.
9876         * bsd-uthread.c: All implementations adjusted.
9877         * corelow.c: All implementations adjusted.
9878         * ctf.c: All implementations adjusted.
9879         * darwin-nat.c: All implementations adjusted.
9880         * darwin-nat.h: All implementations adjusted.
9881         * exec.c: All implementations adjusted.
9882         * fbsd-nat.c: All implementations adjusted.
9883         * fbsd-nat.h: All implementations adjusted.
9884         * gnu-nat.c: All implementations adjusted.
9885         * gnu-nat.h: All implementations adjusted.
9886         * go32-nat.c: All implementations adjusted.
9887         * ia64-linux-nat.c: All implementations adjusted.
9888         * inf-child.c: All implementations adjusted.
9889         * inf-child.h: All implementations adjusted.
9890         * inf-ptrace.c: All implementations adjusted.
9891         * inf-ptrace.h: All implementations adjusted.
9892         * linux-nat.c: All implementations adjusted.
9893         * linux-nat.h: All implementations adjusted.
9894         * mips-linux-nat.c: All implementations adjusted.
9895         * nto-procfs.c: All implementations adjusted.
9896         * ppc-linux-nat.c: All implementations adjusted.
9897         * procfs.c: All implementations adjusted.
9898         * ravenscar-thread.c: All implementations adjusted.
9899         * record-btrace.c: All implementations adjusted.
9900         * record-full.c: All implementations adjusted.
9901         * remote-sim.c: All implementations adjusted.
9902         * remote.c: All implementations adjusted.
9903         * s390-linux-nat.c: All implementations adjusted.
9904         * sol-thread.c: All implementations adjusted.
9905         * spu-multiarch.c: All implementations adjusted.
9906         * target-delegates.c: All implementations adjusted.
9907         * target.c: All implementations adjusted.
9908         * target.h: All implementations adjusted.
9909         * tracefile-tfile.c: All implementations adjusted.
9910         * tracefile.c: All implementations adjusted.
9911         * tracefile.h: All implementations adjusted.
9912         * windows-nat.c: All implementations adjusted.
9913         * x86-linux-nat.h: All implementations adjusted.
9914         * x86-nat.h: All implementations adjusted.
9915
9916 2018-05-02  Pedro Alves  <palves@redhat.com>
9917
9918         * make-target-delegates (scan_target_h): Don't trim lines here.
9919         Replace sequences of tabs and/or whitespace with a single
9920         whitespace.
9921         (top level, parsing methods): Trim each line before processing it
9922         here.
9923
9924 2018-05-02  Pedro Alves  <palves@redhat.com>
9925             John Baldwin  <jhb@freebsd.org>
9926
9927         * target.h (enum strata) <debug_stratum>: New.
9928         (struct target_ops) <all delegation methods>: Replace by C++
9929         virtual methods, and drop "to_" prefix.  All references updated
9930         throughout.
9931         <to_shortname, to_longname, to_doc, to_data,
9932         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9933         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9934         virtual methods.  All references updated throughout.
9935         <can_attach, supports_terminal_ours, can_create_inferior,
9936         get_thread_control_capabilities, attach_no_wait>: New
9937         virtual methods.
9938         <insert_breakpoint, remove_breakpoint>: Now
9939         TARGET_DEFAULT_NORETURN methods.
9940         <info_proc>: Now returns bool.
9941         <to_magic>: Delete.
9942         (OPS_MAGIC): Delete.
9943         (current_target): Delete.  All references replaced by references
9944         to ...
9945         (target_stack): ... this.  New.
9946         (target_shortname, target_longname): Adjust.
9947         (target_can_run): Now a function declaration.
9948         (default_child_has_all_memory, default_child_has_memory)
9949         (default_child_has_stack, default_child_has_registers)
9950         (default_child_has_execution): Remove target_ops parameter.
9951         (complete_target_initialization): Delete.
9952         (memory_breakpoint_target): New template class.
9953         (test_target_ops): Refactor as a C++ class with virtual methods.
9954         * make-target-delegates (NAME_PART): Tighten.
9955         (POINTER_PART, CP_SYMBOL): New.
9956         (SIMPLE_RETURN_PART): Reimplement.
9957         (VEC_RETURN_PART): Expect less.
9958         (RETURN_PART, VIRTUAL_PART): New.
9959         (METHOD): Adjust to C++ virtual methods.
9960         (scan_target_h): Remove reference to C99.
9961         (dname): Output "target_ops::" prefix.
9962         (write_function_header): Adjust to output a C++ class method.
9963         (write_declaration): New.
9964         (write_delegator): Adjust to output a C++ class method.
9965         (tdname): Output "dummy_target::" prefix.
9966         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9967         method.
9968         (tdefault_names, debug_names): Delete.
9969         (return_types, tdefaults, styles, argtypes_array): New.
9970         (top level): All methods are delegators.
9971         (print_class): New.
9972         (top level): Print dummy_target and debug_target classes.
9973         * target-delegates.c: Regenerate.
9974         * target-debug.h (target_debug_print_enum_info_proc_what)
9975         (target_debug_print_thread_control_capabilities)
9976         (target_debug_print_thread_info_p): New.
9977         * target.c (dummy_target): Delete.
9978         (the_dummy_target, the_debug_target): New.
9979         (target_stack): Now extern.
9980         (set_targetdebug): Push/unpush debug target.
9981         (default_child_has_all_memory, default_child_has_memory)
9982         (default_child_has_stack, default_child_has_registers)
9983         (default_child_has_execution): Remove target_ops parameter.
9984         (complete_target_initialization): Delete.
9985         (add_target_with_completer): No longer call
9986         complete_target_initialization.
9987         (target_supports_terminal_ours): Use regular delegation.
9988         (update_current_target): Delete.
9989         (push_target): No longer check magic number.  Don't call
9990         update_current_target.
9991         (unpush_target): Don't call update_current_target.
9992         (target_is_pushed): No longer check magic number.
9993         (target_require_runnable): Skip for all stratums over
9994         process_stratum.
9995         (target_ops::info_proc): New.
9996         (target_info_proc): Use find_target_at and
9997         find_default_run_target.
9998         (target_supports_disable_randomization): Use regular delegation.
9999         (target_get_osdata): Use find_target_at.
10000         (target_ops::open, target_ops::close, target_ops::can_attach)
10001         (target_ops::attach, target_ops::can_create_inferior)
10002         (target_ops::create_inferior, target_ops::can_run)
10003         (target_can_run): New.
10004         (default_fileio_target): Use regular delegation.
10005         (target_ops::fileio_open, target_ops::fileio_pwrite)
10006         (target_ops::fileio_pread, target_ops::fileio_fstat)
10007         (target_ops::fileio_close, target_ops::fileio_unlink)
10008         (target_ops::fileio_readlink): New.
10009         (target_fileio_open_1, target_fileio_unlink)
10010         (target_fileio_readlink): Always call the target method.  Handle
10011         FILEIO_ENOSYS.
10012         (return_zero, return_zero_has_execution): Delete.
10013         (init_dummy_target): Delete.
10014         (dummy_target::dummy_target, dummy_target::shortname)
10015         (dummy_target::longname, dummy_target::doc)
10016         (debug_target::debug_target, debug_target::shortname)
10017         (debug_target::longname, debug_target::doc): New.
10018         (target_supports_delete_record): Use regular delegation.
10019         (setup_target_debug): Delete.
10020         (maintenance_print_target_stack): Skip debug_stratum.
10021         (initialize_targets): Instantiate the_dummy_target and
10022         the_debug_target.
10023         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10024         use target_stack.
10025         (target_auxv_search, fprint_target_auxv): Adjust.
10026         (info_auxv_command): Adjust to use target_stack.
10027         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10028         * exceptions.c (print_flush): Handle a NULL target_stack.
10029         * regcache.c (target_ops_no_register): Refactor as class with
10030         virtual methods.
10031
10032         * exec.c (exec_target): New class.
10033         (exec_ops): Now an exec_target.
10034         (exec_open, exec_close_1, exec_get_section_table)
10035         (exec_xfer_partial, exec_files_info, exec_has_memory)
10036         (exec_make_note_section): Refactor as exec_target methods.
10037         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10038         Delete.
10039         (exec_target::find_memory_regions): New.
10040         (_initialize_exec): Don't call init_exec_ops.
10041         * gdbcore.h (exec_file_clear): Delete.
10042
10043         * corefile.c (core_target): Delete.
10044         (core_file_command): Adjust.
10045         * corelow.c (core_target): New class.
10046         (the_core_target): New.
10047         (core_close): Remove target_ops parameter.
10048         (core_close_cleanup): Adjust.
10049         (core_target::close): New.
10050         (core_open, core_detach, get_core_registers, core_files_info)
10051         (core_xfer_partial, core_thread_alive, core_read_description)
10052         (core_pid_to_str, core_thread_name, core_has_memory)
10053         (core_has_stack, core_has_registers, core_info_proc): Rework as
10054         core_target methods.
10055         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10056         (_initialize_corelow): Initialize the_core_target.
10057         * gdbcore.h (core_target): Delete.
10058         (the_core_target): New.
10059
10060         * ctf.c: (ctf_target): New class.
10061         (ctf_ops): Now a ctf_target.
10062         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10063         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10064         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10065         methods.
10066         (init_ctf_ops): Delete.
10067         (_initialize_ctf): Don't call it.
10068         * tracefile-tfile.c (tfile_target): New class.
10069         (tfile_ops): Now a tfile_target.
10070         (tfile_open, tfile_close, tfile_files_info)
10071         (tfile_get_tracepoint_status, tfile_trace_find)
10072         (tfile_fetch_registers, tfile_xfer_partial)
10073         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10074         Refactor as tfile_target methods.
10075         (tfile_xfer_partial_features): Remove target_ops parameter.
10076         (init_tfile_ops): Delete.
10077         (_initialize_tracefile_tfile): Don't call it.
10078         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10079         (tracefile_has_stack, tracefile_has_registers)
10080         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10081         tracefile_target methods.
10082         (init_tracefile_ops): Delete.
10083         (tracefile_target::tracefile_target): New.
10084         * tracefile.h: Include "target.h".
10085         (tracefile_target): New class.
10086         (init_tracefile_ops): Delete.
10087
10088         * spu-multiarch.c (spu_multiarch_target): New class.
10089         (spu_ops): Now a spu_multiarch_target.
10090         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10091         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10092         (spu_search_memory, spu_mourn_inferior): Refactor as
10093         spu_multiarch_target methods.
10094         (init_spu_ops): Delete.
10095         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10096         complete_target_initialization.
10097
10098         * ravenscar-thread.c (ravenscar_thread_target): New class.
10099         (ravenscar_ops): Now a ravenscar_thread_target.
10100         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10101         (ravenscar_thread_alive, ravenscar_pid_to_str)
10102         (ravenscar_fetch_registers, ravenscar_store_registers)
10103         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10104         (ravenscar_stopped_by_hw_breakpoint)
10105         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10106         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10107         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10108         methods.
10109         (init_ravenscar_thread_ops): Delete.
10110         (_initialize_ravenscar): Remove references to
10111         init_ravenscar_thread_ops and complete_target_initialization.
10112
10113         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10114         (bsd_uthread_target): New class.
10115         (bsd_uthread_ops): Now a bsd_uthread_target.
10116         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10117         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10118         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10119         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10120         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10121         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10122         (bsd_uthread_target): Delete function.
10123         (_initialize_bsd_uthread): Remove reference to
10124         complete_target_initialization.
10125
10126         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10127         (target_bfd): ... this new class.
10128         (target_bfd_xfer_partial, target_bfd_get_section_table)
10129         (target_bfd_close): Refactor as target_bfd methods.
10130         (target_bfd::~target_bfd): New.
10131         (target_bfd_reopen): Adjust.
10132         (target_bfd::close): New.
10133
10134         * record-btrace.c (record_btrace_target): New class.
10135         (record_btrace_ops): Now a record_btrace_target.
10136         (record_btrace_open, record_btrace_stop_recording)
10137         (record_btrace_disconnect, record_btrace_close)
10138         (record_btrace_async, record_btrace_info)
10139         (record_btrace_insn_history, record_btrace_insn_history_range)
10140         (record_btrace_insn_history_from, record_btrace_call_history)
10141         (record_btrace_call_history_range)
10142         (record_btrace_call_history_from, record_btrace_record_method)
10143         (record_btrace_is_replaying, record_btrace_will_replay)
10144         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10145         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10146         (record_btrace_store_registers, record_btrace_prepare_to_store)
10147         (record_btrace_to_get_unwinder)
10148         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10149         (record_btrace_commit_resume, record_btrace_wait)
10150         (record_btrace_stop, record_btrace_can_execute_reverse)
10151         (record_btrace_stopped_by_sw_breakpoint)
10152         (record_btrace_supports_stopped_by_sw_breakpoint)
10153         (record_btrace_stopped_by_hw_breakpoint)
10154         (record_btrace_supports_stopped_by_hw_breakpoint)
10155         (record_btrace_update_thread_list, record_btrace_thread_alive)
10156         (record_btrace_goto_begin, record_btrace_goto_end)
10157         (record_btrace_goto, record_btrace_stop_replaying_all)
10158         (record_btrace_execution_direction)
10159         (record_btrace_prepare_to_generate_core)
10160         (record_btrace_done_generating_core): Refactor as
10161         record_btrace_target methods.
10162         (init_record_btrace_ops): Delete.
10163         (_initialize_record_btrace): Remove reference to
10164         init_record_btrace_ops.
10165         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10166         the execution_direction global.
10167         (record_full_base_target, record_full_target)
10168         (record_full_core_target): New classes.
10169         (record_full_ops): Now a record_full_target.
10170         (record_full_core_ops): Now a record_full_core_target.
10171         (record_full_target::detach, record_full_target::disconnect)
10172         (record_full_core_target::disconnect)
10173         (record_full_target::mourn_inferior, record_full_target::kill):
10174         New.
10175         (record_full_open, record_full_close, record_full_async): Refactor
10176         as methods of the record_full_base_target class.
10177         (record_full_resume, record_full_commit_resume): Refactor
10178         as methods of the record_full_target class.
10179         (record_full_wait, record_full_stopped_by_watchpoint)
10180         (record_full_stopped_data_address)
10181         (record_full_stopped_by_sw_breakpoint)
10182         (record_full_supports_stopped_by_sw_breakpoint)
10183         (record_full_stopped_by_hw_breakpoint)
10184         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10185         methods of the record_full_base_target class.
10186         (record_full_store_registers, record_full_xfer_partial)
10187         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10188         Refactor as methods of the record_full_target class.
10189         (record_full_can_execute_reverse, record_full_get_bookmark)
10190         (record_full_goto_bookmark, record_full_execution_direction)
10191         (record_full_record_method, record_full_info, record_full_delete)
10192         (record_full_is_replaying, record_full_will_replay)
10193         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10194         (record_full_stop_replaying): Refactor as methods of the
10195         record_full_base_target class.
10196         (record_full_core_resume, record_full_core_kill)
10197         (record_full_core_fetch_registers)
10198         (record_full_core_prepare_to_store)
10199         (record_full_core_store_registers, record_full_core_xfer_partial)
10200         (record_full_core_insert_breakpoint)
10201         (record_full_core_remove_breakpoint)
10202         (record_full_core_has_execution): Refactor
10203         as methods of the record_full_core_target class.
10204         (record_full_base_target::supports_delete_record): New.
10205         (init_record_full_ops): Delete.
10206         (init_record_full_core_ops): Delete.
10207         (record_full_save): Refactor as method of the
10208         record_full_base_target class.
10209         (_initialize_record_full): Remove references to
10210         init_record_full_ops and init_record_full_core_ops.
10211
10212         * remote.c (remote_target, extended_remote_target): New classes.
10213         (remote_ops): Now a remote_target.
10214         (extended_remote_ops): Now an extended_remote_target.
10215         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10216         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10217         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10218         (remote_pass_signals, remote_set_syscall_catchpoint)
10219         (remote_program_signals, )
10220         (remote_thread_always_alive): Remove target_ops parameter.
10221         (remote_thread_alive, remote_thread_name)
10222         (remote_update_thread_list, remote_threads_extra_info)
10223         (remote_static_tracepoint_marker_at)
10224         (remote_static_tracepoint_markers_by_strid)
10225         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10226         (remote_open): Refactor as methods of remote_target.
10227         (extended_remote_open, extended_remote_detach)
10228         (extended_remote_attach, extended_remote_post_attach):
10229         (extended_remote_supports_disable_randomization)
10230         (extended_remote_create_inferior): : Refactor as method of
10231         extended_remote_target.
10232         (remote_set_permissions, remote_open_1, remote_detach)
10233         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10234         (remote_resume, remote_commit_resume, remote_stop)
10235         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10236         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10237         (remote_prepare_to_store, remote_store_registers)
10238         (remote_flash_erase, remote_flash_done, remote_files_info)
10239         (remote_kill, remote_mourn, remote_insert_breakpoint)
10240         (remote_remove_breakpoint, remote_insert_watchpoint)
10241         (remote_watchpoint_addr_within_range)
10242         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10243         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10244         (remote_supports_stopped_by_sw_breakpoint)
10245         (remote_stopped_by_hw_breakpoint)
10246         (remote_supports_stopped_by_hw_breakpoint)
10247         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10248         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10249         (remote_verify_memory): Refactor as methods of remote_target.
10250         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10251         parameter.
10252         (remote_xfer_partial, remote_get_memory_xfer_limit)
10253         (remote_search_memory, remote_rcmd, remote_memory_map)
10254         (remote_pid_to_str, remote_get_thread_local_address)
10255         (remote_get_tib_address, remote_read_description): Refactor as
10256         methods of remote_target.
10257         (remote_target::fileio_open, remote_target::fileio_pwrite)
10258         (remote_target::fileio_pread, remote_target::fileio_close): New.
10259         (remote_hostio_readlink, remote_hostio_fstat)
10260         (remote_filesystem_is_local, remote_can_execute_reverse)
10261         (remote_supports_non_stop, remote_supports_disable_randomization)
10262         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10263         (remote_supports_enable_disable_tracepoint)
10264         (remote_supports_string_tracing)
10265         (remote_can_run_breakpoint_commands, remote_trace_init)
10266         (remote_download_tracepoint, remote_can_download_tracepoint)
10267         (remote_download_trace_state_variable, remote_enable_tracepoint)
10268         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10269         (remote_trace_start, remote_get_trace_status)
10270         (remote_get_tracepoint_status, remote_trace_stop)
10271         (remote_trace_find, remote_get_trace_state_variable_value)
10272         (remote_save_trace_data, remote_get_raw_trace_data)
10273         (remote_set_disconnected_tracing, remote_core_of_thread)
10274         (remote_set_circular_trace_buffer, remote_traceframe_info)
10275         (remote_get_min_fast_tracepoint_insn_len)
10276         (remote_set_trace_buffer_size, remote_set_trace_notes)
10277         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10278         (remote_disable_btrace, remote_teardown_btrace)
10279         (remote_read_btrace, remote_btrace_conf)
10280         (remote_augmented_libraries_svr4_read, remote_load)
10281         (remote_pid_to_exec_file, remote_can_do_single_step)
10282         (remote_execution_direction, remote_thread_handle_to_thread_info):
10283         Refactor as methods of remote_target.
10284         (init_remote_ops, init_extended_remote_ops): Delete.
10285         (remote_can_async_p, remote_is_async_p, remote_async)
10286         (remote_thread_events, remote_upload_tracepoints)
10287         (remote_upload_trace_state_variables): Refactor as methods of
10288         remote_target.
10289         (_initialize_remote): Remove references to init_remote_ops and
10290         init_extended_remote_ops.
10291
10292         * remote-sim.c (gdbsim_target): New class.
10293         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10294         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10295         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10296         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10297         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10298         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10299         Refactor as methods of gdbsim_target.
10300         (gdbsim_ops): Now a gdbsim_target.
10301         (init_gdbsim_ops): Delete.
10302         (gdbsim_cntrl_c): Adjust.
10303         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10304
10305         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10306         (the_amd64_linux_nat_target): New.
10307         (amd64_linux_fetch_inferior_registers)
10308         (amd64_linux_store_inferior_registers): Refactor as methods of
10309         amd64_linux_nat_target.
10310         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10311         * i386-linux-nat.c: Don't include "linux-nat.h".
10312         (i386_linux_nat_target): New class.
10313         (the_i386_linux_nat_target): New.
10314         (i386_linux_fetch_inferior_registers)
10315         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10316         as methods of i386_linux_nat_target.
10317         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10318         * inf-child.c (inf_child_ops): Delete.
10319         (inf_child_fetch_inferior_registers)
10320         (inf_child_store_inferior_registers): Delete.
10321         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10322         methods of inf_child_target.
10323         (inf_child_target::supports_terminal_ours)
10324         (inf_child_target::terminal_init)
10325         (inf_child_target::terminal_inferior)
10326         (inf_child_target::terminal_ours_for_output)
10327         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10328         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10329         New.
10330         (inf_child_open, inf_child_disconnect, inf_child_close)
10331         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10332         (inf_child_post_startup_inferior, inf_child_can_run)
10333         (inf_child_pid_to_exec_file): Refactor as methods of
10334         inf_child_target.
10335         (inf_child_follow_fork): Delete.
10336         (inf_child_target::can_create_inferior)
10337         (inf_child_target::can_attach): New.
10338         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10339         (inf_child_target::has_stack, inf_child_target::has_registers)
10340         (inf_child_target::has_execution): New.
10341         (inf_child_fileio_open, inf_child_fileio_pwrite)
10342         (inf_child_fileio_pread, inf_child_fileio_fstat)
10343         (inf_child_fileio_close, inf_child_fileio_unlink)
10344         (inf_child_fileio_readlink, inf_child_use_agent)
10345         (inf_child_can_use_agent): Refactor as methods of
10346         inf_child_target.
10347         (return_zero, inf_child_target): Delete.
10348         (inf_child_target::inf_child_target): New.
10349         * inf-child.h: Include "target.h".
10350         (inf_child_target): Delete function prototype.
10351         (inf_child_target): New class.
10352         (inf_child_open_target, inf_child_mourn_inferior)
10353         (inf_child_maybe_unpush_target): Delete.
10354         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10355         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10356         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10357         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10358         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10359         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10360         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10361         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10362         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10363         methods of inf_ptrace_target.
10364         (inf_ptrace_target): Delete function.
10365         * inf-ptrace.h: Include "inf-child.h".
10366         (inf_ptrace_target): Delete function declaration.
10367         (inf_ptrace_target): New class.
10368         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10369         * linux-nat.c (linux_target): New.
10370         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10371         (linux_nat_target::~linux_nat_target): New.
10372         (linux_child_post_attach, linux_child_post_startup_inferior)
10373         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10374         (linux_child_remove_fork_catchpoint)
10375         (linux_child_insert_vfork_catchpoint)
10376         (linux_child_remove_vfork_catchpoint)
10377         (linux_child_insert_exec_catchpoint)
10378         (linux_child_remove_exec_catchpoint)
10379         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10380         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10381         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10382         (linux_nat_stopped_data_address)
10383         (linux_nat_stopped_by_sw_breakpoint)
10384         (linux_nat_supports_stopped_by_sw_breakpoint)
10385         (linux_nat_stopped_by_hw_breakpoint)
10386         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10387         (linux_nat_kill, linux_nat_mourn_inferior)
10388         (linux_nat_xfer_partial, linux_nat_thread_alive)
10389         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10390         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10391         (linux_child_static_tracepoint_markers_by_strid)
10392         (linux_nat_is_async_p, linux_nat_can_async_p)
10393         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10394         (linux_nat_supports_multi_process)
10395         (linux_nat_supports_disable_randomization, linux_nat_async)
10396         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10397         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10398         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10399         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10400         methods of linux_nat_target.
10401         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10402         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10403         parameter.
10404         (check_stopped_by_watchpoint): Adjust.
10405         (linux_xfer_partial): Delete.
10406         (linux_target_install_ops, linux_target, linux_nat_add_target):
10407         Delete.
10408         (linux_nat_target::linux_nat_target): New.
10409         * linux-nat.h: Include "inf-ptrace.h".
10410         (linux_nat_target): New.
10411         (linux_target, linux_target_install_ops, linux_nat_add_target):
10412         Delete function declarations.
10413         (linux_target): Declare global.
10414         * linux-thread-db.c (thread_db_target): New.
10415         (thread_db_target::thread_db_target): New.
10416         (thread_db_ops): Delete.
10417         (the_thread_db_target): New.
10418         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10419         (thread_db_update_thread_list, thread_db_pid_to_str)
10420         (thread_db_extra_thread_info)
10421         (thread_db_thread_handle_to_thread_info)
10422         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10423         (thread_db_resume): Refactor as methods of thread_db_target.
10424         (init_thread_db_ops): Delete.
10425         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10426         * x86-linux-nat.c: Don't include "linux-nat.h".
10427         (super_post_startup_inferior): Delete.
10428         (x86_linux_nat_target::~x86_linux_nat_target): New.
10429         (x86_linux_child_post_startup_inferior)
10430         (x86_linux_read_description, x86_linux_enable_btrace)
10431         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10432         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10433         methods of x86_linux_nat_target.
10434         (x86_linux_create_target): Delete.  Bits folded ...
10435         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10436         pointer.
10437         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10438         (x86_linux_nat_target): New class.
10439         (x86_linux_create_target): Delete.
10440         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10441         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10442         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10443         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10444         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10445         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10446         make extern.
10447         (x86_use_watchpoints): Delete.
10448         * x86-nat.h: Include "breakpoint.h" and "target.h".
10449         (x86_use_watchpoints): Delete.
10450         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10451         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10452         (x86_insert_watchpoint, x86_remove_watchpoint)
10453         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10454         (x86_stopped_by_hw_breakpoint): New declarations.
10455         (x86_nat_target): New template class.
10456
10457         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10458         (the_ppc_linux_nat_target): New.
10459         (ppc_linux_fetch_inferior_registers)
10460         (ppc_linux_can_use_hw_breakpoint)
10461         (ppc_linux_region_ok_for_hw_watchpoint)
10462         (ppc_linux_ranged_break_num_registers)
10463         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10464         (ppc_linux_insert_mask_watchpoint)
10465         (ppc_linux_remove_mask_watchpoint)
10466         (ppc_linux_can_accel_watchpoint_condition)
10467         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10468         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10469         (ppc_linux_watchpoint_addr_within_range)
10470         (ppc_linux_masked_watch_num_registers)
10471         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10472         (ppc_linux_read_description): Refactor as methods of
10473         ppc_linux_nat_target.
10474         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10475
10476         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10477         (procfs_target): New class.
10478         (the_procfs_target): New.
10479         (procfs_target): Delete function.
10480         (procfs_auxv_parse, procfs_attach, procfs_detach)
10481         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10482         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10483         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10484         (procfs_create_inferior, procfs_update_thread_list)
10485         (procfs_thread_alive, procfs_pid_to_str)
10486         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10487         (procfs_stopped_data_address, procfs_insert_watchpoint)
10488         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10489         (proc_find_memory_regions, procfs_info_proc)
10490         (procfs_make_note_section): Refactor as methods of procfs_target.
10491         (_initialize_procfs): Adjust.
10492         * sol-thread.c (sol_thread_target): New class.
10493         (sol_thread_ops): Now a sol_thread_target.
10494         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10495         (sol_thread_fetch_registers, sol_thread_store_registers)
10496         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10497         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10498         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10499         (init_sol_thread_ops): Delete.
10500         (_initialize_sol_thread): Adjust.  Remove references to
10501         init_sol_thread_ops and complete_target_initialization.
10502
10503         * windows-nat.c (windows_nat_target): New class.
10504         (windows_fetch_inferior_registers)
10505         (windows_store_inferior_registers, windows_resume, windows_wait)
10506         (windows_attach, windows_detach, windows_pid_to_exec_file)
10507         (windows_files_info, windows_create_inferior)
10508         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10509         (windows_close, windows_pid_to_str, windows_xfer_partial)
10510         (windows_get_tib_address, windows_get_ada_task_ptid)
10511         (windows_thread_name, windows_thread_alive): Refactor as
10512         windows_nat_target methods.
10513         (do_initial_windows_stuff): Adjust.
10514         (windows_target): Delete function.
10515         (_initialize_windows_nat): Adjust.
10516
10517         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10518         (darwin_mourn_inferior, darwin_kill_inferior)
10519         (darwin_create_inferior, darwin_attach, darwin_detach)
10520         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10521         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10522         (darwin_supports_multi_process): Refactor as darwin_nat_target
10523         methods.
10524         (darwin_resume_to, darwin_files_info): Delete.
10525         (_initialize_darwin_inferior): Rename to ...
10526         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10527         * darwin-nat.h: Include "inf-child.h".
10528         (darwin_nat_target): New class.
10529         (darwin_complete_target): Delete.
10530         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10531         (darwin_target): New.
10532         (i386_darwin_fetch_inferior_registers)
10533         (i386_darwin_store_inferior_registers): Refactor as methods of
10534         darwin_nat_target.
10535         (darwin_complete_target): Delete, with ...
10536         (_initialize_i386_darwin_nat): ... bits factored out here.
10537
10538         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10539         (the_alpha_linux_nat_target): New.
10540         (alpha_linux_register_u_offset): Refactor as
10541         alpha_linux_nat_target method.
10542         (_initialize_alpha_linux_nat): Adjust.
10543         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10544         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10545         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10546         methods of linux_nat_trad_target.
10547         (linux_trad_target): Delete.
10548         * linux-nat-trad.h (linux_trad_target): Delete function.
10549         (linux_nat_trad_target): New class.
10550         * mips-linux-nat.c (mips_linux_nat_target): New class.
10551         (super_fetch_registers, super_store_registers, super_close):
10552         Delete.
10553         (the_mips_linux_nat_target): New.
10554         (mips64_linux_regsets_fetch_registers)
10555         (mips64_linux_regsets_store_registers)
10556         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10557         (mips_linux_register_u_offset, mips_linux_read_description)
10558         (mips_linux_can_use_hw_breakpoint)
10559         (mips_linux_stopped_by_watchpoint)
10560         (mips_linux_stopped_data_address)
10561         (mips_linux_region_ok_for_hw_watchpoint)
10562         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10563         (mips_linux_close): Refactor as methods of mips_linux_nat.
10564         (_initialize_mips_linux_nat): Adjust to C++ification.
10565
10566         * aix-thread.c (aix_thread_target): New class.
10567         (aix_thread_ops): Now an aix_thread_target.
10568         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10569         (aix_thread_fetch_registers, aix_thread_store_registers)
10570         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10571         (aix_thread_thread_alive, aix_thread_pid_to_str)
10572         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10573         Refactor as methods of aix_thread_target.
10574         (init_aix_thread_ops): Delete.
10575         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10576         and complete_target_initialization.
10577         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10578         (rs6000_nat_target): New class.
10579         (the_rs6000_nat_target): New.
10580         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10581         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10582         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10583         (super_create_inferior): Delete.
10584         (_initialize_rs6000_nat): Adjust to C++ification.
10585
10586         * arm-linux-nat.c (arm_linux_nat_target): New class.
10587         (the_arm_linux_nat_target): New.
10588         (arm_linux_fetch_inferior_registers)
10589         (arm_linux_store_inferior_registers, arm_linux_read_description)
10590         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10591         (arm_linux_remove_hw_breakpoint)
10592         (arm_linux_region_ok_for_hw_watchpoint)
10593         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10594         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10595         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10596         arm_linux_nat_target.
10597         (_initialize_arm_linux_nat): Adjust to C++ification.
10598
10599         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10600         (the_aarch64_linux_nat_target): New.
10601         (aarch64_linux_fetch_inferior_registers)
10602         (aarch64_linux_store_inferior_registers)
10603         (aarch64_linux_child_post_startup_inferior)
10604         (aarch64_linux_read_description)
10605         (aarch64_linux_can_use_hw_breakpoint)
10606         (aarch64_linux_insert_hw_breakpoint)
10607         (aarch64_linux_remove_hw_breakpoint)
10608         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10609         (aarch64_linux_region_ok_for_hw_watchpoint)
10610         (aarch64_linux_stopped_data_address)
10611         (aarch64_linux_stopped_by_watchpoint)
10612         (aarch64_linux_watchpoint_addr_within_range)
10613         (aarch64_linux_can_do_single_step): Refactor as methods of
10614         aarch64_linux_nat_target.
10615         (super_post_startup_inferior): Delete.
10616         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10617
10618         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10619         (the_hppa_linux_nat_target): New.
10620         (hppa_linux_fetch_inferior_registers)
10621         (hppa_linux_store_inferior_registers): Refactor as methods of
10622         hppa_linux_nat_target.
10623         (_initialize_hppa_linux_nat): Adjust to C++ification.
10624
10625         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10626         (the_ia64_linux_nat_target): New.
10627         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10628         (ia64_linux_stopped_data_address)
10629         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10630         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10631         ia64_linux_nat_target methods.
10632         (super_xfer_partial): Delete.
10633         (_initialize_ia64_linux_nat): Adjust to C++ification.
10634
10635         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10636         (the_m32r_linux_nat_target): New.
10637         (m32r_linux_fetch_inferior_registers)
10638         (m32r_linux_store_inferior_registers): Refactor as
10639         m32r_linux_nat_target methods.
10640         (_initialize_m32r_linux_nat): Adjust to C++ification.
10641
10642         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10643         (the_m68k_linux_nat_target): New.
10644         (m68k_linux_fetch_inferior_registers)
10645         (m68k_linux_store_inferior_registers): Refactor as
10646         m68k_linux_nat_target methods.
10647         (_initialize_m68k_linux_nat): Adjust to C++ification.
10648
10649         * s390-linux-nat.c (s390_linux_nat_target): New class.
10650         (the_s390_linux_nat_target): New.
10651         (s390_linux_fetch_inferior_registers)
10652         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10653         (s390_insert_watchpoint, s390_remove_watchpoint)
10654         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10655         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10656         (s390_auxv_parse, s390_read_description): Refactor as methods of
10657         s390_linux_nat_target.
10658         (_initialize_s390_nat): Adjust to C++ification.
10659
10660         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10661         (the_sparc_linux_nat_target): New.
10662         (_initialize_sparc_linux_nat): Adjust to C++ification.
10663         * sparc-nat.c (sparc_fetch_inferior_registers)
10664         (sparc_store_inferior_registers): Remove target_ops parameter.
10665         * sparc-nat.h (sparc_fetch_inferior_registers)
10666         (sparc_store_inferior_registers): Remove target_ops parameter.
10667         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10668         (the_sparc64_linux_nat_target): New.
10669         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10670
10671         * spu-linux-nat.c (spu_linux_nat_target): New class.
10672         (the_spu_linux_nat_target): New.
10673         (spu_child_post_startup_inferior, spu_child_post_attach)
10674         (spu_child_wait, spu_fetch_inferior_registers)
10675         (spu_store_inferior_registers, spu_xfer_partial)
10676         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10677         methods.
10678         (_initialize_spu_nat): Adjust to C++ification.
10679
10680         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10681         (the_tilegx_linux_nat_target): New.
10682         (fetch_inferior_registers, store_inferior_registers):
10683         Refactor as methods.
10684         (_initialize_tile_linux_nat): Adjust to C++ification.
10685
10686         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10687         (the_xtensa_linux_nat_target): New.
10688         (xtensa_linux_fetch_inferior_registers)
10689         (xtensa_linux_store_inferior_registers): Refactor as
10690         xtensa_linux_nat_target methods.
10691         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10692
10693         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10694         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10695         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10696         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10697         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10698         (fbsd_stopped_by_sw_breakpoint)
10699         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10700         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10701         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10702         (fbsd_post_startup_inferior, fbsd_post_attach)
10703         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10704         (fbsd_set_syscall_catchpoint)
10705         (super_xfer_partial, super_resume, super_wait)
10706         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10707         (fbsd_handle_debug_trap): Remove target_ops parameter.
10708         (fbsd_nat_add_target): Delete.
10709         * fbsd-nat.h: Include "inf-ptrace.h".
10710         (fbsd_nat_add_target): Delete.
10711         (USE_SIGTRAP_SIGINFO): Define.
10712         (fbsd_nat_target): New class.
10713
10714         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10715         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10716         (amd64bsd_target): Delete.
10717         * amd64-bsd-nat.h: New file.
10718         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10719         "x86-bsd-nat.h".
10720         (amd64_fbsd_nat_target): New class.
10721         (the_amd64_fbsd_nat_target): New.
10722         (amd64fbsd_read_description): Refactor as method of
10723         amd64_fbsd_nat_target.
10724         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10725         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10726         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10727         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10728         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10729         (i386bsd_target): Delete.
10730         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10731         (i386bsd_fetch_inferior_registers)
10732         (i386bsd_store_inferior_registers): Declare.
10733         (i386_bsd_nat_target): New class.
10734         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10735         (the_i386_fbsd_nat_target): New.
10736         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10737         i386_fbsd_nat_target methods.
10738         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10739         (_initialize_i386fbsd_nat): Adjust to C++ification.
10740         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10741         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10742         (_initialize_x86_bsd_nat): Adjust to C++ification.
10743         * x86-bsd-nat.h: Include "x86-nat.h".
10744         (x86bsd_target): Delete declaration.
10745         (x86bsd_nat_target): New class.
10746
10747         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10748         (the_aarch64_fbsd_nat_target): New.
10749         (aarch64_fbsd_fetch_inferior_registers)
10750         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10751         aarch64_fbsd_nat_target.
10752         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10753         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10754         (the_alpha_bsd_nat_target): New.
10755         (alphabsd_fetch_inferior_registers)
10756         (alphabsd_store_inferior_registers): Refactor as
10757         alpha_bsd_nat_target methods.
10758         (_initialize_alphabsd_nat): Refactor as methods of
10759         alpha_bsd_nat_target.
10760         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10761         (the_amd64_nbsd_nat_target): New.
10762         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10763         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10764         (the_amd64_obsd_nat_target): New.
10765         (_initialize_amd64obsd_nat): Adjust to C++ification.
10766         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10767         (the_arm_fbsd_nat_target): New.
10768         (arm_fbsd_fetch_inferior_registers)
10769         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10770         (_initialize_arm_fbsd_nat): Refactor as methods of
10771         arm_fbsd_nat_target.
10772         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10773         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10774         (the_arm_netbsd_nat_target): New.
10775         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10776         arm_netbsd_nat_target.
10777         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10778         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10779         (the_hppa_nbsd_nat_target): New.
10780         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10781         hppa_nbsd_nat_target methods.
10782         (_initialize_hppanbsd_nat): Adjust to C++ification.
10783         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10784         (the_hppa_obsd_nat_target): New.
10785         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10786         methods of hppa_obsd_nat_target.
10787         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10788         add_target.
10789         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10790         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10791         add_target.
10792         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10793         (_initialize_i386obsd_nat): Use add_target.
10794         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10795         (the_m68k_bsd_nat_target): New.
10796         (m68kbsd_fetch_inferior_registers)
10797         (m68kbsd_store_inferior_registers): Refactor as methods of
10798         m68k_bsd_nat_target.
10799         (_initialize_m68kbsd_nat): Adjust to C++ification.
10800         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10801         (the_mips_fbsd_nat_target): New.
10802         (mips_fbsd_fetch_inferior_registers)
10803         (mips_fbsd_store_inferior_registers): Refactor as methods of
10804         mips_fbsd_nat_target.
10805         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10806         add_target.
10807         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10808         (the_mips_nbsd_nat_target): New.
10809         (mipsnbsd_fetch_inferior_registers)
10810         (mipsnbsd_store_inferior_registers): Refactor as methods of
10811         mips_nbsd_nat_target.
10812         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10813         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10814         (the_mips64_obsd_nat_target): New.
10815         (mips64obsd_fetch_inferior_registers)
10816         (mips64obsd_store_inferior_registers): Refactor as methods of
10817         mips64_obsd_nat_target.
10818         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10819         add_target.
10820         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10821         nbsd_nat_target.
10822         * nbsd-nat.h: Include "inf-ptrace.h".
10823         (nbsd_nat_target): New class.
10824         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10825         (obsd_wait): Refactor as methods of obsd_nat_target.
10826         (obsd_add_target): Delete.
10827         * obsd-nat.h: Include "inf-ptrace.h".
10828         (obsd_nat_target): New class.
10829         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10830         (the_ppc_fbsd_nat_target): New.
10831         (ppcfbsd_fetch_inferior_registers)
10832         (ppcfbsd_store_inferior_registers): Refactor as methods of
10833         ppc_fbsd_nat_target.
10834         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10835         add_target.
10836         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10837         (the_ppc_nbsd_nat_target): New.
10838         (ppcnbsd_fetch_inferior_registers)
10839         (ppcnbsd_store_inferior_registers): Refactor as methods of
10840         ppc_nbsd_nat_target.
10841         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10842         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10843         (the_ppc_obsd_nat_target): New.
10844         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10845         methods of ppc_obsd_nat_target.
10846         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10847         add_target.
10848         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10849         (the_sh_nbsd_nat_target): New.
10850         (shnbsd_fetch_inferior_registers)
10851         (shnbsd_store_inferior_registers): Refactor as methods of
10852         sh_nbsd_nat_target.
10853         (_initialize_shnbsd_nat): Adjust to C++ification.
10854         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10855         (inf_ptrace_xfer_partial): Delete.
10856         (sparc_xfer_partial, sparc_target): Delete.
10857         * sparc-nat.h (sparc_fetch_inferior_registers)
10858         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10859         (sparc_target): Delete function declaration.
10860         (sparc_target): New template class.
10861         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10862         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10863         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10864         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10865         add_target.
10866         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10867         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10868         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10869         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10870         add_target.
10871         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10872         (the_vax_bsd_nat_target): New.
10873         (vaxbsd_fetch_inferior_registers)
10874         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10875         methods.
10876         (_initialize_vaxbsd_nat): Adjust to C++ification.
10877
10878         * bsd-kvm.c (bsd_kvm_target): New class.
10879         (bsd_kvm_ops): Now a bsd_kvm_target.
10880         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10881         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10882         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10883         bsd_kvm_target.
10884         (bsd_kvm_return_one): Delete.
10885         (bsd_kvm_add_target): Adjust to C++ification.
10886
10887         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10888         (nto_procfs_target_procfs): New classes.
10889         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10890         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10891         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10892         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10893         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10894         (procfs_remove_hw_breakpoint, procfs_resume)
10895         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10896         (procfs_kill_inferior, procfs_store_registers)
10897         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10898         as methods of nto_procfs_target.
10899         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10900         (nto_native_ops): Delete.
10901         (procfs_open, procfs_native_open): Delete.
10902         (nto_native_ops): Now an nto_procfs_target_native.
10903         (init_procfs_targets): Adjust to C++ification.
10904         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10905         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10906         Refactor as methods of nto_procfs_target.
10907
10908         * go32-nat.c (go32_nat_target): New class.
10909         (the_go32_nat_target): New.
10910         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10911         (go32_store_registers, go32_xfer_partial, go32_files_info)
10912         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10913         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10914         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10915         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10916         (go32_target): Delete.
10917         (_initialize_go32_nat): Adjust to C++ification.
10918
10919         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10920         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10921         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10922         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10923         gnu_nat_target.
10924         (gnu_target): Delete.
10925         * gnu-nat.h (gnu_target): Delete.
10926         (gnu_nat_target): New class.
10927         * i386-gnu-nat.c (gnu_base_target): New.
10928         (i386_gnu_nat_target): New class.
10929         (the_i386_gnu_nat_target): New.
10930         (_initialize_i386gnu_nat): Adjust to C++ification.
10931
10932 2018-05-02  Pedro Alves  <palves@redhat.com>
10933
10934         * bfd-target.c (target_bfd_xclose): Rename to ...
10935         (target_bfd_close): ... this.
10936         (target_bfd_reopen): Adjust.
10937         * target.c (target_close): Remove references to to_xclose.
10938         * target.h (target_ops::to_xclose): Delete.
10939         (target_ops::to_close): Update comments.
10940
10941 2018-05-02  Pedro Alves  <palves@redhat.com>
10942
10943         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10944         "linux-nat.h".
10945         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10946         * inf-ptrace.c (inf_ptrace_register_u_offset)
10947         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10948         (inf_ptrace_store_register, inf_ptrace_store_registers)
10949         (inf_ptrace_trad_target): Move to ...
10950         * linux-nat-trad.c: ... this new file.
10951         * linux-nat-trad.h: New file.
10952         * linux-nat.c (linux_target_install_ops): Make extern.
10953         (linux_trad_target): Delete.
10954         * linux-nat.h (linux_trad_target): Delete declaration.
10955         (linux_target_install_ops): Declare.
10956         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10957         "linux-nat.h".
10958
10959 2018-05-02  Pedro Alves  <palves@redhat.com>
10960
10961         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10962         procfs_target/add_target here.
10963         * procfs.c (procfs_target): Make static.
10964         (_initialize_procfs): Call add_target here.
10965         * procfs.h (struct target_ops): Remove forward declaration.
10966         (procfs_target): Remove declaration.
10967         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10968
10969 2018-05-02  Pedro Alves  <palves@redhat.com>
10970
10971         * procfs.c (procfs_stopped_by_watchpoint)
10972         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10973         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10974         Forward declare.
10975         (procfs_use_watchpoints): Delete, move contents...
10976         (procfs_target): ... here.
10977         * procfs.h (procfs_use_watchpoints): Delete declaration.
10978         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10979         procfs_use_watchpoints.
10980         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10981         procfs_use_watchpoints.
10982
10983 2018-05-02  Tom Tromey  <tom@tromey.com>
10984
10985         PR python/20084:
10986         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10987         and var_zuinteger_unlimited.
10988         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10989         and PARAM_ZUINTEGER_UNLIMITED.
10990         (set_parameter_value): Handle var_zuinteger and
10991         var_zuinteger_unlimited.
10992         (add_setshow_generic): Likewise.
10993         (parmpy_init): Likewise.
10994
10995 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10996
10997         PR rust/23124
10998         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10999         pointer is not null before dereferencing it.
11000
11001 2018-04-30  Tom Tromey  <tom@tromey.com>
11002
11003         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11004         is_mi_like_p.
11005
11006 2018-04-30  Tom Tromey  <tom@tromey.com>
11007
11008         * breakpoint.c (mention): Remove use of is_mi_like_p.
11009         (print_mention_ranged_breakpoint): Likewise.
11010         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11011         of is_mi_like_p.
11012
11013 2018-04-30  Tom Tromey  <tom@tromey.com>
11014
11015         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11016
11017 2018-04-30  Tom Tromey  <tom@tromey.com>
11018
11019         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11020         (info_spu_event_command): Remove some uses of is_mi_like_p.
11021
11022 2018-04-30  Tom Tromey  <tom@tromey.com>
11023
11024         * python/py-framefilter.c (py_print_single_arg)
11025         (enumerate_locals, py_print_args, py_print_frame): Remove some
11026         uses of is_mi_like_p.
11027
11028 2018-04-30  Tom Tromey  <tom@tromey.com>
11029
11030         * ui-out.c: Update.
11031         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11032         * ui-out.h (ui_out::is_mi_like_p): Now const.
11033         (ui_out::do_is_mi_like_p): Now const.
11034         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11035
11036 2018-04-30  Tom Tromey  <tom@tromey.com>
11037
11038         * varobj.c (varobj_set_visualizer): Use new_reference.
11039         * python/python.c (gdbpy_decode_line): Use new_reference.
11040         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11041         new_reference.
11042
11043 2018-04-30  Tom Tromey  <tom@tromey.com>
11044
11045         * varobj.c (install_new_value): Use new_reference.
11046         * value.h (value_incref): Return void.  Swap intro comment with
11047         value_decref.
11048         * value.c (set_value_parent): Use new_reference.
11049         (value_incref): Return void.  Update intro comment.
11050         (release_value): Use new_reference.
11051         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11052
11053 2018-04-30  Tom Tromey  <tom@tromey.com>
11054
11055         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11056         * gdb_bfd.h (new_bfd_ref): Remove.
11057         (gdb_bfd_open): Update comment.
11058         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11059         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11060         (gdb_bfd_fdopenr): Use new_reference.
11061         * exec.c (exec_file_attach): Use new_reference.
11062
11063 2018-04-30  Tom Tromey  <tom@tromey.com>
11064
11065         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11066         method.
11067
11068 2018-04-30  Tom Tromey  <tom@tromey.com>
11069
11070         * jit.c (jit_read_code_entry): Use type_align.
11071         * i386-tdep.c (i386_gdbarch_init): Don't call
11072         set_gdbarch_long_long_align_bit.
11073         * gdbarch.sh: Remove long_long_align_bit.
11074         * gdbarch.c, gdbarch.h: Rebuild.
11075         * arc-tdep.c (arc_type_align): New function.
11076         (arc_gdbarch_init): Use arc_type_align.  Don't call
11077         set_gdbarch_long_long_align_bit.
11078
11079 2018-04-30  Tom Tromey  <tom@tromey.com>
11080
11081         * rust-lang.c (rust_type_alignment): Remove.
11082         (rust_composite_type): Use type_align.
11083
11084 2018-04-30  Tom Tromey  <tom@tromey.com>
11085
11086         * NEWS: Mention Type.align.
11087         * python/py-type.c (typy_get_alignof): New function.
11088         (type_object_getset): Add "alignof".
11089
11090 2018-04-30  Tom Tromey  <tom@tromey.com>
11091
11092         PR exp/17095:
11093         * NEWS: Update.
11094         * std-operator.def (UNOP_ALIGNOF): New operator.
11095         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11096         New.
11097         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11098         * c-lang.c (c_op_print_tab): Add alignof.
11099         * c-exp.y (ALIGNOF): New token.
11100         (exp): Add "ALIGNOF" production.
11101         (ident_tokens): Add _Alignof and alignof.
11102
11103 2018-04-30  Tom Tromey  <tom@tromey.com>
11104
11105         * i386-tdep.c (i386_type_align): New function.
11106         (i386_gdbarch_init): Update.
11107         * gdbarch.sh (type_align): New method.
11108         * gdbarch.c, gdbarch.h: Rebuild.
11109         * arch-utils.h (default_type_align): Declare.
11110         * arch-utils.c (default_type_align): New function.
11111         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11112         (struct type) <align_log2>: New field.
11113         <instance_flags>: Now a bitfield.
11114         (TYPE_RAW_ALIGN): New macro.
11115         (type_align, type_raw_align, set_type_align): Declare.
11116         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11117         functions.
11118         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11119         (get_alignment, maybe_set_alignment): New functions.
11120         (read_structure_type, read_enumeration_type, read_array_type)
11121         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11122         (read_subrange_type, read_base_type): Set type alignment.
11123
11124 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11125
11126         * dwarf2read.c (read_index_from_section): Use bool.
11127
11128 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11129
11130         PR gdb/22950
11131         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11132         with #ifdef.
11133
11134 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11135
11136         PR build/22873
11137         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11138         last step, and do it atomically.
11139
11140 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11141
11142         * compile/compile-c-types.c (convert_int, convert_float):
11143         Update for C FE v1.
11144
11145 2018-04-27  Tom Tromey  <tom@tromey.com>
11146
11147         PR rust/22545:
11148         * rust-lang.c (rust_inclusive_range_type_p): New function.
11149         (rust_range): Handle inclusive ranges.
11150         (rust_compute_range): Likewise.
11151         * rust-exp.y (struct rust_op) <inclusive>: New field.
11152         (DOTDOTEQ): New constant.
11153         (range_expr): Add "..=" productions.
11154         (operator_tokens): Add "..=" token.
11155         (ast_range): Add "inclusive" parameter.
11156         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11157         ranges.
11158         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11159         bounds values.
11160         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11161         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11162         Update comments.
11163         * expprint.c (print_subexp_standard): Handle new bounds values.
11164         (dump_subexp_body_standard): Likewise.
11165
11166 2018-04-27  Tom Tromey  <tom@tromey.com>
11167
11168         * configure: Rebuild.
11169         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11170         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11171         "OVERRIDE".
11172         (class symbol_needs_eval_context): Likewise.
11173         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11174         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11175         "virtual".
11176         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11177         "override".
11178         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11179         * aarch64-tdep.c (instruction_reader::read): Use "override".
11180         (instruction_reader_test::read): Likewise.
11181         * arm-tdep.c (instruction_reader::read): Use "override".
11182         (instruction_reader_thumb::read): Likewise.
11183
11184 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11185
11186         PR remote/9665
11187         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11188         instead of remote_send.
11189         (remote_send): Remove.
11190
11191 2018-04-26  Pedro Alves  <palves@redhat.com>
11192
11193         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11194         find_function_start_sal instead of find_pc_line.
11195
11196 2018-04-26  Pedro Alves  <palves@redhat.com>
11197
11198         * breakpoint.c (set_breakpoint_location_function): Handle
11199         mst_data_gnu_ifunc.
11200         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11201         * elfread.c (elf_symtab_read): Give data symbols with
11202         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11203         (elf_rel_plt_read): Update comment.
11204         * linespec.c (convert_linespec_to_sals): Handle
11205         mst_data_gnu_ifunc.
11206         (minsym_found): Handle mst_data_gnu_ifunc.
11207         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11208         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11209         * parse.c (find_minsym_type_and_address): Handle
11210         mst_data_gnu_ifunc.
11211         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11212         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11213         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11214         comment.
11215         <mst_data_gnu_ifunc>: New enumerator.
11216
11217 2018-04-26  Pedro Alves  <palves@redhat.com>
11218
11219         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11220         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11221         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11222         Handle it.
11223         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11224         (lookup_minimal_symbol_by_pc): Adjust.
11225         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11226         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11227         * minsyms.h (lookup_msym_prefer): New enum.
11228         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11229         parameter by a lookup_msym_prefer parameter.
11230
11231 2018-04-26  Pedro Alves  <palves@redhat.com>
11232
11233         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11234         ends in "@plt" instead of looking at the symbol's section.
11235
11236 2018-04-26  Pedro Alves  <palves@redhat.com>
11237
11238         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11239         all references.
11240         (find_pc_partial_function_gnu_ifunc): Rename to ...
11241         (find_pc_partial_function): ... this, and remove references to
11242         'is_gnu_ifunc_p'.
11243         (find_pc_partial_function): Delete old implementation.
11244         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11245
11246 2018-04-26  Pedro Alves  <palves@redhat.com>
11247
11248         * linespec.c (struct bound_minimal_symbol_search_key): New.
11249         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11250         skip first line if we found a GNU ifunc minimal symbol by name.
11251         (compare_msymbols): Change parameters to work with a destructured
11252         lhs minsym.
11253         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11254         functions.
11255
11256 2018-04-26  Pedro Alves  <palves@redhat.com>
11257
11258         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11259         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11260         address/name.
11261         (add_location_to_breakpoint): Store the minsym and the objfile in
11262         the breakpoint location.
11263         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11264         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11265         Record the minsym in the sal.
11266         * symtab.h (symtab_and_line) <msymbol>: New field.
11267
11268 2018-04-26  Pedro Alves  <palves@redhat.com>
11269
11270         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11271         unless we actually resolved the ifunc.
11272
11273 2018-04-26  Pedro Alves  <palves@redhat.com>
11274
11275         * c-exp.y (variable production): Prefer ifunc minsyms over
11276         regular function symbols.
11277         * symtab.c (find_gnu_ifunc): New function.
11278         * minsyms.h (lookup_msym_prefer): New enum.
11279         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11280         parameter by a lookup_msym_prefer parameter.
11281         * symtab.h (find_gnu_ifunc): New declaration.
11282
11283 2018-04-26  Pedro Alves  <palves@redhat.com>
11284
11285         * blockframe.c (find_gnu_ifunc_target_type): New function.
11286         (find_function_type): New.
11287         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11288         return a value with a memory address.
11289         (eval_call): For calls to GNU ifunc functions, try to find the
11290         type of the target function from the type that the resolver
11291         returns.
11292         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11293         symbols.
11294         * infcall.c (find_function_return_type): Delete.
11295         (find_function_addr): Add 'function_type' parameter.  For calls to
11296         GNU ifunc functions, try to find the type of the target function
11297         from the type that the resolver returns, and return it via
11298         FUNCTION_TYPE.
11299         (call_function_by_hand_dummy): Adjust to use the function type
11300         returned by find_function_addr.
11301         (find_function_addr): Add 'function_type' parameter and move
11302         description here.
11303         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11304         declarations.
11305
11306 2018-04-26  Pedro Alves  <palves@redhat.com>
11307
11308         * c-exp.y (variable production): Skip finding an alias for ifunc
11309         symbols.
11310
11311 2018-04-26  Pedro Alves  <palves@redhat.com>
11312
11313         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11314
11315 2018-04-25  Pedro Alves  <palves@redhat.com>
11316
11317         * infcmd.c (kill_command): Print the pid as string, not the whole
11318         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11319         message.
11320         * remote.c (remote_detach_1): Print the pid as string, not the
11321         whole thread's ptid.
11322
11323 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11324             Sergio Durigan Junior  <sergiodj@redhat.com>
11325             Pedro Alves  <palves@redhat.com>
11326
11327         * infcmd.c (kill_command): Print message when inferior has
11328         been killed.
11329         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11330         '1'.
11331         (add_inferior): Improve message printed when
11332         'print_inferior_events' is on.
11333         (exit_inferior): Remove message printed when
11334         'print_inferior_events' is on.
11335         (detach_inferior): Improve message printed when
11336         'print_inferior_events' is on.
11337         (initialize_inferiors): Use 'add_inferior_silent' to set
11338         'current_inferior_'.
11339         * inferior.h (print_inferior_events): Declare here as
11340         'extern'.
11341         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11342         '[Detaching...]' messages when 'print_inferior_events' is on.
11343         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11344         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11345         'Detaching after fork from child...', replace it by '... from
11346         parent...'.
11347         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11348         prefix/suffix when printing 'Detaching...' messages.  Print
11349         them when 'print_inferior_events' is on.
11350         * remote.c (remote_detach_1): Print message when detaching
11351         from inferior and '!is_fork_parent'.
11352
11353 2018-04-24  Tom Tromey  <tom@tromey.com>
11354
11355         * cli-out.h: Reindent.
11356
11357 2018-04-24  Tom Tromey  <tom@tromey.com>
11358
11359         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11360         (cli_ui_out::do_field_string): Use fputs_filtered.
11361         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11362
11363 2018-04-23  Tom Tromey  <tom@tromey.com>
11364
11365         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11366         gdb::unique_xmalloc_ptr.
11367
11368 2018-04-23  Tom Tromey  <tom@tromey.com>
11369
11370         * configure: Rebuild.
11371
11372 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11373
11374         PR gdb/23095
11375         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11376         prepare_for_testing.  Set normal_bp to r_debug_state if target
11377         is bsd.
11378
11379 2018-04-21  Pedro Alves  <palves@redhat.com>
11380             Rajendra SY  <rajendra.sy@gmail.com>
11381
11382         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11383         * remote.c (extended_remote_attach): In all-stop mode, mark the
11384         thread as executing.
11385
11386 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11387
11388         * thread.c (thread_apply_all_command): Fix comment.
11389         (thread_command): Fix comment.
11390
11391 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11392
11393         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11394         parameter.
11395         * features/aarch64-core.c (create_feature_aarch64_core):
11396         Regenerate.
11397         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11398         Likewise.
11399         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11400         Likewise.
11401         * features/i386/32bit-avx512.c
11402         (create_feature_i386_32bit_avx512): Likewise.
11403         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11404         Likewise.
11405         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11406         Likewise.
11407         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11408         Likewise.
11409         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11410         Likewise.
11411         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11412         Likewise.
11413         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11414         Likewise.
11415         * features/i386/64bit-avx512.c
11416         (create_feature_i386_64bit_avx512): Likewise.
11417         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11418         Likewise.
11419         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11420         Likewise.
11421         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11422         Likewise.
11423         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11424         Likewise.
11425         * features/i386/64bit-segments.c
11426         (create_feature_i386_64bit_segments): Likewise.
11427         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11428         Likewise.
11429         * features/i386/x32-core.c
11430         (create_feature_i386_x32_core): Likewise.
11431         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11432         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11433         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11434         * target-descriptions.c: In generated code, don't pass xml
11435         filename.
11436
11437 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11438
11439         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11440         (print_xml_feature::visit_post): Likewise.
11441         (print_xml_feature::visit): Likewise.
11442         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11443         (print_xml_feature): Add new class.
11444         * regformats/regdat.sh: Null xmltarget on feature targets.
11445         * target-descriptions.c (struct target_desc): Add xmltarget.
11446         (maintenance_check_tdesc_xml_convert): Add unittest function.
11447         (tdesc_get_features_xml): Add function to get xml.
11448         (maintenance_check_xml_descriptions): Test xml generation.
11449         * xml-tdesc.c (string_read_description_xml): Add function.
11450         * xml-tdesc.h (string_read_description_xml): Add declaration.
11451
11452 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11453
11454         * features/Makefile: Add feature marker to targets with new style
11455         target descriptions.
11456         * regformats/aarch64.dat: Regenerate.
11457         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11458         * regformats/i386/amd64-avx-linux.dat: Likewise.
11459         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11460         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11461         * regformats/i386/amd64-linux.dat: Likewise.
11462         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11463         * regformats/i386/amd64.dat: Likewise.
11464         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11465         * regformats/i386/i386-avx-linux.dat: Likewise.
11466         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11467         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11468         * regformats/i386/i386-linux.dat: Likewise.
11469         * regformats/i386/i386-mmx-linux.dat: Likewise.
11470         * regformats/i386/i386-mpx-linux.dat: Likewise.
11471         * regformats/i386/i386.dat: Likewise.
11472         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11473         * regformats/i386/x32-avx-linux.dat: Likewise.
11474         * regformats/i386/x32-linux.dat: Likewise.
11475         * regformats/tic6x-c62x-linux.dat: Likewise.
11476         * regformats/tic6x-c64x-linux.dat: Likewise.
11477         * regformats/tic6x-c64xp-linux.dat: Likewise.
11478         * regformats/regdat.sh: Parse feature marker.
11479
11480 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11481
11482         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11483         (tdesc_osabi_name): Likewise.
11484         * target-descriptions.c (tdesc_architecture_name): Add new
11485         function.
11486         (tdesc_osabi_name): Likewise.
11487
11488 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11489
11490         * common/tdesc.c (tdesc_predefined_type): Move to here.
11491         (tdesc_named_type): Likewise.
11492         (tdesc_create_vector): Likewise.
11493         (tdesc_create_struct): Likewise.
11494         (tdesc_set_struct_size): Likewise.
11495         (tdesc_create_union): Likewise.
11496         (tdesc_create_flags): Likewise.
11497         (tdesc_create_enum): Likewise.
11498         (tdesc_add_field): Likewise.
11499         (tdesc_add_typed_bitfield): Likewise.
11500         (tdesc_add_bitfield): Likewise.
11501         (tdesc_add_flag): Likewise.
11502         (tdesc_add_enum_value): Likewise.
11503         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11504         (struct tdesc_type_vector): Likewise.
11505         (struct tdesc_type_field): Likewise.
11506         (struct tdesc_type_with_fields): Likewise.
11507         (tdesc_create_enum): Add declaration.
11508         (tdesc_add_typed_bitfield): Likewise.
11509         (tdesc_add_enum_value): Likewise.
11510         * target-descriptions.c (tdesc_type_field): Move from here.
11511         (tdesc_type_builtin): Likewise.
11512         (tdesc_type_vector): Likewise.
11513         (tdesc_type_with_fields): Likewise.
11514         (tdesc_predefined_types): Likewise.
11515         (tdesc_named_type): Likewise.
11516         (tdesc_create_vector): Likewise.
11517         (tdesc_create_struct): Likewise.
11518         (tdesc_set_struct_size): Likewise.
11519         (tdesc_create_union): Likewise.
11520         (tdesc_create_flags): Likewise.
11521         (tdesc_create_enum): Likewise.
11522         (tdesc_add_field): Likewise.
11523         (tdesc_add_typed_bitfield): Likewise.
11524         (tdesc_add_bitfield): Likewise.
11525         (tdesc_add_flag): Likewise.
11526         (tdesc_add_enum_value): Likewise.
11527         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11528         (tdesc_add_typed_bitfield): Likewise.
11529         (tdesc_add_enum_value): Likewise.
11530
11531 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11532
11533         * common/tdesc.c (tdesc_feature::accept): Move to here.
11534         (tdesc_feature::operator==): Likewise.
11535         (tdesc_create_reg): Likewise.
11536         * common/tdesc.h (tdesc_type_kind): Likewise.
11537         (struct tdesc_type): Likewise.
11538         (struct tdesc_feature): Likewise.
11539         * regformats/regdat.sh: Create a feature.
11540         * target-descriptions.c (tdesc_type_kind): Move from here.
11541         (tdesc_type): Likewise.
11542         (tdesc_type_up): Likewise.
11543         (tdesc_feature): Likewise.
11544         (tdesc_create_reg): Likewise.
11545
11546 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11547
11548         * Makefile.in: Add arch/tdesc.c
11549         * common/tdesc.c: New file.
11550         * common/tdesc.h (tdesc_element_visitor): Move to here.
11551         (tdesc_element): Likewise.
11552         (tdesc_reg): Likewise.
11553         (tdesc_reg_up): Likewise.
11554         * regformats/regdef.h (reg): Add offset to constructors.
11555         * target-descriptions.c (tdesc_element_visitor): Move from here.
11556         (tdesc_element): Likewise.
11557         (tdesc_reg): Likewise.
11558         (tdesc_reg_up): Likewise.
11559
11560 2018-04-17  Tom Tromey  <tom@tromey.com>
11561
11562         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11563         discriminant field.
11564
11565 2018-04-17  Tom Tromey  <tom@tromey.com>
11566
11567         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11568
11569 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11570
11571         * symtab.c (print_symbol_info): Skip printing filename and line
11572         number when `last' is NULL.
11573         (symtab_symbol_info): Use empty string instead of NULL for first
11574         invocation of print_symbol_info.
11575         (rbreak_command): Pass NULL to `last' parameter of
11576         print_symbol_info.
11577
11578 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11579
11580         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11581         instead of nullptr.
11582
11583 2018-04-16  Pedro Alves  <palves@redhat.com>
11584
11585         * MAINTAINERS (sh): Remove.
11586         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11587         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11588         (ALLDEPFILES): Remove sh64-tdep.c.
11589         * NEWS: Mentions that support for SH-5/SH64 is removed.
11590         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11591         (sh*-*-openbsd*): Ditto.
11592         (sh64-*-elf*): Remove.
11593         (sh*): Remove.
11594         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11595         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11596         * sh-tdep.c: No longer include "sh64-tdep.h".
11597         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11598         * sh64-tdep.c, sh64-tdep.h: Remove files.
11599
11600 2018-04-16  Pedro Alves  <palves@redhat.com>
11601
11602         * MAINTAINERS: Remove m88k.
11603         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11604         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11605         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11606         * NEWS: Mention that support for m88k was removed.
11607         * configure.host (m88*-*-*): Remove support.
11608         * configure.nat (m88k-*-*): Remove support.
11609         * configure.tgt (m88*-*-openbsd*): Remove.
11610         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11611
11612 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11613
11614         * configure.tgt (x86_tobjs): New variable.
11615         (amd64_tobjs, i386_tobjs): Use it.
11616
11617 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11618
11619         * symtab.c (print_symbol_info): Precede the symbol definition by
11620         the line number when available.
11621         * NEWS: Advertise this enhancement.
11622
11623 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11624
11625         * NEWS (New options): announce set/show record btrace cpu.
11626         * btrace.c: Include record-btrace.h.
11627         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11628         the vendor is unknown.
11629         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11630         Maybe overwrite the btrace configuration's cpu.
11631         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11632         (btrace_fetch): Add cpu parameter.  Update callers.
11633         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11634         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11635         errata workarounds if the vendor is unknown.
11636         * python/py-record-btrace.c: Include record-btrace.h.
11637         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11638         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11639         * record-btrace.c (record_btrace_cpu_state_kind): New.
11640         (record_btrace_cpu): New.
11641         (set_record_btrace_cpu_cmdlist): New.
11642         (record_btrace_get_cpu): New.
11643         (require_btrace_thread, record_btrace_info)
11644         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11645         (cmd_set_record_btrace_cpu_none): New.
11646         (cmd_set_record_btrace_cpu_auto): New.
11647         (cmd_set_record_btrace_cpu): New.
11648         (cmd_show_record_btrace_cpu): New.
11649         (_initialize_record_btrace): Initialize set/show record btrace cpu
11650         commands.
11651         * record-btrace.h (record_btrace_get_cpu): New.
11652
11653 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11654
11655         * record.c (set_record_command): Fix typo in message.
11656
11657 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11658
11659         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11660
11661 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11662
11663         * infrun.c (process_event_stop_test): Call
11664         gdbarch_in_indirect_branch_thunk.
11665         * gdbarch.sh (in_indirect_branch_thunk): New.
11666         * gdbarch.c: Regenerated.
11667         * gdbarch.h: Regenerated.
11668         * x86-tdep.h: New.
11669         * x86-tdep.c: New.
11670         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11671         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11672         (ALLDEPFILES): Add x86-tdep.c.
11673         * arch-utils.h (default_in_indirect_branch_thunk): New.
11674         * arch-utils.c (default_in_indirect_branch_thunk): New.
11675         * i386-tdep: Include x86-tdep.h.
11676         (i386_in_indirect_branch_thunk): New.
11677         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11678         function.
11679         * amd64-tdep: Include x86-tdep.h.
11680         (amd64_in_indirect_branch_thunk): New.
11681         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11682
11683 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11684
11685         PR gdb/23053
11686         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11687         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11688         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11689         regression.
11690
11691 2018-04-12  Tom Tromey  <tom@tromey.com>
11692
11693         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11694         (rust_evaluate_subexp): Likewise.
11695
11696 2018-04-12  Pedro Alves  <palves@redhat.com>
11697
11698         * procfs.c (procfs_detach): Make forward declaration's prototype
11699         match definition's protototype.
11700         (proc_get_LDT_entry): Remove stale do_cleanups call.
11701
11702 2018-04-12  Pedro Alves  <palves@redhat.com>
11703
11704         * target.h (target_ops::to_has_exited): Delete.
11705         (target_has_exited): Delete.
11706         * target-delegates.c: Regenerate.
11707
11708 2018-04-11  Pedro Alves  <palves@redhat.com>
11709
11710         * target.c (fileio_fh_t::t): Add comment.
11711         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11712         (target_fileio_close): Handle a NULL target.
11713         (invalidate_fileio_fh): New.
11714         (target_close): Call it.
11715         * remote.c (remote_hostio_send_command): No longer check whether
11716         remote_desc is open.
11717
11718 2018-04-11  Pedro Alves  <palves@redhat.com>
11719
11720         * target.c (fileio_fh_t): Make it a named struct instead of a
11721         typedef.
11722         (fileio_fh_t::is_closed): New method.
11723         (DEF_VEC_O (fileio_fh_t)): Remove.
11724         (fileio_fhandles): Now a std::vector.
11725         (is_closed_fileio_fh): Delete.
11726         (acquire_fileio_fd): Adjust.  Rename parameters.
11727         (release_fileio_fd): Adjust.
11728         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11729         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11730         (target_fileio_close): Adjust.
11731
11732 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11733
11734         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11735         index.
11736
11737 2018-04-10  Pedro Alves  <palves@redhat.com>
11738
11739         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11740         (scoped_finish_thread_state): New class.
11741         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11742         cleanup.
11743         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11744         (fetch_inferior_event, normal_stop): Likewise.
11745         * thread.c (finish_thread_state_cleanup): Delete.
11746
11747 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11748             Pedro Alves  <palves@redhat.com>
11749
11750         * value.c: Include "selftest.h" and "common/array-view.h".
11751         (struct range) <operator ==>: New.
11752         (test_ranges_contain): New.
11753         (check_ranges_vector): New.
11754         (test_insert_into_bit_range_vector): New.
11755         (_initialize_values): Register selftests.
11756         * common/array-view.h (operator==, operator!=): New.
11757
11758 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11759
11760         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11761         an iterator.
11762         * inline-frame.c: Include <algorithm>.
11763         (struct inline_state): Add constructor.
11764         (inline_state_s): Remove.
11765         (DEF_VEC_O(inline_state_s)): Remove.
11766         (inline_states): Change type to std::vector.
11767         (find_inline_frame_state): Adjust to std::vector.
11768         (allocate_inline_frame_state): Remove.
11769         (clear_inline_frame_state): Adjust to std::vector.
11770         (skip_inline_frames): Adjust to std::vector.
11771
11772 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11773
11774         * tracepoint.h (struct trace_state_variable): Add constructor.
11775         <name>: Change type to std::string.
11776         * tracepoint.c (tsv_s): Remove.
11777         (DEF_VEC_O(tsv_s)): Remove.
11778         (tvariables): Change to std::vector.
11779         (create_trace_state_variable): Adjust to std::vector.
11780         (find_trace_state_variable): Likewise.
11781         (find_trace_state_variable_by_number): Likewise.
11782         (delete_trace_state_variable): Likewise.
11783         (trace_variable_command): Adjust to std::string.
11784         (delete_trace_variable_command): Likewise.
11785         (tvariables_info_1): Adjust to std::vector.
11786         (save_trace_state_variables): Likewise.
11787         (start_tracing): Likewise.
11788         (merge_uploaded_trace_state_variables): Adjust to std::vector
11789         and std::string.
11790         * target.h (struct target_ops)
11791         <to_download_trace_state_variable>: Pass reference to
11792         trace_state_variable.
11793         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11794         * target-delegates.c: Re-generate.
11795         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11796         (mi_tsv_deleted): Likewise.
11797         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11798         * remote.c (remote_download_trace_state_variable): Change
11799         pointer to reference and adjust.
11800         * make-target-delegates (parse_argtypes): Handle references.
11801         (write_function_header): Likewise.
11802         (munge_type): Likewise.
11803
11804 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11805
11806         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11807         string_view-selftests.c.
11808         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11809         testsuite.
11810         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11811         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11812         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11813         * unittests/basic_string_view/element_access/char/1.cc:
11814         Likewise.
11815         * unittests/basic_string_view/element_access/char/empty.cc:
11816         Likewise.
11817         * unittests/basic_string_view/element_access/char/front_back.cc:
11818         Likewise.
11819         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11820         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11821         Likewise.
11822         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11823         Likewise.
11824         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11825         Likewise.
11826         * unittests/basic_string_view/operations/compare/char/1.cc:
11827         Likewise.
11828         * unittests/basic_string_view/operations/compare/char/13650.cc:
11829         Likewise.
11830         * unittests/basic_string_view/operations/copy/char/1.cc:
11831         Likewise.
11832         * unittests/basic_string_view/operations/data/char/1.cc:
11833         Likewise.
11834         * unittests/basic_string_view/operations/find/char/1.cc:
11835         Likewise.
11836         * unittests/basic_string_view/operations/find/char/2.cc:
11837         Likewise.
11838         * unittests/basic_string_view/operations/find/char/3.cc:
11839         Likewise.
11840         * unittests/basic_string_view/operations/find/char/4.cc:
11841         Likewise.
11842         * unittests/basic_string_view/operations/rfind/char/1.cc:
11843         Likewise.
11844         * unittests/basic_string_view/operations/rfind/char/2.cc:
11845         Likewise.
11846         * unittests/basic_string_view/operations/rfind/char/3.cc:
11847         Likewise.
11848         * unittests/basic_string_view/operations/substr/char/1.cc:
11849         Likewise.
11850         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11851         * unittests/string_view-selftests.c: New file.
11852
11853 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11854
11855         * unittests/basic_string_view/capacity/1.cc: New file.
11856         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11857         * unittests/basic_string_view/cons/char/1.cc: New file.
11858         * unittests/basic_string_view/cons/char/2.cc: New file.
11859         * unittests/basic_string_view/cons/char/3.cc: New file.
11860         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11861         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11862         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11863         * unittests/basic_string_view/element_access/char/1.cc: New file.
11864         * unittests/basic_string_view/element_access/char/2.cc: New file.
11865         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11866         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11867         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11868         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11869         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11870         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11871         * unittests/basic_string_view/include.cc: New file.
11872         * unittests/basic_string_view/inserters/char/1.cc: New file.
11873         * unittests/basic_string_view/inserters/char/2.cc: New file.
11874         * unittests/basic_string_view/inserters/char/3.cc: New file.
11875         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11876         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11877         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11878         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11879         * unittests/basic_string_view/literals/types.cc: New file.
11880         * unittests/basic_string_view/literals/values.cc: New file.
11881         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11882         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11883         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11884         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11885         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11886         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11887         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11888         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11889         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11890         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11891         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11893         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11894         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11895         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11896         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11897         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11898         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11899         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11900         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11901         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11902         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11903         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11904         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11905         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11906         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11907         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11908         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11909         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11910         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11911         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11912         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11913         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11914         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11915         * unittests/basic_string_view/operators/char/2.cc: New file.
11916         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11917         * unittests/basic_string_view/range_access/char/1.cc: New file.
11918         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11919         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11920         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11921         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11922         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11923         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11924         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11925         * unittests/basic_string_view/typedefs.cc: New file.
11926         * unittests/basic_string_view/types/1.cc: New file.
11927
11928 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11929
11930         * common/gdb_string_view.h: Remove libstdc++ implementation
11931         details, adjust to gdb reality.
11932         * common/gdb_string_view.tcc: Likewise.
11933         * cli/cli-script.c (struct string_view): Remove.
11934         (user_args) <m_args>: Change element type to gdb::string_view.
11935         (user_args::insert_args): Adjust.
11936
11937 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11938
11939         * common/gdb_string_view.h: New file.
11940         * common/gdb_string_view.tcc: New file.
11941
11942 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11943
11944         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11945         * configure: Re-generate.
11946
11947 2018-04-09  Pedro Alves  <palves@redhat.com>
11948
11949         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11950         (set_target_gdbarch): Call
11951         gdb::observers::architecture_changed.notify instead of
11952         observer_notify_architecture_changed.
11953
11954 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11955
11956         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11957         (do_restore_current_traceframe_cleanup): Remove.
11958         (restore_current_traceframe_cleanup_dtor): Remove.
11959         (make_cleanup_restore_current_traceframe): Remove.
11960         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11961         New.
11962         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11963         * infrun.c (fetch_inferior_event): Use
11964         scoped_restore_current_traceframe.
11965
11966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11967
11968         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11969         Remove.
11970         <n_allocated_type_units>: Remove.
11971         <all_type_units>: Change to std::vector.
11972         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11973         to std::vector change.
11974         (dwarf2_per_objfile::get_cutu): Likewise.
11975         (dwarf2_per_objfile::get_tu): Likewise.
11976         (create_signatured_type_table_from_index): Likewise.
11977         (create_signatured_type_table_from_debug_names): Likewise.
11978         (dw2_symtab_iter_next): Likewise.
11979         (dw2_print_stats): Likewise.
11980         (dw2_expand_all_symtabs): Likewise.
11981         (dw2_expand_marked_cus): Likewise.
11982         (dw2_debug_names_iterator::next): Likewise.
11983         (dwarf2_initialize_objfile): Likewise.
11984         (add_signatured_type_cu_to_table): Likewise.
11985         (create_all_type_units): Likewise.
11986         (add_type_unit): Likewise.
11987         (struct tu_abbrev_offset): Add constructor.
11988         (build_type_psymtabs_1): Adjust to std::vector change.
11989         (print_tu_stats): Likewise.
11990         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11991         (write_debug_names): Likewise.
11992
11993 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11994
11995         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11996         Make an std::vector.
11997         <n_comp_units>: Remove.
11998         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11999         to std::vector change.
12000         (dwarf2_per_objfile::get_cutu): Likewise.
12001         (dwarf2_per_objfile::get_cu): Likewise.
12002         (create_cus_from_index): Likewise.
12003         (create_addrmap_from_index): Likewise.
12004         (create_addrmap_from_aranges): Likewise.
12005         (dwarf2_read_index): Likewise.
12006         (dw2_find_last_source_symtab): Likewise.
12007         (dw2_map_symtabs_matching_filename): Likewise.
12008         (dw2_symtab_iter_next): Likewise.
12009         (dw2_print_stats): Likewise.
12010         (dw2_expand_all_symtabs): Likewise.
12011         (dw2_expand_symtabs_with_fullname): Likewise.
12012         (dw2_expand_marked_cus): Likewise.
12013         (dw2_map_symbol_filenames): Likewise.
12014         (create_cus_from_debug_names): Likewise.
12015         (dwarf2_read_debug_names): Likewise.
12016         (dw2_debug_names_iterator::next): Likewise.
12017         (dwarf2_initialize_objfile): Likewise.
12018         (set_partial_user): Likewise.
12019         (dwarf2_build_psymtabs_hard): Likewise.
12020         (read_comp_units_from_section): Remove arguments, adjust to
12021         std::vector change.
12022         (create_all_comp_units): Adjust to std::vector and
12023         read_comp_units_from_section changes.
12024         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12025         change.
12026         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12027         (psyms_seen_size): Likewise.
12028         (write_gdbindex): Likewise.
12029         (write_debug_names): Likewise.
12030
12031 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12032
12033         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12034         with dwarf2_per_objfile.
12035         (create_cus_from_index): Likewise.
12036         (create_signatured_type_table_from_index): Likewise.
12037         (dwarf2_read_index): Likewise.
12038         (dwarf2_initialize_objfile): Likewise.
12039         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12040         per_cu rather than get_dwarf2_per_objfile.
12041
12042 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12043
12044         * dwarf2read.h (struct signatured_type): Forward declare.
12045         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12046         New methods.
12047         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12048         (dw2_get_cutu): ...this.
12049         (dwarf2_per_objfile::get_cu): Rename from...
12050         (dw2_get_cu): ...this.
12051         (dwarf2_per_objfile::get_tu): New.
12052         (create_addrmap_from_index): Adjust.
12053         (create_addrmap_from_aranges): Adjust.
12054         (dw2_find_last_source_symtab): Adjust.
12055         (dw2_map_symtabs_matching_filename): Adjust.
12056         (dw2_symtab_iter_next): Adjust.
12057         (dw2_print_stats): Adjust.
12058         (dw2_expand_all_symtabs): Adjust.
12059         (dw2_expand_symtabs_with_fullname): Adjust.
12060         (dw2_expand_marked_cus): Adjust.
12061         (dw_expand_symtabs_matching_file_matcher): Adjust.
12062         (dw2_map_symbol_filenames): Adjust.
12063         (dw2_debug_names_iterator::next): Adjust.
12064         (dwarf2_initialize_objfile): Adjust.
12065         (set_partial_user): Adjust.
12066         (dwarf2_build_psymtabs_hard): Adjust.
12067
12068 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12069
12070         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12071         Remove unused variables.
12072         (dw2_map_symtabs_matching_filename): Likewise.
12073         (dwarf2_record_block_ranges): Likewise.
12074         (dwarf2_read_addr_index): Likewise.
12075         (follow_die_offset): Likewise.
12076
12077 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12078
12079         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12080         to symbol_file_add_main.
12081
12082 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12083
12084         PR mi/22299
12085         * mi/mi-console.c (do_fputc_async_safe): New.
12086         (mi_console_file::write_async_safe): New.
12087         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12088         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12089         New.
12090         * ui-file.c (ui_file::putstrn): Adjust call to
12091         fputstrn_unfiltered.
12092         * utils.c (printchar): Replace do_fputs and do_fprintf
12093         parameters by do_fputc.
12094         (fputstr_filtered): Adjust call to printchar.
12095         (fputstr_unfiltered): Likewise.
12096         (fputstrn_filtered): Likewise.
12097         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12098         printchar.
12099         * utils.h (do_fputc_ftype): New typedef.
12100         (fputstrn_unfiltered): Add do_fputc parameter.
12101
12102 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12103
12104         * regformats/i386/i386-avx.dat: Remove.
12105
12106 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12107
12108         PR gdb/22979
12109         * amd64-tdep.c (amd64_none_init_abi): New function.
12110         (amd64_x32_none_init_abi): New function.
12111         (_initialize_amd64_tdep): Register handlers for x86-64 and
12112         x64_32 with GDB_OSABI_NONE.
12113         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12114         GDB_OSABI_NONE osabi.
12115
12116 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12117
12118         PR gdb/22980
12119         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12120         GDB_OSABI_NONE.
12121         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12122         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12123
12124 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12125
12126         * common/byte-vector.h (char_vector): New type.
12127         * target.h (target_read_alloc): Return
12128         gdb::optional<byte_vector>.
12129         (target_read_stralloc): Return gdb::optional<char_vector>.
12130         (target_get_osdata): Return gdb::optional<char_vector>.
12131         * target.c (target_read_alloc_1): Templatize.  Replacement
12132         manual memory management with vector.
12133         (target_read_alloc): Change return type, adjust.
12134         (target_read_stralloc): Change return type, adjust.
12135         (target_get_osdata): Change return type, adjust.
12136         * auxv.c (struct auxv_info) <length>: Remove.
12137         <data>: Change type to gdb::optional<byte_vector>.
12138         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12139         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12140         (target_auxv_search): Adjust.
12141         (fprint_target_auxv): Adjust.
12142         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12143         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12144         (linux_make_corefile_notes): Adjust.
12145         * osdata.c (get_osdata): Adjust.
12146         * remote.c (remote_get_threads_with_qxfer): Adjust.
12147         (remote_memory_map): Adjust.
12148         (remote_traceframe_info): Adjust.
12149         (btrace_read_config): Adjust.
12150         (remote_read_btrace): Adjust.
12151         (remote_pid_to_exec_file): Adjust.
12152         * solib-aix.c (solib_aix_get_library_list): Adjust.
12153         * solib-dsbt.c (decode_loadmap): Don't free buf.
12154         (dsbt_get_initial_loadmaps): Adjust.
12155         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12156         * solib-target.c (solib_target_current_sos): Adjust.
12157         * tracepoint.c (sdata_make_value): Adjust.
12158         * xml-support.c (xinclude_start_include): Adjust.
12159         (xml_fetch_content_from_file): Adjust.
12160         * xml-support.h (xml_fetch_another): Change return type.
12161         (xml_fetch_content_from_file): Change return type.
12162         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12163         * xml-tdesc.c (file_read_description_xml): Adjust.
12164         (fetch_available_features_from_target): Change return type.
12165         (target_fetch_description_xml): Adjust.
12166         (target_read_description_xml): Adjust.
12167
12168 2018-04-06  Tom Tromey  <tom@tromey.com>
12169
12170         * value.c (~value): Update.
12171         (struct value) <contents>: Now unique_xmalloc_ptr.
12172         (value_contents_bits_eq, allocate_value_contents)
12173         (value_contents_raw, value_contents_all_raw)
12174         (value_contents_for_printing, value_contents_for_printing_const)
12175         (set_value_enclosing_type): Update.
12176
12177 2018-04-06  Tom Tromey  <tom@tromey.com>
12178
12179         * value.c (range_s): Remove typedef, VEC.
12180         (struct range): Add operator<.
12181         (range_lessthan): Remove.
12182         (ranges_contain): Change type.
12183         (~value): Update.
12184         (struct value) <unavailable, optimized_out>: Now std::vector.
12185         (value_entirely_available)
12186         (value_entirely_covered_by_range_vector)
12187         (value_entirely_unavailable, value_entirely_optimized_out):
12188         Update.
12189         (insert_into_bit_range_vector): Change argument type.
12190         (find_first_range_overlap): Likewise.
12191         (struct ranges_and_idx, value_contents_bits_eq)
12192         (require_not_optimized_out, require_available): Update.
12193         (ranges_copy_adjusted): Change argument types.
12194         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12195
12196 2018-04-06  Tom Tromey  <tom@tromey.com>
12197
12198         * value.c (~value): Update.
12199         (struct value) <parent>: Now a value_ref_ptr.
12200         (value_parent, set_value_parent, value_address, value_copy):
12201         Update.
12202
12203 2018-04-06  Tom Tromey  <tom@tromey.com>
12204
12205         * value.c (struct value): Add constructor, destructor, and member
12206         initializers.
12207         (allocate_value_lazy, value_decref): Update.
12208
12209 2018-04-06  Tom Tromey  <tom@tromey.com>
12210
12211         * value.c (struct value) <released, next>: Remove.
12212         (all_values): Now a std::vector.
12213         (allocate_value_lazy): Update.
12214         (value_next): Remove.
12215         (value_mark, value_free_to_mark, release_value)
12216         (value_release_to_mark): Update.
12217
12218 2018-04-06  Tom Tromey  <tom@tromey.com>
12219
12220         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12221         (free_value_chain): Remove.
12222         * value.c (free_value_chain): Remove.
12223         (value_release_to_mark): Return a std::vector.
12224         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12225         std::vector.
12226         (check_condition): Update.
12227         * eval.c (fetch_subexp_value): Change "val_chain" to a
12228         std::vector.
12229         * breakpoint.c (update_watchpoint): Update.
12230         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12231
12232 2018-04-06  Tom Tromey  <tom@tromey.com>
12233
12234         * value.h (free_all_values): Remove.
12235         * value.c (free_all_values): Remove.
12236
12237 2018-04-06  Tom Tromey  <tom@tromey.com>
12238
12239         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12240         (value_history_chain, value_history_count): Remove.
12241         (value_history): New global.
12242         (record_latest_value, access_value_history, show_values)
12243         (preserve_values): Update.
12244
12245 2018-04-06  Tom Tromey  <tom@tromey.com>
12246
12247         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12248         * varobj.c (varobj_set_display_format, varobj_set_value)
12249         (install_default_visualizer, construct_visualizer)
12250         (install_new_value, ~varobj, varobj_get_value_type)
12251         (my_value_of_variable, varobj_editable_p): Update.
12252         * c-varobj.c (c_describe_child, c_value_of_variable)
12253         (cplus_number_of_children, cplus_describe_child): Update.
12254         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12255         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12256         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12257
12258 2018-04-06  Tom Tromey  <tom@tromey.com>
12259
12260         * printcmd.c (last_examine_address): Change type to
12261         value_ref_ptr.
12262         (do_examine, x_command): Update.
12263
12264 2018-04-06  Tom Tromey  <tom@tromey.com>
12265
12266         * value.c (release_value): Update.
12267         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12268         (struct bpstats) <val>: Now a value_ref_ptr.
12269         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12270         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12271         (~watchpoint, print_it_watchpoint, watch_command_1)
12272         (invalidate_bp_value_on_memory_change): Update.
12273
12274 2018-04-06  Tom Tromey  <tom@tromey.com>
12275
12276         * varobj.c (varobj_clear_saved_item)
12277         (update_dynamic_varobj_children, install_new_value, ~varobj):
12278         Update.
12279         * value.h (value_incref): Move declaration earlier.
12280         (value_decref): Rename from value_free.
12281         (struct value_ref_policy): New.
12282         (value_ref_ptr): New typedef.
12283         (struct value_deleter): Remove.
12284         (gdb_value_up): Remove typedef.
12285         (release_value): Change return type.
12286         (release_value_or_incref): Remove.
12287         * value.c (set_value_parent): Update.
12288         (value_incref): Change return type.
12289         (value_decref): Rename from value_free.
12290         (value_free_to_mark, free_all_values, free_value_chain): Update.
12291         (release_value): Return value_ref_ptr.
12292         (release_value_or_incref): Remove.
12293         (record_latest_value, set_internalvar, clear_internalvar):
12294         Update.
12295         * stack.c (info_frame_command): Don't call value_free.
12296         * python/py-value.c (valpy_dealloc, valpy_new)
12297         (value_to_value_object): Update.
12298         * printcmd.c (do_examine): Update.
12299         * opencl-lang.c (lval_func_free_closure): Update.
12300         * mi/mi-main.c (register_changed_p): Don't call value_free.
12301         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12302         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12303         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12304         value_free.
12305         * guile/scm-value.c (vlscm_free_value_smob)
12306         (vlscm_scm_from_value): Update.
12307         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12308         (frame_unwind_register_unsigned, get_frame_register_bytes)
12309         (put_frame_register_bytes): Don't call value_free.
12310         * findvar.c (address_from_register): Don't call value_free.
12311         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12312         * dwarf2loc.c (entry_data_value_free_closure)
12313         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12314         (dwarf2_evaluate_loc_desc_full): Update.
12315         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12316         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12317         (~watchpoint, watch_command_1)
12318         (invalidate_bp_value_on_memory_change): Update.
12319         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12320
12321 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12322
12323         PR gdb/23022
12324         * warning.m4: Add -Wno-error=deprecated-register.
12325         * configure: Re-generate.
12326
12327 2018-04-05  Tom Tromey  <tom@tromey.com>
12328
12329         * linespec.h: Remove include of "vec.h".
12330
12331 2018-04-05  Tom Tromey  <tom@tromey.com>
12332
12333         * linespec.c (typep): Remove typedef.
12334         (find_methods, find_superclass_methods): Take a std::vector.
12335         (find_method): Use std::vector.
12336
12337 2018-04-05  Tom Tromey  <tom@tromey.com>
12338
12339         * utils.c (compare_strings): Remove.
12340         * utils.h (compare_strings): Remove.
12341         * objc-lang.h (find_imps): Update.
12342         * objc-lang.c (find_methods): Take a std::vector.
12343         (uniquify_strings, find_imps): Likewise.
12344         * linespec.c (find_methods): Take a std::vector.
12345         (decode_objc): Use std::vector.
12346         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12347         a std::vector.
12348         (find_method, find_function_symbols): Use std::vector.
12349
12350 2018-04-05  Tom Tromey  <tom@tromey.com>
12351
12352         * completer.c (completion_tracker::completion_tracker): Remove
12353         cast.
12354         (completion_tracker::discard_completions): Likewise.
12355         * breakpoint.c (ambiguous_names_p): Remove cast.
12356         * ada-lang.c (_initialize_ada_language): Remove cast.
12357         * utils.h (streq): Update.
12358         (streq_hash): Add new declaration.
12359         * utils.c (streq): Return bool.
12360         (streq_hash): New function.
12361
12362 2018-04-05  Tom Tromey  <tom@tromey.com>
12363
12364         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12365         Remove a string copy.
12366
12367 2018-04-05  Tom Tromey  <tom@tromey.com>
12368
12369         * linespec.c (filter_results): Use std::vector.
12370         (decode_line_2, decode_line_full): Update.
12371
12372 2018-04-05  Tom Tromey  <tom@tromey.com>
12373
12374         * linespec.c (canonical_to_fullform): Return std::string.
12375         (filter_results): Update.
12376         (struct decode_line_2_item): Add constructor.
12377         <fullform, displayform>: Now std::string.
12378         (decode_line_2_compare_items): Now a std::sort comparator.
12379         (decode_line_2): Update.
12380
12381 2018-04-05  Tom Tromey  <tom@tromey.com>
12382
12383         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12384         (unexpected_linespec_error): Update.
12385         (linespec_parse_basic, parse_linespec): Update.
12386
12387 2018-04-05  Tom Tromey  <tom@tromey.com>
12388
12389         * linespec.c (linespec_parse_basic): Reindent.
12390
12391 2018-04-05  Tom Tromey  <tom@tromey.com>
12392
12393         * minsyms.h (iterate_over_minimal_symbols): Update.
12394         * minsyms.c (iterate_over_minimal_symbols): Take a
12395         gdb::function_view.
12396         * linespec.c (struct collect_minsyms): Remove.
12397         (compare_msyms): Now a std::sort comparator.
12398         (add_minsym): Add parameters.
12399         (search_minsyms_for_name): Update.  Use std::vector.
12400
12401 2018-04-03  Tom Tromey  <tom@tromey.com>
12402
12403         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12404         gdb::byte_vector.
12405
12406 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12407
12408         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12409
12410 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12411
12412         PR gdb/16959
12413         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12414         printing static type.
12415
12416 2018-04-01  Tom Tromey  <tom@tromey.com>
12417
12418         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12419         (rs6000_xfer_shared_libraries): Update.
12420
12421 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12422
12423         * common/gdb_vecs.h (char_ptr): Remove.
12424         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12425
12426 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12427
12428         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12429         with std::vector.
12430         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12431
12432 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12433
12434         * tracepoint.h (struct uploaded_tp): Initialize fields.
12435         <actions, step_actions, cmd_strings>: Change type to
12436         std::vector<char *>.
12437         * tracepoint.c (get_uploaded_tp): Allocate with new.
12438         (free_uploaded_tps): Free with delete.
12439         (parse_tracepoint_definition): Adjust to std::vector change.
12440         * breakpoint.c (read_uploaded_action): Likewise.
12441         (create_tracepoint_from_upload): Likewise.
12442         * ctf.c (ctf_write_uploaded_tp): Likewise.
12443         (SET_ARRAY_FIELD): Likewise.
12444         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12445
12446 2018-03-30  Tom Tromey  <tom@tromey.com>
12447
12448         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12449         std::unique_ptr.
12450         (svr4_keep_data_in_core): Update.
12451         (svr4_read_so_list): Update.
12452
12453 2018-03-30  Tom Tromey  <tom@tromey.com>
12454
12455         * windows-nat.c (handle_output_debug_string, handle_exception):
12456         Update.
12457         * target.h (target_read_string): Update.
12458         * target.c (target_read_string): Change "string" to
12459         unique_xmalloc_ptr.
12460         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12461         Update.
12462         * solib-frv.c (frv_current_sos): Update.
12463         * solib-dsbt.c (dsbt_current_sos): Update.
12464         * solib-darwin.c (darwin_current_sos): Update.
12465         * linux-thread-db.c (inferior_has_bug): Update.
12466         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12467         Update.  Remove alloca.
12468         * ada-lang.c (ada_main_name): Update.
12469
12470 2018-03-30  Tom Tromey  <tom@tromey.com>
12471
12472         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12473         (struct dwo_file_deleter): New.
12474         (dwo_file_up): New typedef.
12475         (open_and_init_dwo_file): Use dwo_file_up.
12476         (free_dwo_file_cleanup): Remove.
12477
12478 2018-03-30  Tom Tromey  <tom@tromey.com>
12479
12480         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12481         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12482
12483 2018-03-30  Tom Tromey  <tom@tromey.com>
12484
12485         * dwarf2read.c (class free_cached_comp_units): New class.
12486         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12487         (free_cached_comp_units): Remove function.
12488
12489 2018-03-30  Tom Tromey  <tom@tromey.com>
12490
12491         * utils.h (make_cleanup_unpush_target): Remove.
12492         * inf-ptrace.c (struct target_unpusher): New.
12493         (target_unpush_up) New typedef.
12494         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12495         target_unpush_up.
12496         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12497
12498 2018-03-27  Tom Tromey  <tom@tromey.com>
12499
12500         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12501
12502 2018-03-27  Pedro Alves  <palves@redhat.com>
12503             Tom Tromey  <tom@tromey.com>
12504
12505         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12506         destructor.  Now a class.
12507         (gdb_readline_wrapper_cleanup): Remove function.
12508         (gdb_readline_wrapper): Remove cleanups.
12509
12510 2018-03-27  Tom Tromey  <tom@tromey.com>
12511
12512         * typeprint.h (struct type_print_options) <local_typedefs,
12513         global_typedefs>: Remove "struct" keyword.
12514         (class typedef_hash_table): New class.
12515         (recursively_update_typedef_hash, add_template_parameters)
12516         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12517         (find_typedef_in_hash): Don't declare.
12518         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12519         (typedef_hash_table::recursively_update): Rename from
12520         recursively_update_typedef_hash.  Now a member.
12521         (typedef_hash_table::add_template_parameters): Rename from
12522         add_template_parameters.  Now a member.
12523         (typedef_hash_table::typedef_hash_table): Now a constructor;
12524         rename from create_typedef_hash.
12525         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12526         rename from free_typedef_hash.
12527         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12528         (do_free_global_table): Remove.
12529         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12530         from copy_type_recursive.
12531         (create_global_typedef_table): Remove.
12532         (typedef_hash_table::find_global_typedef): Now a member of
12533         typedef_hash_table.
12534         (typedef_hash_table::find_typedef): Rename from
12535         find_typedef_in_hash; now a member.
12536         (whatis_exp): Update.
12537         * extension.h (struct ext_lang_type_printers): Add constructor and
12538         destructor.
12539         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12540         declare.
12541         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12542         Now a constructor; rename from start_ext_lang_type_printers.
12543         (ext_lang_type_printers): Now a destructor; rename from
12544         free_ext_lang_type_printers.
12545         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12546         Update.
12547         (c_type_print_base_struct_union): Update.  Remove cleanups.
12548
12549 2018-03-27  Tom Tromey  <tom@tromey.com>
12550
12551         * dwarf-index-write.c: Include <cmath>.
12552
12553 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12554
12555         * NEWS: Add entry describing new "set|show varsize-limit" command.
12556         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12557         command.
12558         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12559         "set variable".
12560
12561 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12562
12563         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12564         dwarf-index-write.c
12565         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12566         * dwarf-index-common.c: New file.
12567         * dwarf-index-common.h: New file.
12568         * dwarf-index-write.c: New file.
12569         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12570         (struct dwarf2_section_info): Move from here.
12571         (dwarf2_section_info_def): Likewise.
12572         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12573         (offset_type): Likewise.
12574         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12575         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12576         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12577         (byte_swap): Likewise.
12578         (MAYBE_SWAP): Likewise.
12579         (dwarf2_per_cu_ptr): Likewise.
12580         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12581         (struct tu_stats): Likewise.
12582         (struct dwarf2_per_objfile): Likewise.
12583         (struct dwarf2_per_cu_data): Likewise.
12584         (struct signatured_type): Likewise.
12585         (sig_type_ptr): Likewise.
12586         (DEF_VEC_P (sig_type_ptr)): Likewise.
12587         (INDEX4_SUFFIX): Likewise.
12588         (INDEX5_SUFFIX): Likewise.
12589         (DEBUG_STR_SUFFIX): Likewise.
12590         (dwarf2_read_section): Make non-static.
12591         (mapped_index_string_hash): Move from here.
12592         (dwarf5_djb_hash): Likewise.
12593         (file_write): Likewise.
12594         (class data_buf): Likewise.
12595         (struct symtab_index_entry): Likewise.
12596         (struct mapped_symtab): Likewise.
12597         (find_slot): Likewise.
12598         (hash_expand): Likewise.
12599         (add_index_entry): Likewise.
12600         (uniquify_cu_indices): Likewise.
12601         (class c_str_view): Likewise.
12602         (class c_str_view_hasher): Likewise.
12603         (class vector_hasher): Likewise.
12604         (write_hash_table): Likewise.
12605         (psym_index_map): Likewise.
12606         (struct addrmap_index_data): Likewise.
12607         (add_address_entry): Likewise.
12608         (add_address_entry_worker): Likewise.
12609         (write_address_map): Likewise.
12610         (symbol_kind): Likewise.
12611         (write_psymbols): Likewise.
12612         (struct signatured_type_index_data): Likewise.
12613         (write_one_signatured_type): Likewise.
12614         (recursively_count_psymbols): Likewise.
12615         (recursively_write_psymbols): Likewise.
12616         (class debug_names): Likewise.
12617         (check_dwarf64_offsets): Likewise.
12618         (psyms_seen_size): Likewise.
12619         (write_gdbindex): Likewise.
12620         (write_debug_names): Likewise.
12621         (assert_file_size): Likewise.
12622         (write_psymtabs_to_index): Likewise.
12623         (save_gdb_index_command): Likewise.
12624         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12625         command.
12626         * dwarf2read.h: New file.
12627
12628 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12629
12630         PR gdb/22670
12631         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12632         symbol name if the CU's language stores symbol names in linkage
12633         format.
12634         * language.h (struct language_defn)
12635         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12636         all instances of this struct.
12637
12638 2018-03-26  Tom Tromey  <tom@tromey.com>
12639
12640         * stack.c (backtrace_command_1): Remove verbose code.
12641
12642 2018-03-26  Tom Tromey  <tom@tromey.com>
12643
12644         * python/py-framefilter.c (py_print_type): Don't catch
12645         exceptions.  Return void.
12646         (py_print_value): Likewise.
12647         (py_print_single_arg): Likewise.
12648         (enumerate_args): Don't catch exceptions.
12649         (py_print_args): Likewise.
12650         (py_print_frame): Likewise.
12651         (gdbpy_apply_frame_filter): Catch exceptions here.
12652
12653 2018-03-26  Tom Tromey  <tom@tromey.com>
12654
12655         * stack.c (_initialize_stack): Remove trailing newlines from help
12656         text.  Add "Usage" line to "backtrace" help.
12657
12658 2018-03-26  Tom Tromey  <tom@tromey.com>
12659
12660         PR python/16486:
12661         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12662
12663 2018-03-26  Tom Tromey  <tom@tromey.com>
12664
12665         * python/py-framefilter.c (py_print_single_arg): Return
12666         EXT_LANG_BT_ERROR from catch.
12667
12668 2018-03-26  Tom Tromey  <tom@tromey.com>
12669
12670         PR backtrace/15584:
12671         * stack.c (backtrace_command_1): Move some code into no-filters
12672         "if".
12673
12674 2018-03-26  Tom Tromey  <tom@tromey.com>
12675
12676         * python/py-framefilter.c (throw_quit_or_print_exception): New
12677         function.
12678         (gdbpy_apply_frame_filter): Use it.
12679
12680 2018-03-26  Tom Tromey  <tom@tromey.com>
12681
12682         PR cli/17716:
12683         * python/py-framefilter.c (py_print_type, py_print_value)
12684         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12685         RETURN_MASK_ERROR.
12686
12687 2018-03-26  Tom Tromey  <tom@tromey.com>
12688
12689         * python/py-framefilter.c (enumerate_args): Use
12690         gdb::unique_xmalloc_ptr.
12691
12692 2018-03-26  Tom Tromey  <tom@tromey.com>
12693
12694         * python/py-framefilter.c (py_print_frame): Return
12695         EXT_LANG_BT_OK.
12696         (gdbpy_apply_frame_filter): Update comment.
12697         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12698         Remove.
12699         <EXT_LANG_BT_NO_FILTERS>: Change value.
12700
12701 2018-03-26  Tom Tromey  <tom@tromey.com>
12702
12703         PR backtrace/15582:
12704         * stack.c (backtrace_command): Parse "hide" argument.
12705         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12706         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12707         constant.
12708
12709 2018-03-26  Tom Tromey  <tom@tromey.com>
12710
12711         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12712         add "flags".
12713         (backtrace_command): Remove "fulltrace", add "flags".
12714
12715 2018-03-26  Tom Tromey  <tom@tromey.com>
12716
12717         * stack.c (backtrace_command): Rewrite command line parsing.
12718
12719 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12720
12721         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12722
12723 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12724
12725         * filename-seen-cache.h: Add include guard.
12726
12727 2018-03-26  Keith Seitz  <keiths@redhat.com>
12728
12729         * symfile.c (place_section): Remove "struct" from section_addr_info
12730         in comment.
12731         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12732         "struct" keyword from section_addr_info.
12733
12734 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12735
12736         * regformats/regdef.h (reg): Add constructors.
12737
12738 2018-03-25  Pedro Alves  <palves@redhat.com>
12739
12740         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12741         if then/else bodies in var_func_name extraction.
12742
12743 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12744
12745         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12746         lookup_minimal_symbol() to find symbol entry.
12747         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12748
12749 2018-03-23  Keith Seitz  <keiths@redhat.com>
12750
12751         PR c++/22968
12752         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12753         nested type definitions for C++, too.
12754
12755 2018-03-23  Tom Tromey  <tom@tromey.com>
12756
12757         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12758         a typedef.
12759         (macho_register_oso): Remove.
12760         (macho_symtab_read): Take a std::vector.
12761         (oso_el_compare_name): Now a std::sort comparator.
12762         (macho_symfile_read_all_oso): Take a std::vector.
12763         (macho_symfile_read): Use std::vector.  Remove cleanups.
12764
12765 2018-03-22  Tom Tromey  <tom@tromey.com>
12766
12767         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12768         (record_full_goto_bookmark): Use std::string.
12769
12770 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12771
12772         PR tdep/18295
12773         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12774         a single mask.
12775
12776 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12777
12778         * rs6000-tdep.c (store_insn_p): New function.
12779         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12780         and cr_reg to their unshifted values. Use store_insn_p to
12781         match LR saves using either R1 or fdata->alloca_reg. Use
12782         store_insn_p to match CR saves. Set alloca_reg_offset
12783         when alloca_reg and framep are set. Remove lr_reg shift
12784         when assigning to fdata->lr_register.
12785
12786 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12787
12788         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12789         command line args instead of emitting a warning.
12790
12791 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12792
12793         * tracepoint.h (struct static_tracepoint_marker): Initialize
12794         fields, define default constructor, move constructor and move
12795         assignment, disable the rest.
12796         <str_id, extra>: Make std::string.
12797         (release_static_tracepoint_marker): Remove.
12798         (free_current_marker): Remove.
12799         * tracepoint.c (free_current_marker): Remove.
12800         (parse_static_tracepoint_marker_definition): Adjust to
12801         std::string, use new hex2str overload.
12802         (release_static_tracepoint_marker): Remove.
12803         (print_one_static_tracepoint_marker): Get marker by reference
12804         and adjust to std::string.
12805         (info_static_tracepoint_markers_command): Adjust to std::vector
12806         changes
12807         * target.h (static_tracepoint_marker_p): Remove typedef.
12808         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12809         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12810         bool.
12811         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12812         * target-debug.h
12813         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12814         (target_debug_print_std_vector_static_tracepoint_marker): New.
12815         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12816         to...
12817         (target_debug_print_static_tracepoint_marker_p): ... this.
12818         * target-delegates.c: Re-generate.
12819         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12820         Make std::string.
12821         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12822         (decode_static_tracepoint_spec): Adjust to std::vector.
12823         (tracepoint_print_one_detail): Adjust to std::string.
12824         (strace_marker_decode_location): Adjust to std::string.
12825         (update_static_tracepoint): Adjust to std::string, remove call
12826         to release_static_tracepoint_marker.
12827         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12828         Adjust to std::vector.
12829         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12830         (remote_static_tracepoint_markers_by_strid): Adjust to
12831         std::vector.
12832         * common/rsp-low.h (hex2str): New overload with explicit count
12833         of bytes.
12834         * common/rsp-low.c (hex2str): New overload with explicit count
12835         of bytes.
12836         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12837         (_initialize_rsp_low_selftests): Add test_hex2str test.
12838         * unittests/tracepoint-selftests.c
12839         (test_parse_static_tracepoint_marker_definition): Adjust to
12840         std::string.
12841
12842 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12843
12844         * tracepoint.c (parse_static_tracepoint_marker_definition):
12845         Consider case where the definition is followed by more
12846         definitions.
12847         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12848         tracepoint-selftests.c.
12849         * unittests/tracepoint-selftests.c: New.
12850
12851 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12852
12853         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12854         Carvalho.
12855
12856 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12857
12858         * symtab.c (find_pc_sect_line): fixed indentation.
12859
12860 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12861
12862         * symtab.c (find_pc_sect_line): now uses binary search.
12863
12864 2018-03-19  Tom Tromey  <tom@tromey.com>
12865
12866         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12867         "IDENT" production.
12868
12869 2018-03-19  Pedro Alves  <palves@redhat.com>
12870             Tom Tromey  <tom@tromey.com>
12871
12872         * unittests/observable-selftests.c: New file.
12873         * common/observable.h: New file.
12874         * observable.h: New file.
12875         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12876         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12877         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12878         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12879         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12880         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12881         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12882         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12883         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12884         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12885         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12886         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12887         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12888         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12889         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12890         tui/tui-interp.c, valops.c: Update all users.
12891         * tui/tui-hooks.c (tui_bp_created_observer)
12892         (tui_bp_deleted_observer, tui_bp_modified_observer)
12893         (tui_inferior_exit_observer, tui_before_prompt_observer)
12894         (tui_normal_stop_observer, tui_register_changed_observer):
12895         Remove.
12896         (tui_observers_token): New global.
12897         (attach_or_detach, tui_attach_detach_observers): New functions.
12898         (tui_install_hooks, tui_remove_hooks): Use
12899         tui_attach_detach_observers.
12900         * record-btrace.c (record_btrace_thread_observer): Remove.
12901         (record_btrace_thread_observer_token): New global.
12902         * observer.sh: Remove.
12903         * observer.c: Rename to observable.c.
12904         * observable.c (namespace gdb_observers): Define new objects.
12905         (observer_debug): Move into gdb_observers namespace.
12906         (struct observer, struct observer_list, xalloc_observer_list_node)
12907         (xfree_observer_list_node, generic_observer_attach)
12908         (generic_observer_detach, generic_observer_notify): Remove.
12909         (_initialize_observer): Update.
12910         Don't include observer.inc.
12911         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12912         (clean mostlyclean): Likewise.
12913         (observer.h, observer.inc): Remove targets.
12914         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12915         (COMMON_SFILES): Use observable.c, not observer.c.
12916         * .gitignore: Remove observer.h.
12917
12918 2018-03-18  Tom Tromey  <tom@tromey.com>
12919
12920         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12921         gdb::def_vector.
12922         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12923
12924 2018-03-17  Tom Tromey  <tom@tromey.com>
12925
12926         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12927
12928 2018-03-17  Tom Tromey  <tom@tromey.com>
12929
12930         * target.c (class scoped_target_fd): New.
12931         (target_fileio_close_cleanup): Remove.
12932         (target_fileio_read_alloc_1): Use scoped_target_fd.
12933
12934 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12935
12936         * silent-rules.mk: New.
12937         * Makefile.in: Include silent-rules.mk
12938         (srcdir, VPATH, top_srcdir): Move up.
12939         (COMPILE): Add ECHO_CXX.
12940         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12941         (init.c): Add ECHO_INIT_C.
12942         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12943         (version.c): Add ECHO_GEN.
12944         (printcmd.o): Add ECHO_CXX.
12945         (target-float.o): Add ECHO_CXX.
12946         (ada-exp.o): Add ECHO_CXX.
12947         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12948         (insight$(EXEEXT)): Add ECHO_CXXLD.
12949         * gnulib/configure.ac: Add AM_SILENT_RULES.
12950         * gnulib/aclocal.m4: Re-generate.
12951         * gnulib/configure: Re-generate.
12952         * gnulib/import/Makefile.in: Re-generate.
12953
12954 2018-03-16  Tom Tromey  <tom@tromey.com>
12955
12956         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12957         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12958         * utils.c (do_free_section_addr_info)
12959         (make_cleanup_free_section_addr_info): Remove.
12960         * symfile.h (struct other_sections): Add constructor.
12961         (struct section_addr_info): Remove.
12962         (section_addr_info): New typedef.
12963         (struct sym_fns) <sym_offsets>: Change type of parameter.
12964         (build_section_addr_info_from_objfile)
12965         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12966         (default_symfile_offsets, symbol_file_add)
12967         (symbol_file_add_from_bfd)
12968         (build_section_addr_info_from_section_table): Update.
12969         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12970         * symfile.c (alloc_section_addr_info): Remove.
12971         (build_section_addr_info_from_section_table): Change return type.
12972         Update.
12973         (build_section_addr_info_from_bfd)
12974         (build_section_addr_info_from_objfile): Likewise.
12975         (free_section_addr_info): Remove.
12976         (relative_addr_info_to_section_offsets): Change type of "addrs".
12977         (addrs_section_compar): Now a std::sort comparator.
12978         (addrs_section_sort): Change return type.
12979         (addr_info_make_relative): Change type of "addrs".  Update.
12980         (default_symfile_offsets, syms_from_objfile_1)
12981         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12982         (symbol_file_add_separate): Update.
12983         (symbol_file_add): Change type of "addrs".  Update.
12984         (add_symbol_file_command): Update.  Remove cleanups.
12985         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12986         cleanups.
12987         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12988         * solib.c (solib_read_symbols): Update.
12989         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12990         * machoread.c (macho_symfile_offsets): Update.
12991         * jit.c (jit_bfd_try_read_symtab): Update.
12992
12993 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12994
12995         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12996         unittests/utils-selftests.c.
12997         * unittests/utils-selftests.c: New file.
12998
12999 2018-03-14  Tom Tromey  <tom@tromey.com>
13000
13001         PR cli/14977:
13002         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13003         for NULL.
13004
13005 2018-03-14  Tom Tromey  <tom@tromey.com>
13006
13007         PR cli/19918:
13008         * printcmd.c (printf_pointer): Allow "-" in format.
13009
13010 2018-03-14  Tom Tromey  <tom@tromey.com>
13011
13012         * printcmd.c (_initialize_printcmd): Add usage to printf.
13013
13014 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13015
13016         * MAINTAINERS: Update my email address.
13017
13018 2018-03-13  Tom Tromey  <tom@tromey.com>
13019
13020         * machoread.c (macho_check_dsym): Change filenamep to a
13021         std::string*.
13022         (macho_symfile_read): Update.
13023         * symfile.c (load_command): Use std::string.
13024
13025 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13026
13027         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13028         to error message string.
13029         (riscv_register_name): Use xsnprintf instead of sprintf.
13030         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13031         internal_error.
13032         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13033         error.
13034         (riscv_push_dummy_call): Likewise.
13035
13036 2018-03-12  Tom Tromey  <tom@tromey.com>
13037
13038         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13039         Use gdb::byte_vector.
13040         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13041
13042 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13043
13044         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13045         parameter type to readable_regcache.
13046         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13047         the declaration.
13048
13049 2018-03-11  Tom Tromey  <tom@tromey.com>
13050
13051         * dwarf2read.c (struct nextfield): Add initializers.
13052         (struct nextfnfield): Remove.
13053         (struct fnfieldlist): Add initializers.  Remove "length" and
13054         "head", use std::vector.
13055         (struct decl_field_list): Remove.
13056         (struct field_info): Add initializers.
13057         <fields, baseclasses>: Now std::vector.
13058         <nbaseclasses, nfnfields, typedef_field_list_count,
13059         nested_types_list_count>: Remove.
13060         (dwarf2_add_field, dwarf2_add_type_defn)
13061         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13062         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13063         (process_structure_scope): Update.
13064
13065 2018-03-11  Tom Tromey  <tom@tromey.com>
13066
13067         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13068         for use by std::sort.
13069         (build_type_psymtabs_1): Use std::vector.
13070
13071 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13072
13073         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13074         and LIBMPFR in the printed configuration.
13075
13076 2018-03-08  Tom Tromey  <tom@tromey.com>
13077
13078         * source.c (get_filename_and_charpos): Use scoped_fd.
13079         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13080         (procfs_pidlist): Likewise.
13081         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13082         (iterate_over_mappings): Likewise.
13083
13084 2018-03-08  Tom Tromey  <tom@tromey.com>
13085
13086         * infcall.c (struct call_return_meta_info)
13087         <stack_temporaries_enabled>: Remove.
13088         (get_call_return_value, call_function_by_hand_dummy): Update.
13089         * thread.c (disable_thread_stack_temporaries): Remove.
13090         (enable_thread_stack_temporaries): Remove.
13091         (thread_stack_temporaries_enabled_p): Return bool.
13092         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13093         (get_last_thread_stack_temporary): Update.
13094         * eval.c (evaluate_subexp): Update.
13095         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13096         class, not a function.
13097         (value_ptr, value_vec): Remove typedefs.
13098         (class thread_info) <stack_temporaries_enabled>: Now bool.
13099         <stack_temporaries>: Now a std::vector.
13100         (thread_stack_temporaries_enabled_p)
13101         (value_in_thread_stack_temporaries): Return bool.
13102
13103 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13104
13105         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13106         (getpkt_or_notif_sane_1): Likewise.
13107
13108 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13109
13110         * build-id.c (build_id_to_debug_bfd): Use std::string.
13111
13112 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13113
13114         * build-id.c (find_separate_debug_file_by_buildid): Return
13115         std::string.
13116         * build-id.h (find_separate_debug_file_by_buildid): Return
13117         std::string.
13118         * coffread.c (coff_symfile_read): Adjust to std::string.
13119         * elfread.c (elf_symfile_read): Adjust to std::string.
13120         * symfile.c (separate_debug_file_exists): Change parameter to
13121         std::string.
13122         (find_separate_debug_file): Return std::string.
13123         (find_separate_debug_file_by_debuglink): Return std::string.
13124         * symfile.h (find_separate_debug_file_by_debuglink): Return
13125         std::string.
13126
13127 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13128
13129         * common/xml-utils.c (xml_escape_text): Move code to...
13130         (xml_escape_text_append): ... this new function.
13131         * common/xml-utils.h (xml_escape_text_append): New declaration.
13132         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13133         New function.
13134         (_initialize_xml_utils): register test_xml_escape_text_append as
13135         a selftest.
13136
13137 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13138
13139         * defs.h: Remove MAX_REGISTER_SIZE.
13140         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13141         asserts.
13142         * python/py-unwind.c (pyuw_sniffer): Likewise.
13143
13144 2018-03-07  Tom Tromey  <tom@tromey.com>
13145
13146         * linux-tdep.c (linux_info_proc): Update.
13147         * target.h (struct target_ops) <to_fileio_readlink>: Return
13148         optional<string>.
13149         (target_fileio_readlink): Return optional<string>.
13150         * remote.c (remote_hostio_readlink): Return optional<string>.
13151         * inf-child.c (inf_child_fileio_readlink): Return
13152         optional<string>.
13153         * target.c (target_fileio_readlink): Return optional<string>.
13154
13155 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13156
13157         * regcache.c (cooked_read_test): Add riscv to the list of
13158         architectures that have a save_reggroup.
13159
13160 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13161
13162         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13163         value is not a dynamic class object.
13164
13165 2018-03-06  Tom Tromey  <tom@tromey.com>
13166
13167         * rust-exp.y: Formatting fixes.
13168
13169 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13170
13171         * riscv-tdep.c (riscv_register_name): Remove target description
13172         support.
13173         (riscv_gdbarch_init): Remove target description check.
13174
13175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13176
13177         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13178         comment.
13179         * riscv-tdep.h: Likewise.
13180
13181 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13182
13183         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13184         (riscv_pseudo_register_write): Delete.
13185         (riscv_gdbarch_init): Remove all use of pseudo registers.
13186
13187 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13188
13189         * record-btrace.c (btrace_print_lines): Replace cleanup
13190         parameter with RAII equivalents.
13191         (btrace_insn_history): Replace cleanup with RAII equivalents.
13192         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13193         make_cleanup_ui_out_tuple_begin_end): Remove.
13194         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13195         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13196         make_cleanup_ui_out_list_begin_end): Remove.
13197
13198 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13199
13200         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13201         parameter types to std::vector.  Use bool.
13202         (record_btrace_wait): Replace VEC(tp_t) with
13203         std::vector<thread_info *>.
13204         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13205
13206 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13207
13208         * record-btrace.c (record_btrace_disable_callback): Remove.
13209         (struct scoped_btrace_disable): New.
13210         (record_btrace_open): Use scoped_btrace_disable.
13211
13212 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13213
13214         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13215         reading values from registers.
13216
13217 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13218
13219         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13220         where appropriate.
13221
13222 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13223
13224         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13225         change parameter type.  Use GDB's print functions, and use
13226         core_addr_to_string where appropriate.
13227         (riscv_push_dummy_call): Use core_addr_to_string where
13228         appropriate, update call to riscv_print_arg_location, and reindent
13229         a few lines.
13230         (riscv_return_value): Update call to riscv_print_arg_location.
13231
13232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13233             Tim Newsome <tim@sifive.com>
13234             Albert Ou <a0u@eecs.berkeley.edu>
13235             Darius Rad <darius@bluespec.com>
13236
13237         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13238         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13239         (ALLDEPFILES): Add riscv-tdep.c
13240         * configure.tgt: Add riscv support.
13241         * riscv-tdep.c: New file.
13242         * riscv-tdep.h: New file.
13243         * NEWS: Mention new target.
13244         * MAINTAINERS: Add entry for riscv.
13245
13246 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13247
13248         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13249         fields within aggregates.
13250
13251 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13252
13253         * record-btrace.c (btrace_print_lines): Change type of flags to
13254         gdb_disassembly_flags.
13255
13256 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13257
13258         * fbsd-nat.c: Include "inf-ptrace.h".
13259         (USE_SIGTRAP_SIGINFO): Conditionally define.
13260         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13261         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13262         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13263         function.
13264         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13265         Likewise.
13266         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13267         Likewise.
13268         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13269         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13270         "supports_stopped_by_hw_breakpoint" target methods.
13271
13272 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13273
13274         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13275         * fbsd-nat.c (debug_fbsd_nat): New variable.
13276         (show_fbsd_nat_debug): New function.
13277         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13278         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13279
13280 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13281
13282         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13283         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13284         prototype.
13285         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13286         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13287         method.
13288
13289 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13290
13291         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13292         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13293
13294 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13295
13296         * charset.c (struct charset_vector): New.
13297         (charsets): Change type to charset_vector.
13298         (find_charset_names): Adjust.
13299         (add_one): Adjust.
13300         (_initialize_charset): Adjust.
13301
13302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13303
13304         * progspace.h (struct program_space) <deleted_solibs>: Change
13305         type to std::vector<std::string>.
13306         * progspace.c (clear_program_space_solib_cache): Adjust.
13307         * breakpoint.c (print_solib_event): Adjust.
13308         (check_status_catch_solib): Adjust.
13309         * solib.c (update_solib_list): Adjust.
13310         * ui-out.h (class ui_out) <field_string>: New overload.
13311         * ui-out.c (ui_out::field_string): New overload.
13312
13313 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13314
13315         * progspace.h (struct program_space): Add constructor and
13316         destructor, initialize fields.
13317         (add_program_space): Remove.
13318         * progspace.c (add_program_space): Rename to...
13319         (program_space::program_space): ... this.
13320         (release_program_space): Rename to...
13321         (program_space::~program_space): ... this.
13322         (delete_program_space): Use delete to delete program_space.
13323         (initialize_progspace): Use new to allocate program_space.
13324         * inferior.c (add_inferior_with_spaces): Likewise.
13325         (clone_inferior_command): Likewise.
13326         * infrun.c (follow_fork_inferior): Likewise.
13327         (handle_vfork_child_exec_or_exit): Likewise.
13328
13329 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13330
13331         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13332         (delim_string_to_char_ptr_vec): Return std::vector of
13333         gdb::unique_xmalloc_ptr.
13334         (dirnames_to_char_ptr_vec_append): Take std::vector of
13335         gdb::unique_xmalloc_ptr.
13336         (dirnames_to_char_ptr_vec): Return std::vector of
13337         gdb::unique_xmalloc_ptr.
13338         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13339         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13340         (delim_string_to_char_ptr_vec): Return an std::vector of
13341         gdb::unique_xmalloc_ptr, adjust the code.
13342         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13343         gdb::unique_xmalloc_ptr, adjust the code.
13344         (dirnames_to_char_ptr_vec): Return an std::vector of
13345         gdb::unique_xmalloc_ptr, adjust the code.
13346         * auto-load.c (auto_load_safe_path_vec): Change type to
13347         std::vector of gdb::unique_xmalloc_ptr.
13348         (auto_load_expand_dir_vars): Return an std::vector of
13349         gdb::unique_xmalloc_ptr, adjust the code.
13350         (auto_load_safe_path_vec_update): Adjust.
13351         (filename_is_in_auto_load_safe_path_vec): Adjust.
13352         (auto_load_objfile_script_1): Adjust.
13353         * build-id.c (build_id_to_debug_bfd): Adjust.
13354         * linux-thread-db.c (thread_db_load_search): Adjust.
13355         * source.c (add_path): Adjust.
13356         (openp): Adjust.
13357         * symfile.c (find_separate_debug_file): Adjust.
13358         * utils.c (do_free_char_ptr_vec): Remove.
13359         (make_cleanup_free_char_ptr_vec): Remove.
13360
13361 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13362
13363         PR gdb/22907
13364         * common/pathstuff.c: Conditionally include "<windows.h>".
13365
13366 2018-03-01  Georg Sauthoff  <mail@georg.so>
13367
13368         PR gdb/22888
13369         * gcore.in: Quote variables and switch interpreter to bash.
13370
13371 2018-03-01  Tom Tromey  <tom@tromey.com>
13372
13373         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13374         assertion.  Add assertion for discriminant_index.
13375         (quirk_rust_enum): Use correct base type name in univariant case.
13376
13377 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13378
13379         * record.c (get_call_history_modifiers): Return a
13380         record_print_flags.
13381         (cmd_record_call_history): Adjust.
13382         * record-btrace.c (record_btrace_call_history): Adjust.
13383         (record_btrace_call_history_range): Adjust.
13384         (record_btrace_call_history_from): Adjust.
13385         * target-debug.h (target_debug_print_record_print_flags): New.
13386         * target-delegates.c: Re-generate.
13387         * target.c (target_call_history): Change flags type.
13388         (target_call_history_from): Likewise.
13389         (target_call_history_range): Likewise.
13390         * target.h (struct target_ops) <target_call_history>: Likewise.
13391         (target_call_history_from): Likewise.
13392         (target_call_history_range): Likewise.
13393
13394 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13395             Simon Marchi  <simon.marchi@polymtl.ca>
13396
13397         * common/common-utils.c: Include "sys/stat.h".
13398         (is_regular_file): Move here from "source.c"; change return
13399         type to "bool".
13400         * common/common-utils.h (is_regular_file): New prototype.
13401         * common/pathstuff.c (contains_dir_separator): New function.
13402         * common/pathstuff.h (contains_dir_separator): New prototype.
13403         * source.c: Don't include "sys/stat.h".
13404         (is_regular_file): Move to "common/common-utils.c".
13405
13406 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13407
13408         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13409         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13410         * auto-load.c: Include "common/pathstuff.h".
13411         * common/common-def.h (current_directory): Move here.
13412         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13413         function.
13414         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13415         prototype.
13416         * common/pathstuff.c: New file.
13417         * common/pathstuff.h: New file.
13418         * compile/compile.c: Include "common/pathstuff.h".
13419         * defs.h (current_directory): Move to "common/common-defs.h".
13420         * dwarf2read.c: Include "common/pathstuff.h".
13421         * exec.c: Likewise.
13422         * guile/scm-safe-call.c: Likewise.
13423         * linux-thread-db.c: Likewise.
13424         * main.c: Likewise.
13425         * nto-tdep.c: Likewise.
13426         * objfiles.c: Likewise.
13427         * source.c: Likewise.
13428         * symtab.c: Likewise.
13429         * utils.c: Include "common/pathstuff.h".
13430         (gdb_realpath): Move to "common/pathstuff.c".
13431         (gdb_realpath_keepfile): Likewise.
13432         (gdb_abspath): Likewise.
13433         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13434         (gdb_realpath_keepfile): Likewise.
13435         (gdb_abspath): Likewise.
13436
13437 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13438
13439         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13440         wildcard process pid for super_resume for kernels with a
13441         specific bug.
13442
13443 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13444
13445         * compile/compile.c (get_args): Add additional comments
13446         explaining function.
13447
13448 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13449             Tom Tromey  <tom@tromey.com>
13450
13451         * target.h (memory_write_request_s): Remove typedef.  Don't define
13452         VEC.
13453         (target_write_memory_blocks): Change argument to std::vector.
13454         (struct memory_write_request): Add constructor.
13455         * target-memory.c (compare_block_starting_address): Return bool.
13456         Change argument types.
13457         (claim_memory): Change arguments to use std::vector.
13458         (split_regular_and_flash_blocks, blocks_to_erase)
13459         (compute_garbled_blocks): Likewise.
13460         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13461         (target_write_memory_blocks): Change argument to std::vector.
13462         * symfile.c (struct load_section_data): Add constructor and
13463         destructor.  Use std::vector for "requests".
13464         (struct load_progress_data): Add initializers.
13465         (load_section_callback): Update.  Use "new".
13466         (clear_memory_write_data): Remove.
13467         (generic_load): Update.
13468
13469 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13470
13471         * arch/aarch64.h: Use common/tdesc.h.
13472
13473 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13474
13475         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13476         architecture with a 64-bit ABI.
13477
13478 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13479
13480         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13481         ahead of target description loading.
13482
13483 2018-02-26  Tom Tromey  <tom@tromey.com>
13484
13485         * stack.c (backtrace_command_1): Update.
13486         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13487         of "flags".
13488         * python/py-framefilter.c (py_print_frame)
13489         (gdbpy_apply_frame_filter): Change type of "flags".
13490         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13491         of "flags".
13492         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13493         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13494         * extension.h (enum frame_filter_flag): Rename from
13495         frame_filter_flags.
13496         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13497         (apply_ext_lang_frame_filter): Change type of "flags".
13498         * extension.c (apply_ext_lang_frame_filter): Change type of
13499         "flags".
13500         * extension-priv.h (struct extension_language_ops)
13501         <apply_frame_filter>: Change type of "flags".
13502
13503 2018-02-26  Tom Tromey  <tom@tromey.com>
13504
13505         PR python/16497:
13506         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13507         off-by-one in py_end computation.
13508         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13509         PRINT_MORE_FRAMES.
13510         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13511         constant.
13512
13513 2018-02-26  Tom Tromey  <tom@tromey.com>
13514
13515         * dwarf2read.c (struct variant_field): New.
13516         (struct nextfield) <variant>: New field.
13517         (dwarf2_add_field): Handle DW_TAG_variant_part.
13518         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13519         discriminated union.
13520         (read_structure_type): Handle DW_TAG_variant_part.
13521         (handle_struct_member_die): New function, extracted from
13522         process_structure_scope.  Handle DW_TAG_variant.
13523         (process_structure_scope): Handle discriminated unions.  Call
13524         handle_struct_member_die.
13525
13526 2018-02-26  Tom Tromey  <tom@tromey.com>
13527
13528         * rust-lang.h (rust_last_path_segment): Declare.
13529         * rust-lang.c (rust_last_path_segment): Now public.  Change
13530         contract.
13531         (struct disr_info): Remove.
13532         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13533         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13534         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13535         (rust_enum_p, rust_enum_variant): New function.
13536         (rust_underscore_fields): Remove "offset" parameter.
13537         (rust_print_enum): New function.
13538         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13539         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13540         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13541         enums.
13542         (rust_internal_print_type): New function, from rust_print_type.
13543         Remove enum code.
13544         (rust_print_type): Call rust_internal_print_type.
13545         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13546         Update enum handling.
13547         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13548         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13549         (rust_union_quirks): New functions.
13550         (process_full_comp_unit, process_full_type_unit): Call
13551         rust_union_quirks.
13552         (process_structure_scope): Update rust_unions if necessary.
13553
13554 2018-02-26  Tom Tromey  <tom@tromey.com>
13555
13556         * value.h (value_union_variant): Declare.
13557         * valops.c (value_union_variant): New function.
13558         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13559         (struct discriminant_info): New.
13560         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13561         enumerator.
13562         (struct main_type) <flag_discriminated_union>: New field.
13563
13564 2018-02-26  Tom Tromey  <tom@tromey.com>
13565
13566         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13567         unittests/unpack-selftests.c.
13568         * unittests/unpack-selftests.c: New file.
13569         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13570
13571 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13572
13573         * dwarf2read.c (struct partial_die_info) <read>: New method.
13574         (read_partial_die): Remove the declaration.
13575         (load_partial_dies): Update.
13576         (partial_die_info::partial_die_info):
13577         (read_partial_die): Change it to partial_die_info::read.
13578
13579 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13580
13581         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13582         (fixup_partial_die): Remove declaration.
13583         (scan_partial_symbols): Update.
13584         (partial_die_parent_scope): Likewise.
13585         (partial_die_full_name): Likewise.
13586         (fixup_partial_die): Change it to partial_die_info::fixup.
13587
13588 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13589
13590         * dwarf2read.c (read_partial_die): Update the declaration.
13591         (load_partial_dies): Caller update.
13592         (read_partial_die): Remove one argument abbrev_len.
13593
13594 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13595
13596         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13597         assignment operator.
13598         (load_partial_dies): Use ctor and copy ctor.
13599         (read_partial_die): Update.
13600         (dwarf2_cu::find_partial_die): Use ctor.
13601
13602 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13603
13604         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13605         (find_partial_die_in_comp_unit): Change it to
13606         dwarf2_cu::find_partial_die.
13607         (find_partial_die): Update.
13608
13609 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13610
13611         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13612         is NULL.
13613
13614 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13615
13616         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13617
13618 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13619
13620         * arch/amd64.h: Use common/tdesc.h.
13621         * arch/i386.c: Likewise.
13622         * arch/i386.h: Likewise.
13623         * arch/tic6x.c: Likewise.
13624         * arch/tdesc.h: Move file from here...
13625         * common/tdesc.h: ...to here.
13626         * features/aarch64-core.c: Regenerate.
13627         * features/aarch64-fpu.c: Regenerate.
13628         * features/i386/32bit-avx.c: Regenerate.
13629         * features/i386/32bit-avx512.c: Regenerate.
13630         * features/i386/32bit-core.c: Regenerate.
13631         * features/i386/32bit-linux.c: Regenerate.
13632         * features/i386/32bit-mpx.c: Regenerate.
13633         * features/i386/32bit-pkeys.c: Regenerate.
13634         * features/i386/32bit-sse.c: Regenerate.
13635         * features/i386/64bit-avx.c: Regenerate.
13636         * features/i386/64bit-avx512.c: Regenerate.
13637         * features/i386/64bit-core.c: Regenerate.
13638         * features/i386/64bit-linux.c: Regenerate.
13639         * features/i386/64bit-mpx.c: Regenerate.
13640         * features/i386/64bit-pkeys.c: Regenerate.
13641         * features/i386/64bit-segments.c: Regenerate.
13642         * features/i386/64bit-sse.c: Regenerate.
13643         * features/i386/x32-core.c: Regenerate.
13644         * features/tic6x-c6xp.c: Regenerate.
13645         * features/tic6x-core.c: Regenerate.
13646         * features/tic6x-gp.c: Regenerate.
13647         * target-descriptions.c: Use common/tdesc.h.
13648         * target-descriptions.h: Likewise.
13649
13650 2018-02-24  Tom Tromey  <tom@tromey.com>
13651
13652         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13653         (try_thread_db_load_from_dir, thread_db_load_search): Use
13654         std::string.
13655         (info_auto_load_libthread_db_compare): Return bool.  Change
13656         argument types.
13657         (info_auto_load_libthread_db): Use std::vector, std::string.
13658         Remove cleanups.
13659
13660 2018-02-24  Tom Tromey  <tom@tromey.com>
13661
13662         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13663         std::string.
13664         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13665         std::string*.
13666         * gdbarch.c: Rebuild.
13667         * gdbarch.h: Rebuild.
13668         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13669         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13670         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13671         std::string*.
13672
13673 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13674
13675         * gdbtypes.h (sect_offset): Change type to uint64_t.
13676         (sect_offset_str): New function.
13677         * dwarf2read.c (create_addrmap_from_aranges): Use
13678         sect_offset_str.
13679         (error_check_comp_unit_head): Likewise.
13680         (create_debug_type_hash_table): Likewise.
13681         (read_cutu_die_from_dwo): Likewise.
13682         (init_cutu_and_read_dies): Likewise.
13683         (init_cutu_and_read_dies_no_follow): Likewise.
13684         (process_psymtab_comp_unit_reader): Likewise.
13685         (partial_die_parent_scope): Likewise.
13686         (peek_die_abbrev): Likewise.
13687         (process_queue): Likewise.
13688         (dwarf2_physname): Likewise.
13689         (read_namespace_alias): Likewise.
13690         (read_import_statement): Likewise.
13691         (create_dwo_cu_reader): Likewise.
13692         (create_cus_hash_table): Likewise.
13693         (lookup_dwo_cutu): Likewise.
13694         (inherit_abstract_dies): Likewise.
13695         (read_func_scope): Likewise.
13696         (read_call_site_scope): Likewise.
13697         (dwarf2_add_member_fn): Likewise.
13698         (read_common_block): Likewise.
13699         (read_module_type): Likewise.
13700         (read_typedef): Likewise.
13701         (read_subrange_type): Likewise.
13702         (load_partial_dies): Likewise.
13703         (read_partial_die): Likewise.
13704         (find_partial_die): Likewise.
13705         (read_str_index): Likewise.
13706         (dwarf2_string_attr): Likewise.
13707         (build_error_marker_type): Likewise.
13708         (lookup_die_type): Likewise.
13709         (dump_die_shallow): Likewise.
13710         (follow_die_ref): Likewise.
13711         (dwarf2_fetch_die_loc_sect_off): Likewise.
13712         (dwarf2_fetch_constant_bytes): Likewise.
13713         (follow_die_sig): Likewise.
13714         (get_signatured_type): Likewise.
13715         (get_DW_AT_signature_type): Likewise.
13716         (dwarf2_find_containing_comp_unit): Likewise.
13717         (set_die_type): Likewise.
13718
13719 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13720
13721         * arch/aarch64.c: Include "common-defs.h".
13722         * arch/amd64.c: Likewise.
13723         * arch/i386.c: Likewise.
13724
13725 2018-02-21  Tom Tromey  <tom@tromey.com>
13726
13727         * value.h: (extract_field_op): Update.
13728         * eval.c (extract_field_op): Return a const char *.
13729         * expression.h (parse_expression_for_completion): Update.
13730         * completer.c (complete_expression): Update.
13731         (add_struct_fields): Make fieldname const.
13732         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13733         (mark_completion_tag, parse_exp_in_context_1): Update.
13734         (parse_expression_for_completion): Change "name" to
13735         unique_xmalloc_ptr*.
13736
13737 2018-02-21  Tom Tromey  <tom@tromey.com>
13738
13739         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13740
13741 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13742
13743         * avr-tdep.c (avr_read_pc): Change parameter type to
13744         readable_regcache.
13745         * gdbarch.sh (read_pc): Likewise.
13746         * gdbarch.c: Re-generated.
13747         * gdbarch.h: Re-generated.
13748         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13749         readable_regcache.
13750         * ia64-tdep.c (ia64_read_pc): Likewise.
13751         * mips-tdep.c (mips_read_pc): Likewise.
13752         * spu-tdep.c (spu_read_pc): Likewise.
13753
13754 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13755
13756         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13757         * regcache-dump.c: New file.
13758         * regcache.c: Move register_dump to regcache-dump.c.
13759         (maintenance_print_registers): Likewise.
13760         (maintenance_print_raw_registers): Likewise.
13761         (maintenance_print_cooked_registers): Likewise.
13762         (maintenance_print_register_groups): Likewise.
13763         (maintenance_print_remote_registers): Likewise.
13764         (_initialize_regcache): Likewise.
13765         * regcache.h (register_dump): Moved from regcache.c.
13766
13767 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13768
13769         * regcache.c (regcache::regcache): Update.
13770         (regcache::invalidate): Move it to detached_regcache::invalidate.
13771         (get_thread_arch_aspace_regcache): Update.
13772         (regcache::raw_update): Update.
13773         (regcache::cooked_read): Remove some code.
13774         (regcache::cooked_read_value): Likewise.
13775         (regcache::raw_write): Remove assert on m_readonly_p.
13776         (regcache::raw_supply_integer): Move it to
13777         detached_regcache::raw_supply_integer.
13778         (regcache::raw_supply_zeroed): Likewise.
13779         * regcache.h (detached_regcache) <raw_supply_integer>: New
13780         declaration.
13781         <raw_supply_zeroed, invalidate>: Likewise.
13782         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13783         <invalidate>: Likewise.
13784         <m_readonly_p>: Removed.
13785
13786 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13787
13788         * infcmd.c (get_return_value): Let stop_regs point to
13789         get_current_regcache.
13790         * regcache.c (regcache::regcache): Remove.
13791         (register_dump_reg_buffer): New class.
13792         (regcache_print): Adjust.
13793         * regcache.h (regcache): Remove constructors.
13794
13795 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13796
13797         * regcache.c (class register_dump): New class.
13798         (register_dump_regcache, register_dump_none): New class.
13799         (register_dump_remote, register_dump_groups): New class.
13800         (regcache_print): Update.
13801         * regcache.h (regcache_dump_what): Move it to regcache.c.
13802         (regcache) <dump>: Remove.
13803
13804 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13805
13806         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13807          reg_buffer_rw *.
13808         (jit_unwind_reg_set_impl): Call raw_supply.
13809         (jit_frame_sniffer): Use reg_buffer_rw.
13810         * record-full.c (record_full_core_regbuf): Change its type.
13811         (record_full_core_open_1): Use reg_buffer_rw.
13812         (record_full_close): Likewise.
13813         (record_full_core_fetch_registers): Use regcache->raw_supply.
13814         (record_full_core_store_registers): Likewise.
13815         * regcache.c (regcache::get_register_status): Move it to
13816         reg_buffer.
13817         (regcache_raw_set_cached_value): Remove.
13818         (regcache::raw_set_cached_value): Remove.
13819         (regcache::raw_write): Call raw_supply.
13820         (regcache::raw_supply): Move it to reg_buffer_rw.
13821         * regcache.h (regcache_raw_set_cached_value): Remove.
13822         (reg_buffer_rw): New class.
13823
13824 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13825
13826         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13827         readonly_detached_regcache.
13828         (dummy_frame_prev_register): Use regcache->cooked_read.
13829         * frame.c (frame_save_as_regcache): Change return type.
13830         (frame_pop): Update.
13831         * frame.h (frame_save_as_regcache): Update declaration.
13832         * inferior.h (get_infcall_suspend_state_regcache): Update
13833         declaration.
13834         * infrun.c (infcall_suspend_state) <registers>: use
13835         readonly_detached_regcache.
13836         (save_infcall_suspend_state): Don't use regcache_dup.
13837         (get_infcall_suspend_state_regcache): Change return type.
13838         * linux-fork.c (struct fork_info) <savedregs>: Change to
13839         readonly_detached_regcache.
13840         <pc>: New field.
13841         (fork_save_infrun_state): Don't use regcache_dup.
13842         (info_checkpoints_command): Adjust.
13843         * mi/mi-main.c (register_changed_p): Update declaration.
13844         (mi_cmd_data_list_changed_registers): Use
13845         readonly_detached_regcache.
13846         (register_changed_p): Change parameter type to
13847         readonly_detached_regcache.
13848         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13849         readonly_detached_regcache.
13850         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13851         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13852         New.
13853         (regcache::save): Move it to reg_buffer.
13854         (regcache::restore): Change parameter type.
13855         (regcache_dup): Remove.
13856         * regcache.h (reg_buffer) <save>: New method.
13857         (readonly_detached_regcache): New class.
13858         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13859         readonly_detached_regcache.
13860         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13861
13862 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13863
13864         * frame.c (frame_save_as_regcache): Use regcache method save.
13865         (frame_pop): Use regcache method restore.
13866         * infrun.c (restore_infcall_suspend_state): Likewise.
13867         * linux-fork.c (fork_load_infrun_state): Likewise.
13868         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13869         save.
13870         * regcache.c (regcache_save): Remove.
13871         (regcache::restore): More asserts.
13872         (regcache_cpy): Remove.
13873         * regcache.h (regcache_save): Remove the declaration.
13874         (regcache::restore): Move from private to public.
13875         Remove the friend declaration of regcache_cpy.
13876         (regcache_cpy): Remove declaration.
13877
13878 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13879
13880         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13881         parameter type to 'readable_regcache *'.
13882         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13883         * arm-tdep.c (arm_neon_quad_read): Likewise.
13884         (arm_pseudo_read): Likewise.
13885         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13886         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13887         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13888         * gdbarch.c: Re-generated.
13889         * gdbarch.h: Re-generated.
13890         * gdbarch.sh (pseudo_register_read): Change parameter type to
13891         'readable_regcache *'.
13892         (pseudo_register_read_value): Likewise.
13893         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13894         (h8300_pseudo_register_read): Likewise.
13895         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13896         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13897         (i386_pseudo_register_read_into_value): Likewise.
13898         (i386_pseudo_register_read_value): Likewise.
13899         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13900         declaration.
13901         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13902         * m32c-tdep.c (m32c_raw_read): Likewise.
13903         (m32c_read_flg): Likewise.
13904         (m32c_banked_register): Likewise.
13905         (m32c_banked_read): Likewise.
13906         (m32c_sb_read): Likewise.
13907         (m32c_part_read): Likewise.
13908         (m32c_cat_read): Likewise.
13909         (m32c_r3r2r1r0_read): Likewise.
13910         (m32c_pseudo_register_read): Likewise.
13911         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13912         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13913         (mep_pseudo_cr64_read): Likewise.
13914         (mep_pseudo_register_read): Likewise.
13915         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13916         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13917         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13918         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13919         (regcache::cooked_read): Likewise.
13920         (regcache::cooked_read_value): Likewise.
13921         (regcache_cooked_read_signed):
13922         (regcache::cooked_read): Likewise.
13923         * regcache.h (readable_regcache): New class.
13924         (regcache): Inherit readable_regcache.  Move some methods to
13925         readable_regcache.
13926         * rl78-tdep.c (rl78_pseudo_register_read): Change
13927         parameter type to 'readable_regcache *'.
13928         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13929         (e500_pseudo_register_read): Change parameter type to
13930         'readable_regcache *'.
13931         (dfp_pseudo_register_read): Likewise.
13932         (vsx_pseudo_register_read): Likewise.
13933         (efpr_pseudo_register_read): Likewise.
13934         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13935         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13936         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13937         (sh64_pseudo_register_read): Likewise.
13938         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13939         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13940         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13941         (spu_pseudo_register_read): Likewise.
13942         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13943         (xtensa_pseudo_register_read): Likewise.
13944
13945 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13946
13947         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13948         (regcache::arch): Move it to reg_buffer::arch.
13949         (regcache::register_buffer): Likewise.
13950         (regcache::assert_regnum): Likewise.
13951         (regcache::num_raw_registers): Likewise.
13952         * regcache.h (reg_buffer): New class.
13953         (regcache): Inherit reg_buffer.
13954
13955 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13956
13957         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13958         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13959
13960 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13961
13962         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13963
13964 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13965
13966         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13967         (SFILES): Remove common/*.c files.
13968         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13969         * common/common.host: Add common reference.
13970         * configure.ac: Likewise.
13971         * configure: Regenerate.
13972
13973 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13974
13975         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13976         (block_initialize_namespace): Use new.
13977         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13978         (dwarf2_free_objfile): Use delete.
13979         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13980         (copy_type_recursive): Use new.
13981         * gdb_obstack.h (allocate_on_obstack): New.
13982
13983 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13984
13985         PR gdb/22849
13986         * inferior.c (exit_inferior_1): Reset inf->control.
13987
13988 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13989
13990         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13991         declaration.
13992
13993 2018-02-14  Pedro Alves  <palves@redhat.com>
13994
13995         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13996         frame_cleanup_after_sniffer on exception.
13997
13998 2018-02-14  Tom Tromey  <tom@tromey.com>
13999
14000         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14001         const.
14002         (solib_bfd_open): Make pathname const.
14003         * solib.c (solib_bfd_open): Make pathname const.
14004         * solib-spu.c (spu_bfd_fopen): Make name const.
14005         (spu_bfd_open): Make pathname const.
14006         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14007         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14008
14009 2018-02-14  Tom Tromey  <tom@tromey.com>
14010
14011         * symfile.c (symfile_bfd_open): Update.
14012         * source.h (openp, source_full_path_of, find_and_open_source):
14013         Change argument type to unique_xmalloc_ptr.
14014         * source.c (openp): Take a unique_xmalloc_ptr.
14015         (source_full_path_of, find_and_open_source): Likewise.
14016         (open_source_file, symtab_to_fullname): Update.
14017         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14018         unique_xmalloc_ptr.
14019         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14020         (exec_file_find): Update.
14021         * psymtab.c (psymtab_to_fullname): Update.
14022         * nto-tdep.h (nto_find_and_open_solib): Update.
14023         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14024         unique_xmalloc_ptr.
14025         * exec.c (exec_file_attach): Update.
14026         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14027         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14028
14029 2018-02-14  Tom Tromey  <tom@tromey.com>
14030
14031         * solib.c: Include source.h.
14032         * nto-tdep.c: Include source.h.
14033         * mi/mi-cmd-env.c: Include source.h.
14034         * infcmd.c: Include source.h.
14035         * exec.c: Include source.h.
14036         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14037         (add_path, directory_switch, source_path, init_source_path): Move
14038         declarations...
14039         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14040         (add_path, directory_switch, source_path, init_source_path):
14041         ...here.
14042
14043 2018-02-14  Tom Tromey  <tom@tromey.com>
14044
14045         * solist.h (exec_file_find, solib_find): Return
14046         unique_xmalloc_ptr.
14047         (solib_bfd_fopen): Take a const char *.
14048         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14049         (exec_file_find, solib_find): Likewise.
14050         (solib_bfd_fopen): Do not take ownership of "pathname".
14051         (solib_bfd_open): Use unique_xmalloc_ptr.
14052         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14053         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14054         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14055         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14056
14057 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14058
14059         * ada-lang.c (name_match_type_from_name): Remove reference to
14060         ada_name_for_lookup in function's documentation.
14061         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14062
14063 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14064
14065         * defs.h (enum openp_flags): New enum.
14066         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14067         Move to enum openp_flags.
14068         (openp_flags): New enum flags.
14069         (openp): Change parameter type to openp_flags.
14070         * source.c (openp): Change parameter type to openp_flags.
14071         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14072         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14073
14074 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14075
14076         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14077         per-command.
14078
14079 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14080
14081         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14082         into...
14083         (class dwarf2_queue_guard): ...the destructor of this new class.
14084         (dw2_do_instantiate_symtab): Create instance of the new class
14085         dwarf2_queue_guard, remove cleanup.
14086
14087 2018-02-09  Tom Tromey  <tom@tromey.com>
14088
14089         * source.c (find_source_lines): Don't reference past the end of
14090         the vector.
14091
14092 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14093
14094         * remote.c (remote_btrace_maybe_reopen): Change error message.
14095         * btrace.c (btrace_enable): Likewise.
14096         (parse_xml_btrace): Likewise.
14097         (parse_xml_btrace_conf): Likewise.
14098
14099 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14100
14101         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14102         (linux_enable_pt, linux_enable_bts): Call
14103         diagnose_perf_event_open_fail.
14104
14105 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14106
14107         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14108         Remove parameter and change return type.  Update callers.  Move it.
14109         (linux_enable_bts, linux_enable_pt): Improve error message.
14110         (linux_enable_pt): Remove zero buffer size check.
14111         (linux_enable_btrace): Improve error messages.  Remove NULL return
14112         check.
14113
14114 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14115
14116         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14117         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14118         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14119         (linux_supports_pt, linux_supports_btrace): Remove.
14120         (linux_enable_bts): Call cpu_supports_bts.
14121         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14122         * remote.c (remote_supports_btrace): Remove.
14123         (init_remote_ops): Remove remote_supports_btrace.
14124         * target-delegates.c: Regenerated.
14125         * target.c (target_supports_btrace): Remove.
14126         * target.h (target_ops) <to_supports_btrace>: Remove
14127         (target_supports_btrace): Remove.
14128         * x86-linux-nat.c (x86_linux_create_target): Remove
14129         linux_supports_btrace.
14130
14131 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14132
14133         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14134         btrace failed.
14135         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14136         exception and use message in own exception.
14137
14138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14139
14140         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14141         (perf_event_pt_event_type): Use gdb_file_up.
14142         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14143         scoped_fd, and scoped_mmap.
14144
14145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14146
14147         * common/scoped_mmap.h: New.
14148         * unittests/scoped_mmap-selftest.c: New.
14149         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14150         unittests/scoped_mmap-selftest.c.
14151
14152 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14153
14154         * common/scoped_fd.h: New.
14155         * unittests/scoped_fd-selftest.c: New.
14156         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14157         unittests/scoped_fd-selftest.c.
14158
14159 2018-02-09  Tom Tromey  <tom@tromey.com>
14160
14161         * auto-load.c (auto_load_section_scripts): Use
14162         gdb::unique_xmalloc_ptr.
14163
14164 2018-02-09  Tom Tromey  <tom@tromey.com>
14165
14166         * auto-load.c (execute_script_contents): Use std::string.
14167
14168 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14169
14170         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14171         Python function, rather than a new command.
14172
14173 2018-02-08  Tom Tromey  <tom@tromey.com>
14174
14175         * solib.c (solib_find_1): Use std::string.
14176         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14177
14178 2018-02-08  Tom Tromey  <tom@tromey.com>
14179
14180         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14181
14182 2018-02-08  Tom Tromey  <tom@tromey.com>
14183
14184         * source.c (find_source_lines): Use gdb::def_vector.
14185
14186 2018-02-08  Tom Tromey  <tom@tromey.com>
14187
14188         * macrocmd.c (struct temporary_macro_definition): New.
14189         (macro_define_command): Use temporary_macro_definition.  Remove
14190         cleanups.
14191         (free_macro_definition_ptr): Remove.
14192
14193 2018-02-08  Tom Tromey  <tom@tromey.com>
14194
14195         * macroexp.c (maybe_expand): Use std::string.
14196
14197 2018-02-08  Tom Tromey  <tom@tromey.com>
14198
14199         * macroexp.c (struct macro_buffer): Add initializers for some
14200         members.
14201         (init_buffer, init_shared_buffer, free_buffer)
14202         (free_buffer_return_text): Remove.
14203         (macro_buffer): New constructors.
14204         (~macro_buffer): New destructor.
14205         (macro_buffer::set_shared): New method.
14206         (macro_buffer::resize_buffer, macro_buffer::appendc)
14207         (macro_buffer::appendmem): Now methods, not free functions.
14208         (set_token, append_tokens_without_splicing, stringify)
14209         (macro_stringify): Update.
14210         (gather_arguments): Change return type.  Remove argc_p argument,
14211         add args_ptr argument.  Use std::vector.
14212         (substitute_args): Remove argc argument.  Accept std::vector.
14213         (expand): Update.  Use std::vector.
14214         (scan, macro_expand, macro_expand_next): Update.
14215
14216 2018-02-08  Tom Tromey  <tom@tromey.com>
14217
14218         * symtab.c (default_collect_symbol_completion_matches_break_on):
14219         Use unique_xmalloc_ptr.
14220         * macroscope.h: (sal_macro_scope, user_macro_scope)
14221         (default_macro_scope): Return unique_xmalloc_ptr.
14222         * macroscope.c (sal_macro_scope, user_macro_scope)
14223         (default_macro_scope): Return unique_xmalloc_ptr.
14224         * macroexp.h (macro_expand, macro_expand_once): Return
14225         unique_xmalloc_ptr.
14226         * macroexp.c (macro_expand, macro_expand_once): Return
14227         unique_xmalloc_ptr.
14228         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14229         (info_macro_command, info_macros_command): Use
14230         unique_xmalloc_ptr.
14231         * compile/compile-c-support.c (write_macro_definitions): Use
14232         unique_xmalloc_ptr.
14233         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14234
14235 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14236
14237         * value.c (value_static_field): Assign field type instead of
14238         containing type when returning an optimized out value.
14239
14240 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14241
14242         * ft32-tdep.c (ft32_read_pc): Remove.
14243         (ft32_write_pc): Remove.
14244         (ft32_gdbarch_init): Update.
14245         * m32r-tdep.c (m32r_read_pc): Remove.
14246         (m32r_gdbarch_init): Update.
14247         * mep-tdep.c (mep_read_pc): Remove.
14248         (mep_gdbarch_init): Update.
14249         * microblaze-tdep.c (microblaze_write_pc): Remove.
14250         (microblaze_gdbarch_init): Update.
14251         * mn10300-tdep.c (mn10300_read_pc): Remove.
14252         (mn10300_write_pc): Remove.
14253         (mn10300_gdbarch_init): Update.
14254         * moxie-tdep.c (moxie_read_pc): Remove.
14255         (moxie_write_pc): Remove.
14256         (moxie_gdbarch_init): Update.
14257
14258 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14259
14260         * expprint.c (print_subexp_standard): Handle
14261         OP_F77_UNDETERMINED_ARGLIST.
14262         (dump_subexp_body_standard): Likewise.
14263
14264 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14265
14266         * target-descriptions.c (tdesc_element_visitor) Add empty
14267         implementations.
14268         (tdesc_type): Move make_gdb_type from here.
14269         (tdesc_type_builtin): Likewise.
14270         (tdesc_type_vector): Likewise.
14271         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14272         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14273         (make_gdb_type_union): Likewise.
14274         (make_gdb_type_flags): Likewise.
14275         (make_gdb_type_enum): Likewise.
14276         (make_gdb_type): New function.
14277         (tdesc_register_type): Use static make_gdb_type.
14278
14279 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14280
14281         * infcmd.c (default_print_one_register_info): Align natural-format
14282         column values consistently one under another.
14283         (pad_to_column): New function.
14284
14285 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14286
14287         * dwarf2read.c (dwarf2_physname): Move commment.
14288
14289 2018-02-01  Leszek Swirski  <leszeks@google.com>
14290
14291         * varobj.c (varobj_formatted_print_options): Allow recursive
14292         pretty printing if pretty printing is enabled.
14293
14294 2018-02-01  Leszek Swirski  <leszeks@google.com>
14295
14296         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14297         names after a structop as a filename.
14298
14299 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14300
14301         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14302         (arm_record_coproc_data_proc): Likewise.
14303
14304 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14305
14306         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14307
14308 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14309
14310         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14311         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14312
14313 2018-01-31  Pedro Alves  <palves@redhat.com>
14314
14315         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14316         * inflow.c (child_terminal_save_inferior): Wrap reference to
14317         tcgetpgrp in HAVE_TERMIOS_H.
14318         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14319         _WIN32.
14320         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14321         always iterate over all inferiors.
14322         (gdbsim_cntrl_c): Adjust.
14323         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14324
14325 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14326
14327         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14328         index type is objfile-owned if the element type is as well.
14329
14330 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14331
14332         GDB 8.1 released.
14333
14334 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14335
14336         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14337         "features/s390x-linux64.c".
14338         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14339         s390_linux32 and s390x_linux64.
14340         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14341         default tdesc.
14342         * s390-tdep.c: Include "features/s390-linux32.c" and
14343         "features/s390x-linux64.c".
14344         (s390_tdesc_valid): Add check for tdesc_has_registers.
14345         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14346         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14347         tdesc_s390x_linux64.
14348         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14349         tdesc_s390x_linux64 to...
14350         * s390-tdep.h: ...here.
14351
14352 2018-01-30  Pedro Alves  <palves@redhat.com>
14353
14354         PR gdb/13211
14355         * config.in, configure: Regenerate.
14356         * configure.ac: Check for getpgid.
14357         * go32-nat.c (go32_pass_ctrlc): New.
14358         (go32_target): Install it.
14359         * inf-child.c (inf_child_target): Install
14360         child_terminal_save_inferior, child_pass_ctrlc and
14361         child_interrupt.
14362         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14363         (inf_ptrace_target): No longer install it.
14364         * infcmd.c (interrupt_target_1): Adjust.
14365         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14366         (child_interrupt): Declare.
14367         (inferior::terminal_state): New.
14368         * inflow.c (struct terminal_info): Update comments.
14369         (inferior_process_group): Delete.
14370         (terminal_is_ours): Delete.
14371         (gdb_tty_state): New.
14372         (child_terminal_init): Adjust.
14373         (is_gdb_terminal, sharing_input_terminal_1)
14374         (sharing_input_terminal): New functions.
14375         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14376         Set the process's actual process group in the foreground if
14377         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14378         mark terminal as the inferior's if not sharing GDB's terminal.
14379         Don't check attach_flag.
14380         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14381         pass down a target_terminal_state.
14382         (child_terminal_save_inferior): New, factored out from ...
14383         (child_terminal_ours_1): ... this.  Handle
14384         target_terminal_state::is_ours_for_output.
14385         (child_interrupt, child_pass_ctrlc): New.
14386         (inflow_inferior_exit): Clear the inferior's terminal_state.
14387         (copy_terminal_info): Copy the inferior's terminal state.
14388         (_initialize_inflow): Remove reference to terminal_is_ours.
14389         * inflow.h (inferior_process_group): Delete.
14390         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14391         * procfs.c (procfs_target): Don't install procfs_interrupt.
14392         (procfs_interrupt): Delete.
14393         * remote.c (remote_serial_quit_handler): Adjust.
14394         (remote_interrupt): Remove ptid parameter.  Adjust.
14395         * target-delegates.c: Regenerate.
14396         * target.c: Include "terminal.h".
14397         (target_terminal::terminal_state): Rename to ...
14398         (target_terminal::m_terminal_state): ... this.
14399         (target_terminal::init): Adjust.
14400         (target_terminal::inferior): Adjust to per-inferior
14401         terminal_state.
14402         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14403         (target_terminal::ours, target_terminal::ours_for_output): Use
14404         target_terminal_is_ours_kind.
14405         (target_interrupt): Remove ptid parameter.  Adjust.
14406         (default_target_pass_ctrlc): Adjust.
14407         * target.h (target_ops::to_terminal_save_inferior): New field.
14408         (target_ops::to_interrupt): Remove ptid_t parameter.
14409         (target_interrupt): Remove ptid_t parameter.  Update comment.
14410         (target_pass_ctrlc): Update comment.
14411         * target/target.h (target_terminal_state): New scoped enum,
14412         factored out of ...
14413         (target_terminal::terminal_state): ... here.
14414         (target_terminal::inferior): Update comments.
14415         (target_terminal::restore_inferior): New.
14416         (target_terminal::is_inferior, target_terminal::is_ours)
14417         (target_terminal::is_ours_for_output): Adjust.
14418         (target_terminal::scoped_restore_terminal_state): Adjust to
14419         rename, and call restore_inferior() instead of inferior().
14420         (target_terminal::scoped_restore_terminal_state::m_state): Change
14421         type.
14422         (target_terminal::terminal_state): Rename to ...
14423         (target_terminal::m_terminal_state): ... this and change type.
14424
14425 2018-01-30  Pedro Alves  <palves@redhat.com>
14426
14427         * linux-nat.c (wait_for_signal): New function.
14428         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14429         directly.
14430         (async_terminal_is_ours)
14431         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14432         (linux_nat_add_target): Don't override
14433         to_terminal_inferior/to_terminal_ours.
14434
14435 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14436
14437         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14438
14439 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14440
14441         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14442         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14443         dwarf2_per_objfile_free here.
14444         (dwarf2_per_objfile_free): Remove.
14445         (_initialize_dwarf2_read): Don't register
14446         dwarf2_per_objfile_free as a registry cleanup.
14447
14448 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14449
14450         Avoid compilation errors in MinGW native builds
14451
14452         The error is triggered by including python-internal.h, and the
14453         error message is:
14454
14455              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14456                       from build-gnulib/import/math.h:27,
14457                       from d:/usr/Python26/include/pyport.h:235,
14458                       from d:/usr/Python26/include/Python.h:58,
14459                       from python/python-internal.h:94,
14460                       from python/py-arch.c:24:
14461              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14462         using ::hypot;
14463                 ^~~~~
14464
14465         This happens because Python headers define 'hypot' to expand t
14466         '_hypot' in the Windows builds.
14467         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14468         'hypoth'.  This avoids a compilation error.
14469
14470 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14471
14472         * MAINTAINERS (Write After Approval): Fix ordering.
14473
14474 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14475
14476         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14477
14478 2018-01-26  Alan Modra  <amodra@gmail.com>
14479
14480         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14481         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14482         Remove nop.  Make const.  Comment.
14483         (powerpc32_plt_stub_so_2): New.
14484         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14485         Correct count.  Update uses.
14486         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14487         Move common code reading PLT entry word.  Correct
14488         powerpc32_plt_stub PLT address calculation.
14489         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14490         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14491         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14492         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14493         (ppc64_standard_linkage8): Likewise.
14494         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14495         Correct insns description.
14496         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14497
14498 2018-01-24  Pedro Alves  <palves@redhat.com>
14499
14500         GCC PR libstdc++/83906
14501         * gdbtypes.c (operator==(const dynamic_prop &,
14502         const dynamic_prop &)): New.
14503         (operator==(const range_bounds &, const range_bounds &)): New.
14504         (check_types_equal): Use them instead of memcmp.
14505         * gdbtypes.h (operator==(const dynamic_prop &,
14506         const dynamic_prop &)): Declare.
14507         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14508         (operator==(const range_bounds &, const range_bounds &)): Declare.
14509         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14510
14511 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14512
14513         * s390-linux-tdep.c (s390_record_address_mask)
14514         (s390_record_calc_disp_common, s390_record_calc_disp)
14515         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14516         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14517         (s390_process_record): Move to s390-tdep.c.
14518         (s390_linux_init_abi_any): Adjust.
14519         * s390-tdep.c (s390_record_address_mask)
14520         (s390_record_calc_disp_common, s390_record_calc_disp)
14521         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14522         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14523         (s390_process_record): Moved from s390-linux-tdep.c
14524         (s390_gdbarch_init): Adjust.
14525
14526 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14527
14528         * s390-linux-nat.c (s390-tdep.h): New include.
14529         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14530         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14531         (ALLDEPFILES): Add s390-tdep.c.
14532         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14533         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14534         * s390-tdep.h: ...this.  New file.
14535         * s390-linux-tdep.c (s390-tdep.h): New include.
14536         (_initialize_s390_tdep): Rename to...
14537         (_initialize_s390_linux_tdep): ...this and adjust.
14538         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14539         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14540         s390-tdep.h.
14541         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14542         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14543         (s390_is_partial_instruction, s390_software_single_step)
14544         (is_non_branch_ril, s390_displaced_step_copy_insn)
14545         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14546         (s390_prologue_data, s390_addr, s390_store, s390_load)
14547         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14548         (s390_register_call_saved, s390_guess_tracepoint_registers)
14549         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14550         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14551         (s390_pseudo_register_name, s390_pseudo_register_type)
14552         (s390_pseudo_register_read, s390_pseudo_register_write)
14553         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14554         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14555         (s390_addr_bits_remove, s390_address_class_type_flags)
14556         (s390_address_class_type_flags_to_name)
14557         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14558         (s390_function_arg_float, s390_function_arg_vector)
14559         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14560         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14561         (s390_frame_align, s390_register_return_value, s390_return_value)
14562         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14563         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14564         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14565         (s390_trad_frame_prev_register, s390_unwind_cache)
14566         (s390_prologue_frame_unwind_cache)
14567         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14568         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14569         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14570         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14571         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14572         (s390_frame_base_address, s390_local_base_address)
14573         (s390_frame_base, s390_gcc_target_options)
14574         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14575         (s390_validate_reg_range, s390_tdesc_valid)
14576         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14577         * s390-tdep.c: ...this.  New file.
14578
14579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14580
14581         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14582         (s390_process_record, s390_gdbarch_tdep_alloc)
14583         (s390_linux_init_abi_any): Use/set new hook.
14584
14585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14586
14587         * s390-linux-tdep.c (osabi.h): New include.
14588         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14589         (s390_linux_init_abi_any): New functions.
14590         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14591
14592 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14593
14594         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14595         tdesc_has_registers check
14596
14597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14598
14599         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14600         (s390_validate_reg_range): New macro.
14601         (s390_gdbarch_init): Adjust.
14602
14603 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14604
14605         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14606         (s390_gdbarch_tdep_alloc): Adjust.
14607         (s390_gdbarch_init): Adjust.
14608
14609 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14610
14611         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14612         <have_tdb>: Change type to bool.
14613         (s390_gdbarch_tdep_alloc): Adjust.
14614         (s390_gdbarch_init): Adjust.
14615
14616 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14617
14618         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14619         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14620         (s390_gdbarch_tdep_alloc): New function.
14621         (s390_gdbarch_init): Allocate tdep at start and use its fields
14622         instead of separate variables.
14623
14624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14625
14626         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14627         when looking for cached gdbarch and add comment for remaining.
14628
14629 2018-01-22  Pedro Alves  <palves@redhat.com>
14630             Sergio Durigan Junior  <sergiodj@redhat.com>
14631
14632         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14633         case.
14634
14635 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14636
14637         * MAINTAINERS: Update my company e-mail address.
14638
14639 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14640
14641         * regcache.c (cooked_write_test): New function.
14642         (_initialize_regcache): Register the test.
14643
14644 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14645
14646         * ia64-tdep.c (ia64_pseudo_register_read): Call
14647         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14648         * m32c-tdep.c (m32c_cat_read): Likewise.
14649         (m32c_r3r2r1r0_read): Likewise.
14650         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14651         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14652
14653 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14654
14655         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14656         method raw_read instead of regcache_raw_read.
14657         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14658         * arm-tdep.c (arm_neon_quad_read): Likewise.
14659         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14660         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14661         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14662         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14663         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14664         (i386_pseudo_register_read_into_value): Likewise.
14665         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14666         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14667         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14668         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14669         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14670         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14671         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14672         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14673         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14674
14675 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14676
14677         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14678         * configure.tgt: Remove target mt.
14679         * mt-tdep.c: Remove.
14680         * regcache.c (cooked_read_test): Remove the check for mt.
14681
14682 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14683
14684         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14685         instead of gdbarch_pseudo_register_read_value.
14686
14687 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14688
14689         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14690         language is Ada.
14691
14692 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14693
14694         * linespec.c (create_sals_line_offset): Remove code that preserved
14695         the symtab_and_line's line number.
14696
14697 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14698
14699         * varobj.c (varobj_create): Don't set valid_block when creating a
14700         floating varobj.
14701
14702 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14703
14704         * varobj.c (varobj_create): Remove out of date comment.
14705
14706 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14707
14708         PR mi/20395
14709         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14710         updating innermost block.
14711         * parse.c (innermost_block_tracker::update): Take extra type
14712         parameter, and check types match before updating innermost block.
14713         (write_dollar_variable): Update innermost block for registers.
14714         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14715         (innermost_block_tracker::innermost_block_tracker): Initialise
14716         m_types member.
14717         (innermost_block_tracker::reset): Take type parameter.
14718         (innermost_block_tracker::update): Take type parameter, and pass
14719         type through as needed.
14720         (innermost_block_tracker::m_types): New member.
14721         * varobj.c (varobj_create): Pass type when reseting innermost
14722         block.
14723
14724 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14725
14726         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14727         * ada-lang.c (resolve_subexp): Likewise.
14728         * breakpoint.c (set_breakpoint_condition) Likewise.
14729         (watch_command_1) Likewise.
14730         * c-exp.y (variable): Likewise.
14731         * d-exp.y (PrimaryExpression): Likewise.
14732         * f-exp.y (variable): Likewise.
14733         * go-exp.y (variable): Likewise.
14734         * m2-exp.y (variable): Likewise.
14735         * objfiles.c (objfile::~objfile): Likewise.
14736         * p-exp.y (variable): Likewise.
14737         * parse.c (innermost_block): Change type.
14738         * parser-defs.h (class innermost_block_tracker): New.
14739         (innermost_block): Change to innermost_block_tracker.
14740         * printcmd.c (display_command): Switch to innermost_block API.
14741         (do_one_display): Likewise.
14742         * rust-exp.y (do_one_display): Likewise.
14743         * symfile.c (clear_symtab_users): Likewise.
14744         * varobj.c (varobj_create): Switch to innermost_block API, replace
14745         use of innermost_block with block stored on varobj object.
14746
14747 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14748
14749         * expression.h (innermost_block): Remove declaration.
14750         * varobj.c: Add 'parser-defs.h' include.
14751
14752 2018-01-19  Tom Tromey  <tom@tromey.com>
14753
14754         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14755         symbols in the static and global blocks.
14756
14757 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14758
14759         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14760         gdb_ptrace.h, and move including gdb_wait.h ...
14761         * nat/linux-ptrace.h: ... to here.
14762
14763 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14764
14765         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14766         inf_ptrace_detach_success.
14767         (inf_ptrace_detach_success): Add inferior parameter, use it
14768         instead of inferior_ptid, pass it to detach_inferior.
14769         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14770         parameter.
14771         * inferior.c (detach_inferior): Add overload that takes an
14772         inferior object.
14773         * inferior.h (detach_inferior): Likewise.
14774         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14775         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14776         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14777
14778 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14779
14780         * target.h (struct target_ops) <to_detach>: Add inferior
14781         parameter.
14782         (target_detach): Likewise.
14783         * target.c (dispose_inferior): Pass inferior down.
14784         (target_detach): Pass inferior down.  Assert that it is equal to
14785         the current inferior.
14786         * aix-thread.c (aix_thread_detach): Pass inferior down.
14787         * corefile.c (core_file_command): Pass current_inferior() down.
14788         * corelow.c (core_detach): Add inferior parameter.
14789         * darwin-nat.c (darwin_detach): Likewise.
14790         * gnu-nat.c (gnu_detach): Likewise.
14791         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14792         * infcmd.c (detach_command): Pass current_inferior() down to
14793         target_detach.
14794         * infrun.c (follow_fork_inferior): Pass parent_inf to
14795         target_detach.
14796         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14797         target_detach.
14798         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14799         * linux-thread-db.c (thread_db_detach): Likewise.
14800         * nto-procfs.c (procfs_detach): Likewise.
14801         * procfs.c (procfs_detach): Likewise.
14802         * record.c (record_detach): Likewise.
14803         * record.h (struct inferior): Forward-declare.
14804         (record_detach): Add inferior parameter.
14805         * remote-sim.c (gdbsim_detach): Likewise.
14806         * remote.c (remote_detach_1): Likewise.
14807         (remote_detach): Likewise.
14808         (extended_remote_detach): Likewise.
14809         * sol-thread.c (sol_thread_detach): Likewise.
14810         * target-debug.h (target_debug_print_inferior_p): New macro.
14811         * target-delegates.c: Re-generate.
14812         * top.c (kill_or_detach): Pass inferior down to target_detach.
14813         * windows-nat.c (windows_detach): Add inferior parameter.
14814
14815 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14816
14817         * target.h (struct target_ops) <to_detach>: Remove args
14818         parameter.
14819         (target_detach): Likewise.
14820         * target.c (dispose_inferior): Adjust.
14821         (target_detach): Remove args parameter, adjust.
14822         * aix-thread.c (aix_thread_detach): Adjust.
14823         * corefile.c (core_file_command): Adjust.
14824         * corelow.c (core_detach): Adjust.
14825         * darwin-nat.c (darwin_detach): Adjust.
14826         * gnu-nat.c (gnu_detach): Adjust.
14827         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14828         * infcmd.c (detach_command): Adjust
14829         * infrun.c (follow_fork_inferior): Adjust.
14830         (handle_vfork_child_exec_or_exit): Adjust.
14831         * linux-fork.c (linux_fork_detach): Remove args parameter.
14832         * linux-fork.h (linux_fork_detach): Likewise.
14833         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14834         * linux-thread-db.c (thread_db_detach): Likewise.
14835         * nto-procfs.c (procfs_detach): Likewise.
14836         * procfs.c (procfs_detach): Likewise.
14837         (do_detach): Remove signo parameter.
14838         * record.c (record_detach): Remove args parameter.
14839         * record.h (record_detach): Likewise.
14840         * remote-sim.c (gdbsim_detach): Likewise.
14841         * remote.c (remote_detach_1): Likewise.
14842         (remote_detach): Likewise.
14843         (extended_remote_detach): Likewise.
14844         * sol-thread.c (sol_thread_detach): Likewise.
14845         * target-delegates.c: Re-generate.
14846         * top.c (struct qt_args) <args>: Remove field.
14847         (kill_or_detach): Don't pass args.
14848         (quit_force): Don't set args.
14849         * windows-nat.c (windows_detach): Remove args parameter.
14850
14851 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14852
14853         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14854         (arm_linux_init_abi): Install it.
14855
14856 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14857
14858         * osabi.c (gdb_osabi_names): Extend the regexp for
14859         arm-linux-gnueabihf.
14860
14861 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14862
14863         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14864         m_abbrevs.
14865         (abbrev_table::add_abbrev): Update.
14866         (abbrev_table::lookup_abbrev): Update.
14867
14868 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14869
14870         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14871
14872 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14873
14874         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14875         to "std::string".
14876
14877 2018-01-17  Tom Tromey  <tom@tromey.com>
14878
14879         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14880
14881 2018-01-17  Tom Tromey  <tom@tromey.com>
14882
14883         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14884         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14885         (create_array_type_with_stride): Update.
14886         * dwarf2read.c (set_die_type): Update.
14887
14888 2018-01-17  Tom Tromey  <tom@tromey.com>
14889
14890         * dwarf2read.c (delayed_method_info): Remove typedef.
14891         (dwarf2_cu::method_info): Now a std::vector.
14892         (add_to_method_list): Update.
14893         (free_delayed_list): Remove.
14894         (compute_delayed_physnames): Update.
14895         (process_full_comp_unit, process_full_type_unit): Clear the method
14896         list.  Remove cleanups.
14897         (psymtab_include_file_name): Add name_holder parameter.  Use
14898         unique_xmalloc_ptr.
14899         (dwarf_decode_lines): Update.
14900
14901 2018-01-17  Tom Tromey  <tom@tromey.com>
14902             Simon Marchi  <simon.marchi@ericsson.com>
14903
14904         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14905         (dwarf2_per_objfile::free_cached_comp_units)
14906         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14907         (init_cutu_and_read_dies_no_follow): Update.
14908         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14909         (dwarf2_cu::~dwarf2_cu): New.
14910         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14911         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14912
14913 2018-01-17  Tom Tromey  <tom@tromey.com>
14914             Simon Marchi  <simon.marchi@ericsson.com>
14915
14916         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14917         (struct die_reader_specs) <abbrev_table>: New member.
14918         (struct abbrev_table): Add constructor.
14919         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14920         <abbrev_obstack>: Now an auto_obstack.
14921         (abbrev_table_up): New typedef.
14922         (init_cu_die_reader): Add abbrev_table parameter.
14923         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14924         Add result_dwo_abbrev_table.
14925         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14926         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14927         Update.
14928         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14929         parameter.
14930         (skip_children): Update.
14931         (abbrev_table::alloc_abbrev): Rename from
14932         abbrev_table_alloc_abbrev.
14933         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14934         (abbrev_table::lookup_abbrev): Rename from
14935         abbrev_table_lookup_abbrev.
14936         (abbrev_table_read_table): Return abbrev_table_up.
14937         (abbrev_table_free, abbrev_table_free_cleanup)
14938         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14939         (load_partial_dies): Update.
14940
14941 2018-01-17  Tom Tromey  <tom@tromey.com>
14942
14943         * dwarf2read.c (dwarf2_compute_name): Update comment.
14944         (read_func_scope, read_variable): Update.
14945         (new_symbol): Remove.
14946         (new_symbol_full): Rename to new_symbol.
14947
14948 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14949
14950         PR gdb/16577
14951         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14952         a warning instead of throwing an error, set section size to 0 and return
14953         NULL.
14954         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14955
14956 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14957
14958         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14959         std::string.
14960         (linux_ptrace_attach_fail_reason_string): Likewise.
14961         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14962         Likewise.
14963         (linux_ptrace_attach_fail_reason_string): Likewise.
14964         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14965
14966 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14967
14968         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14969
14970 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14971
14972         PR gdb/21559
14973         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14974         checking for fs_base/gs_base fields in struct user_regs_struct.
14975         * configure: Regenerate.
14976
14977 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14978
14979         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14980         function.
14981         (aarch64_linux_init_abi): Install it to gdbarch hook
14982         gcc_target_options.
14983
14984 2018-01-15  Pedro Alves  <palves@redhat.com>
14985
14986         * common/signals-state-save-restore.c
14987         (save_original_signals_state): Fix typos.
14988
14989 2017-01-12  Tom Tromey  <tom@tromey.com>
14990             Sergio Durigan Junior  <sergiodj@redhat.com>
14991
14992         * Makefile.in (install-only): Install gdb-add-index.
14993
14994 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14995
14996         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14997
14998 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14999
15000         * infrun.c (keep_going_pass_signal): Clear step-over info when
15001         insert_breakpoints fails.
15002
15003 2018-01-11  Pedro Alves  <palves@redhat.com>
15004
15005         PR gdb/22583
15006         * infrun.c (resume): Rename to ...
15007         (resume_1): ... this.
15008         (resume): Reimplement as wrapper around resume_1.
15009
15010 2018-01-11  Pedro Alves  <palves@redhat.com>
15011
15012         PR remote/22597
15013         * remote.c (remote_parse_stop_reply): Default to the last-set
15014         general thread instead of to 'magic_null_ptid'.
15015
15016 2018-01-10  Pedro Alves  <palves@redhat.com>
15017
15018         * language.h (language_get_symbol_name_matcher): Rename ...
15019         (get_symbol_name_matcher): ... this.
15020         * language.c (language_get_symbol_name_matcher): Ditto.
15021         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15022         callers adjusted.
15023
15024 2018-01-10  Pedro Alves  <palves@redhat.com>
15025
15026         PR gdb/22670
15027         * dwarf2read.c
15028         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15029         Adjust to use language_get_symbol_name_matcher instead of
15030         language_defn::la_get_symbol_name_matcher.
15031         * language.c (language_get_symbol_name_matcher): If in Ada mode
15032         and the lookup name is a verbatim match, return Ada's matcher.
15033         * language.h (language_get_symbol_name_matcher): Adjust comment.
15034         (ada_lookup_name_info::verbatim_p):: New method.
15035
15036 2018-01-10  Pedro Alves  <palves@redhat.com>
15037
15038         PR gdb/22670
15039         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15040         minsym's language is language_auto or language_cplus, pass down
15041         language_ada instead.
15042         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15043
15044 2018-01-10  Pedro Alves  <palves@redhat.com>
15045
15046         PR gdb/22670
15047         * minsyms.c (linkage_name_str): New function.
15048         (iterate_over_minimal_symbols): Use it.
15049
15050 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15051
15052         * NEWS: Document that 'info proc' now works on FreeBSD.
15053
15054 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15055
15056         * configure.ac: Check for kinfo_getfile in libutil.
15057         * configure: Regenerate.
15058         * config.in: Regenerate.
15059         * fbsd-nat.c: Include "fbsd-tdep.h".
15060         (fbsd_fetch_cmdline): New.
15061         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15062         rather than calling error.
15063         (fbsd_info_proc): New.
15064         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15065         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15066         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15067
15068 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15069
15070         * fbsd-nat.c (struct free_deleter): Remove.
15071         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15072
15073 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15074
15075         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15076         NULL for an empty pathname.
15077
15078 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15079
15080         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15081         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15082         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15083         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15084         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15085         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15086         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15087         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15088         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15089         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15090         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15091         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15092         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15093         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15094         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15095
15096 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15097
15098         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15099         (gnu_xfer_auxv): New function.
15100         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15101         TARGET_OBJECT_AUXV.
15102
15103 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15104             Simon Marchi  <simon.marchi@ericsson.com>
15105
15106         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15107         common/selftest.c.
15108         (COMMON_OBS): Remove selftest.o.
15109         * configure.ac: Append selftest-arch.c and common/selftest.c to
15110         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15111         * configure: Re-generated.
15112         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15113         GDB_SELF_TEST.
15114         (maintenance_info_selftests): Likewise.
15115
15116 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15117
15118         * ada-valprint.c (val_print_packed_array_elements): Use
15119         proper number of elements when printing an array indexed
15120         by an enumeration type.
15121
15122 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15123
15124         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15125         (dw2_get_file_names_reader): Adjust.
15126         (lookup_dwo_signatured_type): Adjust.
15127         (lookup_dwp_signatured_type): Adjust.
15128         (lookup_signatured_type): Adjust.
15129         (create_type_unit_group): Adjust.
15130         (get_type_unit_group): Adjust.
15131         (process_psymtab_comp_unit_reader): Adjust.
15132         (build_type_psymtabs_reader): Adjust.
15133         (scan_partial_symbols): Adjust.
15134         (add_partial_symbol): Adjust.
15135         (add_partial_subprogram): Adjust.
15136         (peek_die_abbrev): Adjust.
15137         (fixup_go_packaging): Adjust.
15138         (process_imported_unit_die): Adjust.
15139         (dwarf2_compute_name): Adjust.
15140         (dwarf2_physname): Adjust.
15141         (read_import_statement): Adjust.
15142         (handle_DW_AT_stmt_list): Adjust.
15143         (read_file_scope): Adjust.
15144         (read_func_scope): Adjust.
15145         (read_lexical_block_scope): Adjust.
15146         (read_call_site_scope): Adjust.
15147         (read_variable): Adjust.
15148         (dwarf2_rnglists_process): Adjust.
15149         (dwarf2_ranges_process): Adjust.
15150         (dwarf2_ranges_read): Adjust.
15151         (dwarf2_get_pc_bounds): Adjust.
15152         (dwarf2_record_block_ranges): Adjust.
15153         (dwarf2_add_field): Adjust.
15154         (dwarf2_add_member_fn): Adjust.
15155         (read_structure_type): Adjust.
15156         (process_structure_scope): Adjust.
15157         (read_enumeration_type): Adjust.
15158         (read_array_type): Adjust.
15159         (mark_common_block_symbol_computed): Adjust.
15160         (read_common_block): Adjust.
15161         (read_namespace_type): Adjust.
15162         (read_namespace): Adjust.
15163         (read_module_type): Adjust.
15164         (read_tag_pointer_type): Adjust.
15165         (read_tag_ptr_to_member_type): Adjust.
15166         (read_tag_string_type): Adjust.
15167         (read_subroutine_type): Adjust.
15168         (read_typedef): Adjust.
15169         (read_base_type): Adjust.
15170         (attr_to_dynamic_prop): Adjust.
15171         (read_subrange_type): Adjust.
15172         (read_unspecified_type): Adjust.
15173         (dwarf2_read_abbrevs): Adjust.
15174         (load_partial_dies): Adjust.
15175         (read_partial_die): Adjust.
15176         (find_partial_die): Adjust.
15177         (guess_partial_die_structure_name): Adjust.
15178         (fixup_partial_die): Adjust.
15179         (read_attribute_value): Adjust.
15180         (read_addr_index): Adjust.
15181         (read_addr_index_from_leb128): Adjust.
15182         (read_str_index): Adjust.
15183         (dwarf2_string_attr): Adjust.
15184         (get_debug_line_section): Adjust.
15185         (dwarf_decode_line_header): Adjust.
15186         (lnp_state_machine::check_line_address): Adjust.
15187         (dwarf_decode_lines_1): Adjust.
15188         (dwarf_decode_lines): Adjust.
15189         (dwarf2_start_symtab): Adjust.
15190         (var_decode_location): Adjust.
15191         (new_symbol_full): Adjust.
15192         (dwarf2_const_value_data): Adjust.
15193         (dwarf2_const_value_attr): Adjust.
15194         (dwarf2_const_value): Adjust.
15195         (die_type): Adjust.
15196         (die_containing_type): Adjust.
15197         (build_error_marker_type): Adjust.
15198         (lookup_die_type): Adjust.
15199         (guess_full_die_structure_name): Adjust.
15200         (anonymous_struct_prefix): Adjust.
15201         (determine_prefix): Adjust.
15202         (dwarf2_name): Adjust.
15203         (follow_die_ref_or_sig): Adjust.
15204         (follow_die_offset): Adjust.
15205         (follow_die_ref): Adjust.
15206         (follow_die_sig_1): Adjust.
15207         (follow_die_sig): Adjust.
15208         (get_signatured_type): Adjust.
15209         (get_DW_AT_signature_type): Adjust.
15210         (decode_locdesc): Adjust.
15211         (dwarf_decode_macros): Adjust.
15212         (cu_debug_loc_section): Adjust.
15213         (fill_in_loclist_baton): Adjust.
15214         (dwarf2_symbol_mark_computed): Adjust.
15215         (init_one_comp_unit): Don't assign
15216         dwarf2_cu::dwarf2_per_objfile.
15217         (set_die_type): Adjust.
15218
15219 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15220
15221         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15222         <dwarf2_per_objfile>: New field.
15223         (dwarf2_per_objfile): Remove global.
15224         (get_dwarf2_per_objfile): New function.
15225         (set_dwarf2_per_objfile): New function.
15226         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15227         dwarf2_per_objfile.
15228         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15229         (read_abbrev_offset): Likewise.
15230         (read_indirect_string): Likewise.
15231         (read_indirect_line_string): Likewise.
15232         (read_indirect_string_at_offset): Likewise.
15233         (read_indirect_string_from_dwz): Likewise.
15234         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15235         dwarf2_per_objfile.
15236         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15237         (create_all_comp_units): Change objfile parameter to
15238         dwarf2_per_objfile.
15239         (create_all_type_units): Likewise.
15240         (process_queue): Add dwarf2_per_objfile parameter.
15241         (read_and_check_comp_unit_head): Likewise.
15242         (lookup_dwo_unit_in_dwp): Likewise.
15243         (get_dwp_file): Likewise.
15244         (process_cu_includes): Likewise.
15245         (struct free_dwo_file_cleanup_data): New struct.
15246         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15247         set_dwarf2_per_objfile.
15248         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15249         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15250         context, adjust calls.
15251         (dw2_instantiate_symtab): Likewise.
15252         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15253         (dw2_get_cu): Likewise.
15254         (create_cu_from_index_list): Change objfile parameter to
15255         dwarf2_per_objfile.
15256         (create_cus_from_index_list): Get dwarf2_per_objfile from
15257         context, adjust calls.
15258         (create_cus_from_index): Likewise.
15259         (create_signatured_type_table_from_index): Change objfile
15260         parameter to dwarf2_per_objfile.
15261         (create_signatured_type_table_from_debug_names): Change objfile
15262         parameter to dwarf2_per_objfile.
15263         (create_addrmap_from_index): Likewise.
15264         (create_addrmap_from_aranges): Likewise.
15265         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15266         (dw2_setup): Remove.
15267         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15268         context.
15269         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15270         get_dwarf2_per_objfile.
15271         (dw2_forget_cached_source_info): Likewise.
15272         (dw2_map_symtabs_matching_filename): Likewise.
15273         (struct dw2_symtab_iterator) <index>: Remove.
15274         <dwarf2_per_objfile>: New field.
15275         (dw2_symtab_iter_init): Replace index parameter with
15276         dwarf2_per_objfile.
15277         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15278         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15279         (dw2_print_stats): Likewise.
15280         (dw2_dump): Likewise.
15281         (dw2_expand_symtabs_for_function): Likewise.
15282         (dw2_expand_all_symtabs): Likewise.
15283         (dw2_expand_symtabs_with_fullname): Likewise.
15284         (dw2_expand_marked_cus): Replace index and objfile parameters
15285         with dwarf2_per_objfile.
15286         (dw_expand_symtabs_matching_file_matcher): Add
15287         dwarf2_per_objfile parameter and adjust calls.
15288         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15289         adjust calls.
15290         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15291         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15292         adjust calls.
15293         (create_cus_from_debug_names_list): Replace objfile parameter
15294         with dwarf2_per_objfile and adjust calls.
15295         (create_cus_from_debug_names): Likewise.
15296         (dwarf2_read_debug_names): Likewise.
15297         (mapped_debug_names::namei_to_name): Adjust call.
15298         (dw2_debug_names_iterator::next): Likewise.
15299         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15300         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15301         (dw2_debug_names_dump): Likewise.
15302         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15303         (dw2_debug_names_expand_symtabs_matching): Likewise.
15304         (dwarf2_initialize_objfile): Likewise.
15305         (dwarf2_build_psymtabs): Likewise.
15306         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15307         this_cu.
15308         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15309         (read_and_check_comp_unit_head): Likewise.
15310         (read_abbrev_offset): Likewise.
15311         (create_debug_type_hash_table): Likewise.
15312         (create_debug_types_hash_table): Likewise.
15313         (create_all_type_units): Replace objfile parameter with
15314         dwarf2_per_objfile.
15315         (add_type_unit): Add dwarf2_per_objfile parameter.
15316         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15317         with dwarf2_per_objfile.
15318         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15319         (lookup_dwp_signatured_type): Likewise.
15320         (lookup_signatured_type): Likewise.
15321         (read_cutu_die_from_dwo): Likewise.
15322         (init_tu_and_read_dwo_dies): Likewise.
15323         (init_cutu_and_read_dies): Likewise.
15324         (init_cutu_and_read_dies_no_follow): Likewise.
15325         (allocate_type_unit_groups_table): Add objfile parameter.
15326         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15327         (get_type_unit_group): Likewise.
15328         (process_psymtab_comp_unit): Update call.
15329         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15330         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15331         (print_tu_stats): Likewise.
15332         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15333         in void* parameter.
15334         (build_type_psymtabs): Change objfile parameter to
15335         dwarf2_per_objfile.
15336         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15337         passed in void* parameter.
15338         (process_skeletonless_type_units): Change objfile parameter to
15339         dwarf2_per_objfile.
15340         (set_partial_user): Likewise.
15341         (dwarf2_build_psymtabs_hard): Likewise.
15342         (read_comp_units_from_section): Likewise.
15343         (create_all_comp_units): Likewise.
15344         (scan_partial_symbols): Update calls.
15345         (add_partial_symbol): Likewise.
15346         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15347         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15348         (process_queue): Add dwarf2_per_objfile parameter.
15349         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15350         (compute_compunit_symtab_includes): Likewise.
15351         (process_cu_includes): Add dwarf2_per_objfile parameter.
15352         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15353         (process_full_type_unit): Likewise.
15354         (process_imported_unit_die): Update call.
15355         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15356         (read_file_scope): Likewise.
15357         (allocate_dwo_file_hash_table): Add objfile parameter.
15358         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15359         (create_cus_hash_table): Likewise.
15360         (create_dwp_hash_table): Likewise.
15361         (create_dwo_unit_in_dwp_v1): Likewise.
15362         (create_dwp_v2_section): Likewise.
15363         (create_dwo_unit_in_dwp_v2): Likewise.
15364         (lookup_dwo_unit_in_dwp): Likewise.
15365         (try_open_dwop_file): Likewise.
15366         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15367         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15368         cleanup to include a reference to dwarf2_per_objfile.
15369         (open_dwp_file): Add dwarf2_per_objfile parameter.
15370         (open_and_init_dwp_file): Likewise.
15371         (get_dwp_file): Likewise.
15372         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15373         (queue_and_load_all_dwo_tus): Update call.
15374         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15375         data.
15376         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15377         (dwarf2_ranges_process): Likewise.
15378         (dwarf2_get_pc_bounds): Likewise.
15379         (mark_common_block_symbol_computed): Likewise.
15380         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15381         (dwarf2_read_abbrevs): Update call.
15382         (read_partial_die): Use dwarf2_per_objfile from cu.
15383         (find_partial_die): Likewise.
15384         (fixup_partial_die): Likewise.
15385         (read_attribute_value): Likewise.
15386         (read_indirect_string_at_offset_from): Add objfile parameter.
15387         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15388         parameter.
15389         (read_indirect_string_from_dwz): Add objfile parameter.
15390         (read_indirect_string): Add objfile parameter.
15391         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15392         (read_addr_index): Use dwarf2_per_objfile from cu.
15393         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15394         call dw2_setup.
15395         (read_str_index): Use dwarf2_per_objfile from cu.
15396         (get_debug_line_section): Likewise.
15397         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15398         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15399         (new_symbol_full): Use dwarf2_per_objfile from cu.
15400         (build_error_marker_type): Likewise.
15401         (lookup_die_type): Likewise.
15402         (determine_prefix): Likewise.
15403         (follow_die_offset): Likewise.
15404         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15405         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15406         (dwarf2_fetch_die_type_sect_off): Likewise.
15407         (dwarf2_get_die_type): Likewise.
15408         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15409         (get_signatured_type): Likewise.
15410         (get_DW_AT_signature_type): Likewise.
15411         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15412         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15413         (cu_debug_loc_section): Likewise.
15414         (fill_in_loclist_baton): Likewise.
15415         (dwarf2_symbol_mark_computed): Likewise.
15416         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15417         dwarf2_per_objfile.
15418         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15419         parameter.
15420         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15421         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15422         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15423         (set_die_type): Use dwarf2_free_objfile from cu.
15424         (get_die_type_at_offset): Likewise.
15425         (dwarf2_per_objfile_free): Don't assign global variable.
15426         (debug_names) <constructor>: Add dwarf2_per_objfile
15427         parameter, update m_debugstrlookup construction.
15428         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15429         parameter.
15430         <m_dwarf2_per_objfile>: New field.
15431         <lookup>: Use m_dwarf2_per_objfile.
15432         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15433         (psyms_seen_size): Likewise.
15434         (write_gdbindex): Replace objfile parameter with
15435         dwarf2_per_objfile.
15436         (write_debug_names): Likewise.
15437         (write_psymtabs_to_index): Likewise.
15438         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15439         calls.
15440
15441 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15442
15443         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15444         <dwarf2_per_objfile>: New field.
15445         (struct dwarf2_per_cu_data) <objfile>: Remove.
15446         <dwarf2_per_objfile>: New field.
15447         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15448         of objfile.
15449         (create_signatured_type_table_from_index): Likewise.
15450         (create_debug_type_hash_table): Likewise.
15451         (fill_in_sig_entry_from_dwo_entry): Likewise.
15452         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15453         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15454         objfile.
15455         (create_partial_symtab): Access objfile through
15456         dwarf2_per_objfile.
15457         (process_psymtab_comp_unit_reader): Likewise.
15458         (read_comp_units_from_section): Likewise.
15459         (scan_partial_symbols): Likewise.
15460         (add_partial_symbol): Likewise.
15461         (add_partial_subprogram): Likewise.
15462         (peek_die_abbrev): Likewise.
15463         (fixup_go_packaging): Likewise.
15464         (process_full_comp_unit): Likewise.
15465         (process_full_type_unit): Likewise.
15466         (process_imported_unit_die): Likewise.
15467         (dwarf2_compute_name): Likewise.
15468         (dwarf2_physname): Likewise.
15469         (read_import_statement): Likewise.
15470         (create_cus_hash_table): Assign dwarf2_physname instead of
15471         objfile.
15472         (read_func_scope): Access objfile through dwarf2_per_objfile.
15473         (read_lexical_block_scope): Likewise.
15474         (read_call_site_scope): Likewise.
15475         (read_variable): Likewise.
15476         (dwarf2_rnglists_process): Likewise.
15477         (dwarf2_ranges_process): Likewise.
15478         (dwarf2_ranges_read): Likewise.
15479         (dwarf2_record_block_ranges): Likewise.
15480         (dwarf2_add_field): Likewise.
15481         (dwarf2_add_member_fn): Likewise.
15482         (read_structure_type): Likewise.
15483         (process_structure_scope): Likewise.
15484         (read_enumeration_type): Likewise.
15485         (read_array_type): Likewise.
15486         (read_common_block): Likewise.
15487         (read_namespace_type): Likewise.
15488         (read_namespace): Likewise.
15489         (read_module_type): Likewise.
15490         (read_tag_pointer_type): Likewise.
15491         (read_tag_ptr_to_member_type): Likewise.
15492         (read_tag_string_type): Likewise.
15493         (read_subroutine_type): Likewise.
15494         (read_typedef): Likewise.
15495         (read_base_type): Likewise.
15496         (attr_to_dynamic_prop): Likewise.
15497         (read_subrange_type): Likewise.
15498         (read_unspecified_type): Likewise.
15499         (load_partial_dies): Likewise.
15500         (read_partial_die): Likewise.
15501         (find_partial_die): Likewise.
15502         (guess_partial_die_structure_name): Likewise.
15503         (fixup_partial_die): Likewise.
15504         (read_attribute_value): Likewise.
15505         (read_addr_index_from_leb128): Likewise.
15506         (dwarf2_read_addr_index): Likewise.
15507         (dwarf2_string_attr): Likewise.
15508         (lnp_state_machine::check_line_address): Likewise.
15509         (dwarf_decode_lines_1): Likewise.
15510         (dwarf_decode_lines): Likewise.
15511         (dwarf2_start_symtab): Likewise.
15512         (var_decode_location): Likewise.
15513         (new_symbol_full): Likewise.
15514         (dwarf2_const_value_data): Likewise.
15515         (dwarf2_const_value_attr): Likewise.
15516         (dwarf2_const_value): Likewise.
15517         (die_type): Likewise.
15518         (die_containing_type): Likewise.
15519         (lookup_die_type): Likewise.
15520         (guess_full_die_structure_name): Likewise.
15521         (anonymous_struct_prefix): Likewise.
15522         (dwarf2_name): Likewise.
15523         (follow_die_ref_or_sig): Likewise.
15524         (follow_die_offset): Likewise.
15525         (follow_die_ref): Likewise.
15526         (dwarf2_fetch_die_loc_sect_off): Likewise.
15527         (dwarf2_fetch_constant_bytes): Likewise.
15528         (dwarf2_fetch_die_type_sect_off): Likewise.
15529         (dwarf2_get_die_type): Likewise.
15530         (follow_die_sig): Likewise.
15531         (decode_locdesc): Likewise.
15532         (dwarf2_per_cu_objfile): Likewise.
15533         (dwarf2_per_cu_text_offset): Likewise.
15534         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15535         objfile.
15536         (set_die_type): Access objfile through
15537         dwarf2_per_objfile.
15538
15539 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15540
15541         * valprint.c (converted_character_d): Remove typedef.
15542         (DEF_VEC_O (converted_character_d)): Remove.
15543         (count_next_character): Use std::vector.
15544         (print_converted_chars_to_obstack): Likewise.
15545         (generic_printstr): Likewise.
15546
15547 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15548
15549         * xml-support.h (struct gdb_xml_value): Add constructor.
15550         <value>: Change type to unique_xmalloc_ptr.
15551         (gdb_xml_value_s): Remove typedef.
15552         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15553         (gdb_xml_element_start_handler): Change parameter type to
15554         std::vector.
15555         (xml_find_attribute): Likewise.
15556         * xml-support.c (xml_find_attribute): Change parameter type to
15557         std::vector and adjust.
15558         (gdb_xml_values_cleanup): Remove.
15559         (gdb_xml_parser::start_element): Adjust to std::vector.
15560         (xinclude_start_include): Change paraeter type to std::vector
15561         and adjust.
15562         * btrace.c (check_xml_btrace_version): Likewise.
15563         (parse_xml_btrace_block): Likewise.
15564         (parse_xml_btrace_pt_config_cpu): Likewise.
15565         (parse_xml_btrace_pt): Likewise.
15566         (parse_xml_btrace_conf_bts): Likewise.
15567         (parse_xml_btrace_conf_pt): Likewise.
15568         * memory-map.c (memory_map_start_memory): Likewise.
15569         (memory_map_start_property): Likewise.
15570         * osdata.c (osdata_start_osdata): Likewise.
15571         (osdata_start_item): Likewise.
15572         (osdata_start_column): Likewise.
15573         * remote.c (start_thread): Likewise.
15574         * solib-aix.c (library_list_start_library): Likewise.
15575         (library_list_start_list): Likewise.
15576         * solib-svr4.c (library_list_start_library): Likewise.
15577         (svr4_library_list_start_list): Likewise.
15578         * solib-target.c (library_list_start_segment): Likewise.
15579         (library_list_start_section): Likewise.
15580         (library_list_start_library): Likewise.
15581         (library_list_start_list): Likewise.
15582         * tracepoint.c (traceframe_info_start_memory): Likewise.
15583         (traceframe_info_start_tvar): Likewise.
15584         * xml-syscall.c (syscall_start_syscall): Likewise.
15585         * xml-tdesc.c (tdesc_start_target): Likewise.
15586         (tdesc_start_feature): Likewise.
15587         (tdesc_start_reg): Likewise.
15588         (tdesc_start_union): Likewise.
15589         (tdesc_start_struct): Likewise.
15590         (tdesc_start_flags): Likewise.
15591         (tdesc_start_enum): Likewise.
15592         (tdesc_start_field): Likewise.
15593         (tdesc_start_enum_value): Likewise.
15594         (tdesc_start_vector): Likewise.
15595
15596 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15597
15598         * extension.h (struct xmethod_worker) <clone>: Remove.
15599         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15600         Remove.
15601         (python_xmethod_worker::clone): Remove.
15602         * valops.c (find_overload_match): Use std::move instead of
15603         clone.
15604
15605 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15606
15607         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15608         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15609         <free_xmethod_worker_data>: Remove.
15610         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15611         <get_xmethod_arg_types>: Remove.
15612         <get_xmethod_result_type>: Remove.
15613         <invoke_xmethod>: Remove.
15614         * extension.c (new_xmethod_worker): Remove.
15615         (clone_xmethod_worker): Remove.
15616         (get_matching_xmethod_workers): Return void, pass std::vector by
15617         pointer.
15618         (get_xmethod_arg_types): Rename to...
15619         (xmethod_worker::get_arg_types): ... this, and adjust.
15620         (get_xmethod_result_type): Rename to...
15621         (xmethod_worker::get_result_type): ... this, and adjust.
15622         (invoke_xmethod): Remove.
15623         (free_xmethod_worker): Remove.
15624         (free_xmethod_worker_vec): Remove.
15625         * extension.h (enum ext_lang_rc): Move here from
15626         extension-priv.h.
15627         (struct xmethod_worker): Add constructor and destructor.
15628         <data>: Remove.
15629         <value>: Remove.
15630         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15631         virtual pure methods.
15632         <get_arg_types, get_result_type>: New methods.
15633         (xmethod_worker_ptr): Remove typedef.
15634         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15635         (xmethod_worker_vec): Remove typedef.
15636         (xmethod_worker_up): New typedef.
15637         (invoke_xmethod): Remove.
15638         (clone_xmethod_worker): Remove.
15639         (free_xmethod_worker): Remove.
15640         (free_xmethod_worker_vec): Remove.
15641         (get_xmethod_arg_types): Remove.
15642         (get_xmethod_result_type): Remove.
15643         * valops.c (find_method_list): Use std::vector, don't use
15644         intermediate vector.
15645         (value_find_oload_method_list): Use std::vector.
15646         (find_overload_match): Use std::vector.
15647         (find_oload_champ): Use std::vector.
15648         * value.c (value_free): Use operator delete.
15649         (value_of_xmethod): Rename to...
15650         (value_from_xmethod): ... this.  Don't assign
15651         xmethod_worker::value, take rvalue-reference.
15652         (result_type_of_xmethod): Adjust.
15653         (call_xmethod): Adjust.
15654         * value.h: Include extension.h.
15655         (struct xmethod_worker): Don't forward-declare.
15656         (value_of_xmethod): Rename to...
15657         (value_from_xmethod): ... this, take rvalue-reference.
15658         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15659         (struct python_xmethod_worker): ... this, add constructor and
15660         destructor.
15661         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15662         (gdbpy_free_xmethod_worker_data): Rename to...
15663         (python_xmethod_worker::~python_xmethod_worker): ... this and
15664         adjust.
15665         (gdbpy_clone_xmethod_worker_data): Rename to...
15666         (python_xmethod_worker::clone): ... this and adjust.
15667         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15668         temporary vector.
15669         (gdbpy_get_xmethod_arg_types): Rename to...
15670         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15671         (gdbpy_get_xmethod_result_type): Rename to...
15672         (python_xmethod_worker::do_get_result_type): ... this and
15673         adjust.
15674         (gdbpy_invoke_xmethod): Rename to...
15675         (python_xmethod_worker::invoke): ... this and adjust.
15676         (new_python_xmethod_worker): Rename to...
15677         (python_xmethod_worker::python_xmethod_worker): ... this and
15678         adjust.
15679         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15680         Remove.
15681         (gdbpy_free_xmethod_worker_data): Remove.
15682         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15683         (gdbpy_get_xmethod_arg_types): Remove.
15684         (gdbpy_get_xmethod_result_type): Remove.
15685         (gdbpy_invoke_xmethod): Remove.
15686         * python/python.c (python_extension_ops): Remove obsolete
15687         callbacks.
15688
15689 2018-01-05  Pedro Alves  <palves@redhat.com>
15690
15691         PR gdb/18653
15692         * common/signals-state-save-restore.c
15693         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15694         find a custom handler preinstalled, instead of internal erroring.
15695         But only warn if !quiet.
15696         * common/signals-state-save-restore.h
15697         (save_original_signals_state): New parameter 'quiet'.
15698         * main.c (captured_main_1): Move save_original_signals_state call
15699         after option handling, and pass QUIET.
15700
15701 2018-01-05  Pedro Alves  <palves@redhat.com>
15702
15703         * spu-tdep.c (spu_catch_start): Pass
15704         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15705
15706 2018-01-05  Pedro Alves  <palves@redhat.com>
15707
15708         PR gdb/22670
15709         * ada-lang.c (literal_symbol_name_matcher): New function.
15710         (ada_get_symbol_name_matcher): Use it for
15711         symbol_name_match_type::SEARCH_NAME.
15712         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15713         it down instead of assuming symbol_name_match_type::FULL.
15714         * block.h (block_lookup_symbol): New parameter 'match_type'.
15715         * c-valprint.c (print_unpacked_pointer): Use
15716         lookup_symbol_search_name instead of lookup_symbol.
15717         * compile/compile-object-load.c (get_out_value_type): Pass down
15718         symbol_name_match_type::SEARCH_NAME.
15719         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15720         symbol_name_match_type::FULL.
15721         * cp-support.c (cp_get_symbol_name_matcher): Handle
15722         symbol_name_match_type::SEARCH_NAME.
15723         * infrun.c (insert_exception_resume_breakpoint): Use
15724         lookup_symbol_search_name.
15725         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15726         * psymtab.c (maintenance_check_psymtabs): Use
15727         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15728         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15729         SYMBOL_SEARCH_NAME.
15730         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15731         if symbol_name_match_type::SEARCH_NAME.
15732         (lookup_symbol_in_language): Pass down
15733         symbol_name_match_type::FULL.
15734         (lookup_symbol_search_name): New.
15735         (lookup_language_this): Pass down
15736         symbol_name_match_type::SEARCH_NAME.
15737         (lookup_symbol_aux, lookup_local_symbol): New parameter
15738         'match_type'.  Pass it down.
15739         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15740         (lookup_symbol_search_name): New declaration.
15741         (lookup_symbol_in_block): New 'match_type' parameter.
15742
15743 2018-01-05  Pedro Alves  <palves@redhat.com>
15744
15745         PR gdb/22670
15746         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15747         ada_lookup_symbol.
15748         (ada_lookup_symbol): Reimplement in terms of
15749         ada_lookup_symbol_list, bits factored out from
15750         ada_lookup_encoded_symbol.
15751
15752 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15753
15754         * ada-exp.y (write_object_renaming): When subscripting an array
15755         using a symbol as the index, pass the block in call to
15756         ada_lookup_encoded_symbol when looking that symbol up.
15757
15758 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15759
15760         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15761         TYPE_INDEX_TYPE.
15762
15763 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15764
15765         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15766         the case where VALUE_LVAL (val0) is not lval_memory.
15767
15768 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15769
15770         * ada-valprint.c (print_optional_low_bound): Handle
15771         character-indexed array printing like boolean-indexed array
15772         printing.
15773
15774 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15775
15776         * NEWS: Create a new section for the next release branch.
15777         Rename the section of the current branch, now that it has
15778         been cut.
15779
15780 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15781
15782         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15783         * version.in: Bump version to 8.1.50.DATE-git.
15784
15785 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15786
15787         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15788         Add field.
15789         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15790         Add field.
15791         (default_exception_support_info) <catch_handlers_sym>: Add field.
15792         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15793         (ada_exception_name_addr_1): Add "catch handlers" handling.
15794         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15795         Update all callers.
15796         (create_excep_cond_exprs) <ex>: Add parameter.
15797         (re_set_exception): Update create_excep_cond_exprs call.
15798         (print_it_exception, print_one_exception, print_mention_exception)
15799         (print_recreate_exception): Add "catch handler" handling.
15800         (allocate_location_catch_handlers, re_set_catch_handlers)
15801         (check_status_catch_handlers, print_it_catch_handlers)
15802         (print_one_catch_handlers, print_mention_catch_handlers)
15803         (print_recreate_catch_handlers): New function.
15804         (catch_handlers_breakpoint_ops): New variable.
15805         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15806         Add parameter.  Add "catch handler" handling.
15807         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15808         Add "catch handler" handling.
15809         (ada_exception_catchpoint_cond_string): Add "catch handler"
15810         handling.
15811         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15812         call.
15813         (catch_ada_handlers_command): New function.
15814         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15815         operations structure.
15816         (_initialize_ada_language): Add "catch handlers" command entry.
15817         * NEWS: Document "catch handlers" feature.
15818
15819 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15820
15821         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15822         account when creating the array type of the slice.
15823         (ada_value_slice): Likewise.
15824
15825 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15826
15827         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15828         New enum value.
15829         (create_array_type_with_stride): Add byte_stride_prop parameter.
15830         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15831         New parameter.  Update all callers in this file.
15832         (array_type_has_dynamic_stride): New function.
15833         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15834         of arrays with dynamic byte strides.
15835         * dwarf2read.c (read_array_type): Add support for dynamic
15836         DW_AT_byte_stride attributes.
15837
15838 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15839
15840         * dwarf2read.c (read_unspecified_type): Treat
15841         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15842
15843 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15844
15845         Update copyright year range in all GDB files.
15846
15847 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15848
15849         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15850         and gdb/testsuite/gdb.base/step-line.c.
15851
15852 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15853
15854         * copyright.py (main): Dump the contents of
15855         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15856         even if BY_HAND is empty.
15857
15858 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15859
15860         * top.c (print_gdb_version): Update Copyright year in version
15861         message.
15862
15863 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15864
15865         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15866
15867 For older changes see ChangeLog-2017.
15868 \f
15869 Local Variables:
15870 mode: change-log
15871 left-margin: 8
15872 fill-column: 74
15873 version-control: never
15874 coding: utf-8
15875 End: